Update SCM ignore rules.
[nit.git] / c_src / parser._sep.c
1 /* This C file is generated by NIT to compile module parser. */
2 #include "parser._sep.h"
3 val_t parser___State___state(val_t self) {
4 struct trace_t trace = {NULL, NULL, 10, LOCATE_parser___State___state};
5 trace.prev = tracehead; tracehead = &trace;
6 trace.file = LOCATE_parser;
7 tracehead = trace.prev;
8 return ATTR_parser___State____state( self) /*State::_state*/;
9 }
10 void parser___State___state__eq(val_t self, val_t param0) {
11 struct trace_t trace = {NULL, NULL, 10, LOCATE_parser___State___state__eq};
12 trace.prev = tracehead; tracehead = &trace;
13 trace.file = LOCATE_parser;
14 ATTR_parser___State____state( self) /*State::_state*/ = param0;
15 tracehead = trace.prev;
16 return;
17 }
18 val_t parser___State___nodes(val_t self) {
19 struct trace_t trace = {NULL, NULL, 13, LOCATE_parser___State___nodes};
20 trace.prev = tracehead; tracehead = &trace;
21 trace.file = LOCATE_parser;
22 tracehead = trace.prev;
23 return ATTR_parser___State____nodes( self) /*State::_nodes*/;
24 }
25 void parser___State___nodes__eq(val_t self, val_t param0) {
26 struct trace_t trace = {NULL, NULL, 13, LOCATE_parser___State___nodes__eq};
27 trace.prev = tracehead; tracehead = &trace;
28 trace.file = LOCATE_parser;
29 ATTR_parser___State____nodes( self) /*State::_nodes*/ = param0;
30 tracehead = trace.prev;
31 return;
32 }
33 void parser___State___init(val_t self, val_t param0, val_t param1, int* init_table) {
34 struct trace_t trace = {NULL, NULL, 16, LOCATE_parser___State___init};
35 val_t variable0;
36 val_t variable1;
37 trace.prev = tracehead; tracehead = &trace;
38 trace.file = LOCATE_parser;
39 variable0 = param0;
40 variable1 = param1;
41 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_State].i]) return;
42 ATTR_parser___State____state( self) /*State::_state*/ = variable0 /*state*/;
43 ATTR_parser___State____nodes( self) /*State::_nodes*/ = variable1 /*nodes*/;
44 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_State].i] = 1;
45 tracehead = trace.prev;
46 return;
47 }
48 void parser___Parser___init(val_t self, val_t param0, int* init_table) {
49 struct trace_t trace = {NULL, NULL, 34, LOCATE_parser___Parser___init};
50 val_t variable0;
51 val_t variable1;
52 trace.prev = tracehead; tracehead = &trace;
53 trace.file = LOCATE_parser;
54 variable0 = param0;
55 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Parser].i]) return;
56 ATTR_parser___Parser____lexer( self) /*Parser::_lexer*/ = variable0 /*lexer*/;
57 variable1 = NEW_Array_array___Array___init(); /*new Array[State]*/
58 ATTR_parser___Parser____stack( self) /*Parser::_stack*/ = variable1;
59 variable1 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
60 ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/ = variable1;
61 ((parser_tables___ParserTable___build_goto_table_t)CALL( self,COLOR_parser_tables___ParserTable___build_goto_table))( self) /*ParserTable::build_goto_table*/;
62 ((parser_tables___ParserTable___build_action_table_t)CALL( self,COLOR_parser_tables___ParserTable___build_action_table))( self) /*ParserTable::build_action_table*/;
63 ((parser___Parser___build_reduce_table_t)CALL( self,COLOR_parser___Parser___build_reduce_table))( self) /*Parser::build_reduce_table*/;
64 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_Parser].i] = 1;
65 tracehead = trace.prev;
66 return;
67 }
68 val_t parser___Parser___go_to(val_t self, val_t param0) {
69 struct trace_t trace = {NULL, NULL, 45, LOCATE_parser___Parser___go_to};
70 val_t variable0;
71 val_t variable1;
72 val_t variable2;
73 val_t variable3;
74 val_t variable4;
75 val_t variable5;
76 val_t variable6;
77 val_t variable7;
78 val_t variable8;
79 val_t variable9;
80 val_t variable10;
81 trace.prev = tracehead; tracehead = &trace;
82 trace.file = LOCATE_parser;
83 variable0 = param0;
84 variable2 = ((parser___Parser___state_t)CALL( self,COLOR_parser___Parser___state))( self) /*Parser::state*/;
85 variable1 = variable2;
86 variable3 = ATTR_parser_tables___ParserTable____goto_table( self) /*ParserTable::_goto_table*/;
87 variable4 = variable0 /*index*/;
88 variable5 = TAG_Bool(UNTAG_Int( variable4 /*index*/)>=UNTAG_Int( TAG_Int(0)));
89 variable6 = variable5;
90 if (UNTAG_Bool(variable6)) { /* and */
91 variable6 = variable3;
92 variable6 = ATTR_array___AbstractArray____length(variable6) /*AbstractArray::_length*/;
93 variable6 = TAG_Bool(UNTAG_Int( variable4 /*index*/)<UNTAG_Int(variable6));
94 }
95 variable5 = variable6;
96 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
97 variable5 = variable3;
98 variable5 = ATTR_array___Array____items(variable5) /*Array::_items*/;
99 variable5 = UNBOX_NativeArray(variable5)[UNTAG_Int( variable4 /*index*/)];
100 goto return_label3;
101 return_label3: while(false);
102 variable3 = variable5;
103 variable2 = variable3;
104 variable3 = TAG_Int(1);
105 variable5 = ((array___AbstractArray___length_t)CALL( variable2 /*table*/,COLOR_abstract_collection___Collection___length))( variable2 /*table*/) /*AbstractArray::length*/;
106 variable5 = TAG_Int(UNTAG_Int(variable5)/UNTAG_Int( TAG_Int(2)));
107 variable5 = TAG_Int(UNTAG_Int(variable5)-UNTAG_Int( TAG_Int(1)));
108 variable4 = variable5;
109 while (true) { /*while*/
110 variable5 = TAG_Bool(UNTAG_Int( variable3 /*low*/)<=UNTAG_Int( variable4 /*high*/));
111 if (!UNTAG_Bool(variable5)) break; /* while*/
112 variable6 = TAG_Int(UNTAG_Int( variable3 /*low*/)+UNTAG_Int( variable4 /*high*/));
113 variable6 = TAG_Int(UNTAG_Int(variable6)/UNTAG_Int( TAG_Int(2)));
114 variable5 = variable6;
115 variable7 = TAG_Int(UNTAG_Int( variable5 /*middle*/)*UNTAG_Int( TAG_Int(2)));
116 variable6 = variable7;
117 variable7 = variable6 /*subindex*/;
118 variable8 = TAG_Bool(UNTAG_Int( variable7 /*index*/)>=UNTAG_Int( TAG_Int(0)));
119 variable9 = variable8;
120 if (UNTAG_Bool(variable9)) { /* and */
121 variable9 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*AbstractArray::_length*/;
122 variable9 = TAG_Bool(UNTAG_Int( variable7 /*index*/)<UNTAG_Int(variable9));
123 }
124 variable8 = variable9;
125 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
126 variable8 = ATTR_array___Array____items( variable2 /*table*/) /*Array::_items*/;
127 variable8 = UNBOX_NativeArray(variable8)[UNTAG_Int( variable7 /*index*/)];
128 goto return_label5;
129 return_label5: while(false);
130 variable7 = variable8;
131 variable7 = TAG_Bool(UNTAG_Int( variable1 /*state*/)<UNTAG_Int(variable7));
132 if (UNTAG_Bool(variable7)) { /*if*/
133 variable7 = TAG_Int(UNTAG_Int( variable5 /*middle*/)-UNTAG_Int( TAG_Int(1)));
134 variable4 = variable7 /*high=*/;
135 } else { /*if*/
136 variable7 = variable6 /*subindex*/;
137 variable8 = TAG_Bool(UNTAG_Int( variable7 /*index*/)>=UNTAG_Int( TAG_Int(0)));
138 variable9 = variable8;
139 if (UNTAG_Bool(variable9)) { /* and */
140 variable9 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*AbstractArray::_length*/;
141 variable9 = TAG_Bool(UNTAG_Int( variable7 /*index*/)<UNTAG_Int(variable9));
142 }
143 variable8 = variable9;
144 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
145 variable8 = ATTR_array___Array____items( variable2 /*table*/) /*Array::_items*/;
146 variable8 = UNBOX_NativeArray(variable8)[UNTAG_Int( variable7 /*index*/)];
147 goto return_label6;
148 return_label6: while(false);
149 variable7 = variable8;
150 variable7 = TAG_Bool(UNTAG_Int( variable1 /*state*/)>UNTAG_Int(variable7));
151 if (UNTAG_Bool(variable7)) { /*if*/
152 variable7 = TAG_Int(UNTAG_Int( variable5 /*middle*/)+UNTAG_Int( TAG_Int(1)));
153 variable3 = variable7 /*low=*/;
154 } else { /*if*/
155 variable7 = TAG_Int(UNTAG_Int( variable6 /*subindex*/)+UNTAG_Int( TAG_Int(1)));
156 variable8 = variable7;
157 variable9 = TAG_Bool(UNTAG_Int( variable8 /*index*/)>=UNTAG_Int( TAG_Int(0)));
158 variable10 = variable9;
159 if (UNTAG_Bool(variable10)) { /* and */
160 variable10 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*AbstractArray::_length*/;
161 variable10 = TAG_Bool(UNTAG_Int( variable8 /*index*/)<UNTAG_Int(variable10));
162 }
163 variable9 = variable10;
164 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
165 variable9 = ATTR_array___Array____items( variable2 /*table*/) /*Array::_items*/;
166 variable9 = UNBOX_NativeArray(variable9)[UNTAG_Int( variable8 /*index*/)];
167 goto return_label7;
168 return_label7: while(false);
169 variable7 = variable9;
170 variable1 = variable7;
171 goto return_label2;
172 }
173 }
174 continue_4: while(0);
175 }
176 break_4: while(0);
177 variable5 = TAG_Int(1);
178 variable6 = TAG_Bool(UNTAG_Int( variable5 /*index*/)>=UNTAG_Int( TAG_Int(0)));
179 variable7 = variable6;
180 if (UNTAG_Bool(variable7)) { /* and */
181 variable7 = ATTR_array___AbstractArray____length( variable2 /*table*/) /*AbstractArray::_length*/;
182 variable7 = TAG_Bool(UNTAG_Int( variable5 /*index*/)<UNTAG_Int(variable7));
183 }
184 variable6 = variable7;
185 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
186 variable6 = ATTR_array___Array____items( variable2 /*table*/) /*Array::_items*/;
187 variable6 = UNBOX_NativeArray(variable6)[UNTAG_Int( variable5 /*index*/)];
188 goto return_label8;
189 return_label8: while(false);
190 variable5 = variable6;
191 variable1 = variable5;
192 goto return_label2;
193 return_label2: while(false);
194 tracehead = trace.prev;
195 return variable1;
196 }
197 void parser___Parser___push(val_t self, val_t param0, val_t param1) {
198 struct trace_t trace = {NULL, NULL, 69, LOCATE_parser___Parser___push};
199 val_t variable0;
200 val_t variable1;
201 val_t variable2;
202 val_t variable3;
203 val_t variable4;
204 val_t variable5;
205 val_t variable6;
206 val_t variable7;
207 trace.prev = tracehead; tracehead = &trace;
208 trace.file = LOCATE_parser;
209 variable0 = param0;
210 variable1 = param1;
211 variable3 = ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/;
212 variable3 = TAG_Int(UNTAG_Int(variable3)+UNTAG_Int( TAG_Int(1)));
213 variable2 = variable3;
214 ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/ = variable2 /*pos*/;
215 variable3 = ATTR_parser___Parser____stack( self) /*Parser::_stack*/;
216 variable3 = ((array___AbstractArray___length_t)CALL(variable3,COLOR_abstract_collection___Collection___length))(variable3) /*AbstractArray::length*/;
217 variable3 = TAG_Bool(UNTAG_Int( variable2 /*pos*/)<UNTAG_Int(variable3));
218 if (UNTAG_Bool(variable3)) { /*if*/
219 variable4 = ATTR_parser___Parser____stack( self) /*Parser::_stack*/;
220 variable5 = variable2 /*pos*/;
221 variable6 = TAG_Bool(UNTAG_Int( variable5 /*index*/)>=UNTAG_Int( TAG_Int(0)));
222 variable7 = variable6;
223 if (UNTAG_Bool(variable7)) { /* and */
224 variable7 = variable4;
225 variable7 = ATTR_array___AbstractArray____length(variable7) /*AbstractArray::_length*/;
226 variable7 = TAG_Bool(UNTAG_Int( variable5 /*index*/)<UNTAG_Int(variable7));
227 }
228 variable6 = variable7;
229 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
230 variable6 = variable4;
231 variable6 = ATTR_array___Array____items(variable6) /*Array::_items*/;
232 variable6 = UNBOX_NativeArray(variable6)[UNTAG_Int( variable5 /*index*/)];
233 goto return_label10;
234 return_label10: while(false);
235 variable4 = variable6;
236 variable3 = variable4;
237 ((parser___State___state__eq_t)CALL( variable3 /*state*/,COLOR_parser___State___state__eq))( variable3 /*state*/, variable0 /*numstate*/) /*State::state=*/;
238 ((parser___State___nodes__eq_t)CALL( variable3 /*state*/,COLOR_parser___State___nodes__eq))( variable3 /*state*/, variable1 /*list_node*/) /*State::nodes=*/;
239 } else { /*if*/
240 variable3 = ATTR_parser___Parser____stack( self) /*Parser::_stack*/;
241 variable4 = NEW_State_parser___State___init( variable0 /*numstate*/, variable1 /*list_node*/); /*new State*/
242 ((array___AbstractArray___push_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___push))(variable3, variable4) /*AbstractArray::push*/;
243 }
244 tracehead = trace.prev;
245 return;
246 }
247 val_t parser___Parser___state(val_t self) {
248 struct trace_t trace = {NULL, NULL, 83, LOCATE_parser___Parser___state};
249 val_t variable0;
250 val_t variable1;
251 val_t variable2;
252 val_t variable3;
253 val_t variable4;
254 trace.prev = tracehead; tracehead = &trace;
255 trace.file = LOCATE_parser;
256 variable0 = ATTR_parser___Parser____stack( self) /*Parser::_stack*/;
257 variable1 = ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/;
258 variable2 = variable1;
259 variable3 = TAG_Bool(UNTAG_Int( variable2 /*index*/)>=UNTAG_Int( TAG_Int(0)));
260 variable4 = variable3;
261 if (UNTAG_Bool(variable4)) { /* and */
262 variable4 = variable0;
263 variable4 = ATTR_array___AbstractArray____length(variable4) /*AbstractArray::_length*/;
264 variable4 = TAG_Bool(UNTAG_Int( variable2 /*index*/)<UNTAG_Int(variable4));
265 }
266 variable3 = variable4;
267 if (!UNTAG_Bool(variable3)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
268 variable3 = variable0;
269 variable3 = ATTR_array___Array____items(variable3) /*Array::_items*/;
270 variable3 = UNBOX_NativeArray(variable3)[UNTAG_Int( variable2 /*index*/)];
271 goto return_label12;
272 return_label12: while(false);
273 variable0 = variable3;
274 variable0 = ((parser___State___state_t)CALL(variable0,COLOR_parser___State___state))(variable0) /*State::state*/;
275 goto return_label11;
276 return_label11: while(false);
277 tracehead = trace.prev;
278 return variable0;
279 }
280 val_t parser___Parser___pop(val_t self) {
281 struct trace_t trace = {NULL, NULL, 89, LOCATE_parser___Parser___pop};
282 val_t variable0;
283 val_t variable1;
284 val_t variable2;
285 val_t variable3;
286 val_t variable4;
287 val_t variable5;
288 trace.prev = tracehead; tracehead = &trace;
289 trace.file = LOCATE_parser;
290 variable1 = ATTR_parser___Parser____stack( self) /*Parser::_stack*/;
291 variable2 = ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/;
292 variable3 = variable2;
293 variable4 = TAG_Bool(UNTAG_Int( variable3 /*index*/)>=UNTAG_Int( TAG_Int(0)));
294 variable5 = variable4;
295 if (UNTAG_Bool(variable5)) { /* and */
296 variable5 = variable1;
297 variable5 = ATTR_array___AbstractArray____length(variable5) /*AbstractArray::_length*/;
298 variable5 = TAG_Bool(UNTAG_Int( variable3 /*index*/)<UNTAG_Int(variable5));
299 }
300 variable4 = variable5;
301 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
302 variable4 = variable1;
303 variable4 = ATTR_array___Array____items(variable4) /*Array::_items*/;
304 variable4 = UNBOX_NativeArray(variable4)[UNTAG_Int( variable3 /*index*/)];
305 goto return_label14;
306 return_label14: while(false);
307 variable1 = variable4;
308 variable1 = ((parser___State___nodes_t)CALL(variable1,COLOR_parser___State___nodes))(variable1) /*State::nodes*/;
309 variable0 = variable1;
310 variable1 = ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/;
311 variable1 = TAG_Int(UNTAG_Int(variable1)-UNTAG_Int( TAG_Int(1)));
312 ATTR_parser___Parser____stack_pos( self) /*Parser::_stack_pos*/ = variable1;
313 variable0 = variable0 /*res*/;
314 goto return_label13;
315 return_label13: while(false);
316 tracehead = trace.prev;
317 return variable0;
318 }
319 val_t parser___Parser___parse(val_t self) {
320 struct trace_t trace = {NULL, NULL, 97, LOCATE_parser___Parser___parse};
321 val_t variable0;
322 val_t variable1;
323 val_t variable2;
324 val_t variable3;
325 val_t variable4;
326 val_t variable5;
327 val_t variable6;
328 val_t variable7;
329 val_t variable8;
330 val_t variable9;
331 val_t variable10;
332 val_t variable11;
333 val_t variable12;
334 val_t variable13;
335 val_t variable14;
336 val_t variable15;
337 val_t variable16;
338 val_t variable17;
339 trace.prev = tracehead; tracehead = &trace;
340 trace.file = LOCATE_parser;
341 ((parser___Parser___push_t)CALL( self,COLOR_parser___Parser___push))( self, TAG_Int(0), NIT_NULL /*null*/) /*Parser::push*/;
342 variable0 = NIT_NULL /*null*/;
343 variable2 = ATTR_parser___Parser____lexer( self) /*Parser::_lexer*/;
344 variable1 = variable2;
345 while (true) { /*while*/
346 if (!UNTAG_Bool( TAG_Bool(true))) break; /* while*/
347 variable3 = ((lexer___Lexer___peek_t)CALL( variable1 /*lexer*/,COLOR_lexer___Lexer___peek))( variable1 /*lexer*/) /*Lexer::peek*/;
348 variable2 = variable3;
349 variable4 = ((lexer___Token___pos_t)CALL( variable2 /*token*/,COLOR_lexer___Token___pos))( variable2 /*token*/) /*Token::pos*/;
350 variable3 = variable4;
351 variable5 = ((lexer___Token___line_t)CALL( variable2 /*token*/,COLOR_lexer___Token___line))( variable2 /*token*/) /*Token::line*/;
352 variable4 = variable5;
353 variable5 = TAG_Bool(( variable2 /*token*/==NIT_NULL) || VAL_ISA( variable2 /*token*/, COLOR_PError, ID_PError)) /*cast PError*/;
354 if (UNTAG_Bool(variable5)) { /*if*/
355 variable5 = TAG_Bool(( variable2 /*token*/==NIT_NULL) || VAL_ISA( variable2 /*token*/, COLOR_PError, ID_PError)) /*cast PError*/;
356 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___Parser___parse, LOCATE_parser, 110); nit_exit(1);}
357 variable5 = NEW_Start_parser_prod___Start___init( NIT_NULL /*null*/, variable2 /*token*/); /*new Start*/
358 variable0 = variable5;
359 goto return_label15;
360 }
361 variable6 = ((lexer___Token___parser_index_t)CALL( variable2 /*token*/,COLOR_lexer___Token___parser_index))( variable2 /*token*/) /*Token::parser_index*/;
362 variable5 = variable6;
363 variable7 = ATTR_parser_tables___ParserTable____action_table( self) /*ParserTable::_action_table*/;
364 variable8 = ((parser___Parser___state_t)CALL( self,COLOR_parser___Parser___state))( self) /*Parser::state*/;
365 variable9 = variable8;
366 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
367 variable11 = variable10;
368 if (UNTAG_Bool(variable11)) { /* and */
369 variable11 = variable7;
370 variable11 = ATTR_array___AbstractArray____length(variable11) /*AbstractArray::_length*/;
371 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
372 }
373 variable10 = variable11;
374 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
375 variable10 = variable7;
376 variable10 = ATTR_array___Array____items(variable10) /*Array::_items*/;
377 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
378 goto return_label17;
379 return_label17: while(false);
380 variable7 = variable10;
381 variable6 = variable7;
382 variable8 = TAG_Int(1);
383 variable9 = TAG_Bool(UNTAG_Int( variable8 /*index*/)>=UNTAG_Int( TAG_Int(0)));
384 variable10 = variable9;
385 if (UNTAG_Bool(variable10)) { /* and */
386 variable10 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*AbstractArray::_length*/;
387 variable10 = TAG_Bool(UNTAG_Int( variable8 /*index*/)<UNTAG_Int(variable10));
388 }
389 variable9 = variable10;
390 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
391 variable9 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/;
392 variable9 = UNBOX_NativeArray(variable9)[UNTAG_Int( variable8 /*index*/)];
393 goto return_label18;
394 return_label18: while(false);
395 variable8 = variable9;
396 variable7 = variable8;
397 variable9 = TAG_Int(2);
398 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
399 variable11 = variable10;
400 if (UNTAG_Bool(variable11)) { /* and */
401 variable11 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*AbstractArray::_length*/;
402 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
403 }
404 variable10 = variable11;
405 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
406 variable10 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/;
407 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
408 goto return_label19;
409 return_label19: while(false);
410 variable9 = variable10;
411 variable8 = variable9;
412 variable9 = TAG_Int(1);
413 variable11 = ((array___AbstractArray___length_t)CALL( variable6 /*table*/,COLOR_abstract_collection___Collection___length))( variable6 /*table*/) /*AbstractArray::length*/;
414 variable11 = TAG_Int(UNTAG_Int(variable11)/UNTAG_Int( TAG_Int(3)));
415 variable11 = TAG_Int(UNTAG_Int(variable11)-UNTAG_Int( TAG_Int(1)));
416 variable10 = variable11;
417 while (true) { /*while*/
418 variable11 = TAG_Bool(UNTAG_Int( variable9 /*low*/)<=UNTAG_Int( variable10 /*high*/));
419 if (!UNTAG_Bool(variable11)) break; /* while*/
420 variable12 = TAG_Int(UNTAG_Int( variable9 /*low*/)+UNTAG_Int( variable10 /*high*/));
421 variable12 = TAG_Int(UNTAG_Int(variable12)/UNTAG_Int( TAG_Int(2)));
422 variable11 = variable12;
423 variable13 = TAG_Int(UNTAG_Int( variable11 /*middle*/)*UNTAG_Int( TAG_Int(3)));
424 variable12 = variable13;
425 variable13 = variable12 /*subindex*/;
426 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
427 variable15 = variable14;
428 if (UNTAG_Bool(variable15)) { /* and */
429 variable15 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*AbstractArray::_length*/;
430 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
431 }
432 variable14 = variable15;
433 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
434 variable14 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/;
435 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
436 goto return_label21;
437 return_label21: while(false);
438 variable13 = variable14;
439 variable13 = TAG_Bool(UNTAG_Int( variable5 /*index*/)<UNTAG_Int(variable13));
440 if (UNTAG_Bool(variable13)) { /*if*/
441 variable13 = TAG_Int(UNTAG_Int( variable11 /*middle*/)-UNTAG_Int( TAG_Int(1)));
442 variable10 = variable13 /*high=*/;
443 } else { /*if*/
444 variable13 = variable12 /*subindex*/;
445 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
446 variable15 = variable14;
447 if (UNTAG_Bool(variable15)) { /* and */
448 variable15 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*AbstractArray::_length*/;
449 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
450 }
451 variable14 = variable15;
452 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
453 variable14 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/;
454 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
455 goto return_label22;
456 return_label22: while(false);
457 variable13 = variable14;
458 variable13 = TAG_Bool(UNTAG_Int( variable5 /*index*/)>UNTAG_Int(variable13));
459 if (UNTAG_Bool(variable13)) { /*if*/
460 variable13 = TAG_Int(UNTAG_Int( variable11 /*middle*/)+UNTAG_Int( TAG_Int(1)));
461 variable9 = variable13 /*low=*/;
462 } else { /*if*/
463 variable13 = TAG_Int(UNTAG_Int( variable12 /*subindex*/)+UNTAG_Int( TAG_Int(1)));
464 variable14 = variable13;
465 variable15 = TAG_Bool(UNTAG_Int( variable14 /*index*/)>=UNTAG_Int( TAG_Int(0)));
466 variable16 = variable15;
467 if (UNTAG_Bool(variable16)) { /* and */
468 variable16 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*AbstractArray::_length*/;
469 variable16 = TAG_Bool(UNTAG_Int( variable14 /*index*/)<UNTAG_Int(variable16));
470 }
471 variable15 = variable16;
472 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
473 variable15 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/;
474 variable15 = UNBOX_NativeArray(variable15)[UNTAG_Int( variable14 /*index*/)];
475 goto return_label23;
476 return_label23: while(false);
477 variable13 = variable15;
478 variable7 = variable13 /*action_type=*/;
479 variable13 = TAG_Int(UNTAG_Int( variable12 /*subindex*/)+UNTAG_Int( TAG_Int(2)));
480 variable14 = variable13;
481 variable15 = TAG_Bool(UNTAG_Int( variable14 /*index*/)>=UNTAG_Int( TAG_Int(0)));
482 variable16 = variable15;
483 if (UNTAG_Bool(variable16)) { /* and */
484 variable16 = ATTR_array___AbstractArray____length( variable6 /*table*/) /*AbstractArray::_length*/;
485 variable16 = TAG_Bool(UNTAG_Int( variable14 /*index*/)<UNTAG_Int(variable16));
486 }
487 variable15 = variable16;
488 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
489 variable15 = ATTR_array___Array____items( variable6 /*table*/) /*Array::_items*/;
490 variable15 = UNBOX_NativeArray(variable15)[UNTAG_Int( variable14 /*index*/)];
491 goto return_label24;
492 return_label24: while(false);
493 variable13 = variable15;
494 variable8 = variable13 /*action_value=*/;
495 variable13 = TAG_Int(UNTAG_Int( variable9 /*low*/)-UNTAG_Int( TAG_Int(1)));
496 variable10 = variable13 /*high=*/;
497 }
498 }
499 continue_20: while(0);
500 }
501 break_20: while(0);
502 variable11 = TAG_Bool(( variable7 /*action_type*/)==( TAG_Int(0)));
503 if (UNTAG_Bool(variable11)) { /*if*/
504 variable11 = ((lexer___Lexer___next_t)CALL( variable1 /*lexer*/,COLOR_lexer___Lexer___next))( variable1 /*lexer*/) /*Lexer::next*/;
505 ((parser___Parser___push_t)CALL( self,COLOR_parser___Parser___push))( self, variable8 /*action_value*/, variable11) /*Parser::push*/;
506 } else { /*if*/
507 variable11 = TAG_Bool(( variable7 /*action_type*/)==( TAG_Int(1)));
508 if (UNTAG_Bool(variable11)) { /*if*/
509 variable11 = ATTR_parser___Parser____reduce_table( self) /*Parser::_reduce_table*/;
510 variable12 = variable8 /*action_value*/;
511 variable13 = TAG_Bool(UNTAG_Int( variable12 /*index*/)>=UNTAG_Int( TAG_Int(0)));
512 variable14 = variable13;
513 if (UNTAG_Bool(variable14)) { /* and */
514 variable14 = variable11;
515 variable14 = ATTR_array___AbstractArray____length(variable14) /*AbstractArray::_length*/;
516 variable14 = TAG_Bool(UNTAG_Int( variable12 /*index*/)<UNTAG_Int(variable14));
517 }
518 variable13 = variable14;
519 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
520 variable13 = variable11;
521 variable13 = ATTR_array___Array____items(variable13) /*Array::_items*/;
522 variable13 = UNBOX_NativeArray(variable13)[UNTAG_Int( variable12 /*index*/)];
523 goto return_label25;
524 return_label25: while(false);
525 variable11 = variable13;
526 ((parser___ReduceAction___action_t)CALL(variable11,COLOR_parser___ReduceAction___action))(variable11, self) /*ReduceAction::action*/;
527 } else { /*if*/
528 variable11 = TAG_Bool(( variable7 /*action_type*/)==( TAG_Int(2)));
529 if (UNTAG_Bool(variable11)) { /*if*/
530 variable12 = ((lexer___Lexer___next_t)CALL( variable1 /*lexer*/,COLOR_lexer___Lexer___next))( variable1 /*lexer*/) /*Lexer::next*/;
531 variable11 = variable12;
532 variable12 = TAG_Bool(( variable11 /*node2*/==NIT_NULL) || VAL_ISA( variable11 /*node2*/, COLOR_EOF, ID_EOF)) /*cast EOF*/;
533 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 143); nit_exit(1);}
534 variable13 = ((parser___Parser___pop_t)CALL( self,COLOR_parser___Parser___pop))( self) /*Parser::pop*/;
535 variable12 = variable13;
536 variable13 = TAG_Bool(( variable12 /*node1*/==NIT_NULL) || VAL_ISA( variable12 /*node1*/, COLOR_PModule, ID_PModule)) /*cast PModule*/;
537 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 145); nit_exit(1);}
538 variable14 = NEW_Start_parser_prod___Start___init( variable12 /*node1*/, variable11 /*node2*/); /*new Start*/
539 variable13 = variable14;
540 variable14 = NEW_SearchTokensVisitor_parser___SearchTokensVisitor___init(); /*new SearchTokensVisitor*/
541 ((parser___SearchTokensVisitor___visit_t)CALL(variable14,COLOR_parser_prod___Visitor___visit))(variable14, variable13 /*node*/) /*SearchTokensVisitor::visit*/;
542 variable0 = variable13 /*node*/;
543 goto return_label15;
544 } else { /*if*/
545 variable11 = TAG_Bool(( variable7 /*action_type*/)==( TAG_Int(3)));
546 if (UNTAG_Bool(variable11)) { /*if*/
547 variable12 = ((lexer___Lexer___filename_t)CALL( variable1 /*lexer*/,COLOR_lexer___Lexer___filename))( variable1 /*lexer*/) /*Lexer::filename*/;
548 variable13 = ((parser_tables___ParserTable___error_messages_t)CALL( self,COLOR_parser_tables___ParserTable___error_messages))( self) /*ParserTable::error_messages*/;
549 variable14 = ((parser_tables___ParserTable___errors_t)CALL( self,COLOR_parser_tables___ParserTable___errors))( self) /*ParserTable::errors*/;
550 variable15 = variable8 /*action_value*/;
551 variable16 = TAG_Bool(UNTAG_Int( variable15 /*index*/)>=UNTAG_Int( TAG_Int(0)));
552 variable17 = variable16;
553 if (UNTAG_Bool(variable17)) { /* and */
554 variable17 = variable14;
555 variable17 = ATTR_array___AbstractArray____length(variable17) /*AbstractArray::_length*/;
556 variable17 = TAG_Bool(UNTAG_Int( variable15 /*index*/)<UNTAG_Int(variable17));
557 }
558 variable16 = variable17;
559 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
560 variable16 = variable14;
561 variable16 = ATTR_array___Array____items(variable16) /*Array::_items*/;
562 variable16 = UNBOX_NativeArray(variable16)[UNTAG_Int( variable15 /*index*/)];
563 goto return_label26;
564 return_label26: while(false);
565 variable14 = variable16;
566 variable15 = variable14;
567 variable16 = TAG_Bool(UNTAG_Int( variable15 /*index*/)>=UNTAG_Int( TAG_Int(0)));
568 variable17 = variable16;
569 if (UNTAG_Bool(variable17)) { /* and */
570 variable17 = variable13;
571 variable17 = ATTR_array___AbstractArray____length(variable17) /*AbstractArray::_length*/;
572 variable17 = TAG_Bool(UNTAG_Int( variable15 /*index*/)<UNTAG_Int(variable17));
573 }
574 variable16 = variable17;
575 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_parser, 229); nit_exit(1);}
576 variable16 = variable13;
577 variable16 = ATTR_array___Array____items(variable16) /*Array::_items*/;
578 variable16 = UNBOX_NativeArray(variable16)[UNTAG_Int( variable15 /*index*/)];
579 goto return_label27;
580 return_label27: while(false);
581 variable13 = variable16;
582 variable14 = NEW_PError_lexer___PError___init_error(variable12, variable4 /*last_line*/, variable3 /*last_pos*/, variable13); /*new PError*/
583 variable12 = variable14;
584 variable11 = variable12;
585 variable13 = NEW_Start_parser_prod___Start___init( NIT_NULL /*null*/, variable11 /*node2*/); /*new Start*/
586 variable12 = variable13;
587 variable0 = variable12 /*node*/;
588 goto return_label15;
589 }
590 }
591 }
592 }
593 continue_16: while(0);
594 }
595 break_16: while(0);
596 variable0 = NIT_NULL /*null*/;
597 goto return_label15;
598 return_label15: while(false);
599 tracehead = trace.prev;
600 return variable0;
601 }
602 void parser___Parser___build_reduce_table(val_t self) {
603 struct trace_t trace = {NULL, NULL, 159, LOCATE_parser___Parser___build_reduce_table};
604 val_t variable0;
605 val_t variable1;
606 val_t variable2;
607 val_t variable3;
608 val_t variable4;
609 val_t variable5;
610 val_t variable6;
611 val_t variable7;
612 val_t variable8;
613 val_t variable9;
614 val_t variable10;
615 val_t variable11;
616 val_t variable12;
617 val_t variable13;
618 val_t variable14;
619 val_t variable15;
620 val_t variable16;
621 val_t variable17;
622 val_t variable18;
623 val_t variable19;
624 val_t variable20;
625 val_t variable21;
626 val_t variable22;
627 val_t variable23;
628 val_t variable24;
629 val_t variable25;
630 val_t variable26;
631 val_t variable27;
632 val_t variable28;
633 val_t variable29;
634 val_t variable30;
635 val_t variable31;
636 val_t variable32;
637 val_t variable33;
638 val_t variable34;
639 val_t variable35;
640 val_t variable36;
641 val_t variable37;
642 val_t variable38;
643 val_t variable39;
644 val_t variable40;
645 val_t variable41;
646 val_t variable42;
647 val_t variable43;
648 val_t variable44;
649 val_t variable45;
650 val_t variable46;
651 val_t variable47;
652 val_t variable48;
653 val_t variable49;
654 val_t variable50;
655 val_t variable51;
656 val_t variable52;
657 val_t variable53;
658 val_t variable54;
659 val_t variable55;
660 val_t variable56;
661 val_t variable57;
662 val_t variable58;
663 val_t variable59;
664 val_t variable60;
665 val_t variable61;
666 val_t variable62;
667 val_t variable63;
668 val_t variable64;
669 val_t variable65;
670 val_t variable66;
671 val_t variable67;
672 val_t variable68;
673 val_t variable69;
674 val_t variable70;
675 val_t variable71;
676 val_t variable72;
677 val_t variable73;
678 val_t variable74;
679 val_t variable75;
680 val_t variable76;
681 val_t variable77;
682 val_t variable78;
683 val_t variable79;
684 val_t variable80;
685 val_t variable81;
686 val_t variable82;
687 val_t variable83;
688 val_t variable84;
689 val_t variable85;
690 val_t variable86;
691 val_t variable87;
692 val_t variable88;
693 val_t variable89;
694 val_t variable90;
695 val_t variable91;
696 val_t variable92;
697 val_t variable93;
698 val_t variable94;
699 val_t variable95;
700 val_t variable96;
701 val_t variable97;
702 val_t variable98;
703 val_t variable99;
704 val_t variable100;
705 val_t variable101;
706 val_t variable102;
707 val_t variable103;
708 val_t variable104;
709 val_t variable105;
710 val_t variable106;
711 val_t variable107;
712 val_t variable108;
713 val_t variable109;
714 val_t variable110;
715 val_t variable111;
716 val_t variable112;
717 val_t variable113;
718 val_t variable114;
719 val_t variable115;
720 val_t variable116;
721 val_t variable117;
722 val_t variable118;
723 val_t variable119;
724 val_t variable120;
725 val_t variable121;
726 val_t variable122;
727 val_t variable123;
728 val_t variable124;
729 val_t variable125;
730 val_t variable126;
731 val_t variable127;
732 val_t variable128;
733 val_t variable129;
734 val_t variable130;
735 val_t variable131;
736 val_t variable132;
737 val_t variable133;
738 val_t variable134;
739 val_t variable135;
740 val_t variable136;
741 val_t variable137;
742 val_t variable138;
743 val_t variable139;
744 val_t variable140;
745 val_t variable141;
746 val_t variable142;
747 val_t variable143;
748 val_t variable144;
749 val_t variable145;
750 val_t variable146;
751 val_t variable147;
752 val_t variable148;
753 val_t variable149;
754 val_t variable150;
755 val_t variable151;
756 val_t variable152;
757 val_t variable153;
758 val_t variable154;
759 val_t variable155;
760 val_t variable156;
761 val_t variable157;
762 val_t variable158;
763 val_t variable159;
764 val_t variable160;
765 val_t variable161;
766 val_t variable162;
767 val_t variable163;
768 val_t variable164;
769 val_t variable165;
770 val_t variable166;
771 val_t variable167;
772 val_t variable168;
773 val_t variable169;
774 val_t variable170;
775 val_t variable171;
776 val_t variable172;
777 val_t variable173;
778 val_t variable174;
779 val_t variable175;
780 val_t variable176;
781 val_t variable177;
782 val_t variable178;
783 val_t variable179;
784 val_t variable180;
785 val_t variable181;
786 val_t variable182;
787 val_t variable183;
788 val_t variable184;
789 val_t variable185;
790 val_t variable186;
791 val_t variable187;
792 val_t variable188;
793 val_t variable189;
794 val_t variable190;
795 val_t variable191;
796 val_t variable192;
797 val_t variable193;
798 val_t variable194;
799 val_t variable195;
800 val_t variable196;
801 val_t variable197;
802 val_t variable198;
803 val_t variable199;
804 val_t variable200;
805 val_t variable201;
806 val_t variable202;
807 val_t variable203;
808 val_t variable204;
809 val_t variable205;
810 val_t variable206;
811 val_t variable207;
812 val_t variable208;
813 val_t variable209;
814 val_t variable210;
815 val_t variable211;
816 val_t variable212;
817 val_t variable213;
818 val_t variable214;
819 val_t variable215;
820 val_t variable216;
821 val_t variable217;
822 val_t variable218;
823 val_t variable219;
824 val_t variable220;
825 val_t variable221;
826 val_t variable222;
827 val_t variable223;
828 val_t variable224;
829 val_t variable225;
830 val_t variable226;
831 val_t variable227;
832 val_t variable228;
833 val_t variable229;
834 val_t variable230;
835 val_t variable231;
836 val_t variable232;
837 val_t variable233;
838 val_t variable234;
839 val_t variable235;
840 val_t variable236;
841 val_t variable237;
842 val_t variable238;
843 val_t variable239;
844 val_t variable240;
845 val_t variable241;
846 val_t variable242;
847 val_t variable243;
848 val_t variable244;
849 val_t variable245;
850 val_t variable246;
851 val_t variable247;
852 val_t variable248;
853 val_t variable249;
854 val_t variable250;
855 val_t variable251;
856 val_t variable252;
857 val_t variable253;
858 val_t variable254;
859 val_t variable255;
860 val_t variable256;
861 val_t variable257;
862 val_t variable258;
863 val_t variable259;
864 val_t variable260;
865 val_t variable261;
866 val_t variable262;
867 val_t variable263;
868 val_t variable264;
869 val_t variable265;
870 val_t variable266;
871 val_t variable267;
872 val_t variable268;
873 val_t variable269;
874 val_t variable270;
875 val_t variable271;
876 val_t variable272;
877 val_t variable273;
878 val_t variable274;
879 val_t variable275;
880 val_t variable276;
881 val_t variable277;
882 val_t variable278;
883 val_t variable279;
884 val_t variable280;
885 val_t variable281;
886 val_t variable282;
887 val_t variable283;
888 val_t variable284;
889 val_t variable285;
890 val_t variable286;
891 val_t variable287;
892 val_t variable288;
893 val_t variable289;
894 val_t variable290;
895 val_t variable291;
896 val_t variable292;
897 val_t variable293;
898 val_t variable294;
899 val_t variable295;
900 val_t variable296;
901 val_t variable297;
902 val_t variable298;
903 val_t variable299;
904 val_t variable300;
905 val_t variable301;
906 val_t variable302;
907 val_t variable303;
908 val_t variable304;
909 val_t variable305;
910 val_t variable306;
911 val_t variable307;
912 val_t variable308;
913 val_t variable309;
914 val_t variable310;
915 val_t variable311;
916 val_t variable312;
917 val_t variable313;
918 val_t variable314;
919 val_t variable315;
920 val_t variable316;
921 val_t variable317;
922 val_t variable318;
923 val_t variable319;
924 val_t variable320;
925 val_t variable321;
926 val_t variable322;
927 val_t variable323;
928 val_t variable324;
929 val_t variable325;
930 val_t variable326;
931 val_t variable327;
932 val_t variable328;
933 val_t variable329;
934 val_t variable330;
935 val_t variable331;
936 val_t variable332;
937 val_t variable333;
938 val_t variable334;
939 val_t variable335;
940 val_t variable336;
941 val_t variable337;
942 val_t variable338;
943 val_t variable339;
944 val_t variable340;
945 val_t variable341;
946 val_t variable342;
947 val_t variable343;
948 val_t variable344;
949 val_t variable345;
950 val_t variable346;
951 val_t variable347;
952 val_t variable348;
953 val_t variable349;
954 val_t variable350;
955 val_t variable351;
956 val_t variable352;
957 val_t variable353;
958 val_t variable354;
959 val_t variable355;
960 val_t variable356;
961 val_t variable357;
962 val_t variable358;
963 val_t variable359;
964 val_t variable360;
965 val_t variable361;
966 val_t variable362;
967 val_t variable363;
968 val_t variable364;
969 val_t variable365;
970 val_t variable366;
971 val_t variable367;
972 val_t variable368;
973 val_t variable369;
974 val_t variable370;
975 val_t variable371;
976 val_t variable372;
977 val_t variable373;
978 val_t variable374;
979 val_t variable375;
980 val_t variable376;
981 val_t variable377;
982 val_t variable378;
983 val_t variable379;
984 val_t variable380;
985 val_t variable381;
986 val_t variable382;
987 val_t variable383;
988 val_t variable384;
989 val_t variable385;
990 val_t variable386;
991 val_t variable387;
992 val_t variable388;
993 val_t variable389;
994 val_t variable390;
995 val_t variable391;
996 val_t variable392;
997 val_t variable393;
998 val_t variable394;
999 val_t variable395;
1000 val_t variable396;
1001 val_t variable397;
1002 val_t variable398;
1003 val_t variable399;
1004 val_t variable400;
1005 val_t variable401;
1006 val_t variable402;
1007 val_t variable403;
1008 val_t variable404;
1009 val_t variable405;
1010 val_t variable406;
1011 val_t variable407;
1012 val_t variable408;
1013 val_t variable409;
1014 val_t variable410;
1015 val_t variable411;
1016 val_t variable412;
1017 val_t variable413;
1018 val_t variable414;
1019 val_t variable415;
1020 val_t variable416;
1021 val_t variable417;
1022 val_t variable418;
1023 val_t variable419;
1024 val_t variable420;
1025 val_t variable421;
1026 val_t variable422;
1027 val_t variable423;
1028 val_t variable424;
1029 val_t variable425;
1030 val_t variable426;
1031 val_t variable427;
1032 val_t variable428;
1033 val_t variable429;
1034 val_t variable430;
1035 val_t variable431;
1036 val_t variable432;
1037 val_t variable433;
1038 val_t variable434;
1039 val_t variable435;
1040 val_t variable436;
1041 val_t variable437;
1042 val_t variable438;
1043 val_t variable439;
1044 val_t variable440;
1045 val_t variable441;
1046 val_t variable442;
1047 val_t variable443;
1048 val_t variable444;
1049 val_t variable445;
1050 val_t variable446;
1051 val_t variable447;
1052 val_t variable448;
1053 val_t variable449;
1054 val_t variable450;
1055 val_t variable451;
1056 val_t variable452;
1057 val_t variable453;
1058 val_t variable454;
1059 val_t variable455;
1060 val_t variable456;
1061 val_t variable457;
1062 val_t variable458;
1063 val_t variable459;
1064 val_t variable460;
1065 val_t variable461;
1066 val_t variable462;
1067 val_t variable463;
1068 val_t variable464;
1069 val_t variable465;
1070 val_t variable466;
1071 val_t variable467;
1072 val_t variable468;
1073 val_t variable469;
1074 val_t variable470;
1075 val_t variable471;
1076 val_t variable472;
1077 val_t variable473;
1078 val_t variable474;
1079 val_t variable475;
1080 val_t variable476;
1081 val_t variable477;
1082 val_t variable478;
1083 val_t variable479;
1084 val_t variable480;
1085 val_t variable481;
1086 val_t variable482;
1087 val_t variable483;
1088 val_t variable484;
1089 val_t variable485;
1090 val_t variable486;
1091 val_t variable487;
1092 val_t variable488;
1093 val_t variable489;
1094 val_t variable490;
1095 val_t variable491;
1096 val_t variable492;
1097 val_t variable493;
1098 val_t variable494;
1099 val_t variable495;
1100 val_t variable496;
1101 val_t variable497;
1102 val_t variable498;
1103 val_t variable499;
1104 val_t variable500;
1105 val_t variable501;
1106 val_t variable502;
1107 val_t variable503;
1108 val_t variable504;
1109 val_t variable505;
1110 val_t variable506;
1111 val_t variable507;
1112 val_t variable508;
1113 val_t variable509;
1114 val_t variable510;
1115 val_t variable511;
1116 val_t variable512;
1117 val_t variable513;
1118 val_t variable514;
1119 val_t variable515;
1120 val_t variable516;
1121 val_t variable517;
1122 val_t variable518;
1123 val_t variable519;
1124 val_t variable520;
1125 val_t variable521;
1126 val_t variable522;
1127 val_t variable523;
1128 val_t variable524;
1129 val_t variable525;
1130 val_t variable526;
1131 val_t variable527;
1132 val_t variable528;
1133 val_t variable529;
1134 val_t variable530;
1135 val_t variable531;
1136 val_t variable532;
1137 val_t variable533;
1138 val_t variable534;
1139 val_t variable535;
1140 val_t variable536;
1141 val_t variable537;
1142 val_t variable538;
1143 val_t variable539;
1144 val_t variable540;
1145 val_t variable541;
1146 val_t variable542;
1147 val_t variable543;
1148 val_t variable544;
1149 val_t variable545;
1150 val_t variable546;
1151 val_t variable547;
1152 val_t variable548;
1153 val_t variable549;
1154 val_t variable550;
1155 val_t variable551;
1156 val_t variable552;
1157 val_t variable553;
1158 val_t variable554;
1159 val_t variable555;
1160 val_t variable556;
1161 val_t variable557;
1162 val_t variable558;
1163 val_t variable559;
1164 val_t variable560;
1165 val_t variable561;
1166 val_t variable562;
1167 val_t variable563;
1168 val_t variable564;
1169 val_t variable565;
1170 val_t variable566;
1171 val_t variable567;
1172 val_t variable568;
1173 val_t variable569;
1174 val_t variable570;
1175 val_t variable571;
1176 val_t variable572;
1177 val_t variable573;
1178 trace.prev = tracehead; tracehead = &trace;
1179 trace.file = LOCATE_parser;
1180 variable0 = NEW_Array_array___Array___with_capacity(TAG_Int(573)); /*new Array[ReduceAction]*/
1181 variable1 = NEW_ReduceAction0_parser___ReduceAction0___init(); /*new ReduceAction0*/
1182 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable1) /*AbstractArray::add*/;
1183 variable2 = NEW_ReduceAction1_parser___ReduceAction1___init(); /*new ReduceAction1*/
1184 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable2) /*AbstractArray::add*/;
1185 variable3 = NEW_ReduceAction2_parser___ReduceAction2___init(); /*new ReduceAction2*/
1186 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable3) /*AbstractArray::add*/;
1187 variable4 = NEW_ReduceAction3_parser___ReduceAction3___init(); /*new ReduceAction3*/
1188 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable4) /*AbstractArray::add*/;
1189 variable5 = NEW_ReduceAction4_parser___ReduceAction4___init(); /*new ReduceAction4*/
1190 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable5) /*AbstractArray::add*/;
1191 variable6 = NEW_ReduceAction5_parser___ReduceAction5___init(); /*new ReduceAction5*/
1192 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable6) /*AbstractArray::add*/;
1193 variable7 = NEW_ReduceAction6_parser___ReduceAction6___init(); /*new ReduceAction6*/
1194 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable7) /*AbstractArray::add*/;
1195 variable8 = NEW_ReduceAction7_parser___ReduceAction7___init(); /*new ReduceAction7*/
1196 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable8) /*AbstractArray::add*/;
1197 variable9 = NEW_ReduceAction8_parser___ReduceAction8___init(); /*new ReduceAction8*/
1198 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable9) /*AbstractArray::add*/;
1199 variable10 = NEW_ReduceAction9_parser___ReduceAction9___init(); /*new ReduceAction9*/
1200 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable10) /*AbstractArray::add*/;
1201 variable11 = NEW_ReduceAction10_parser___ReduceAction10___init(); /*new ReduceAction10*/
1202 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable11) /*AbstractArray::add*/;
1203 variable12 = NEW_ReduceAction11_parser___ReduceAction11___init(); /*new ReduceAction11*/
1204 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable12) /*AbstractArray::add*/;
1205 variable13 = NEW_ReduceAction12_parser___ReduceAction12___init(); /*new ReduceAction12*/
1206 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable13) /*AbstractArray::add*/;
1207 variable14 = NEW_ReduceAction13_parser___ReduceAction13___init(); /*new ReduceAction13*/
1208 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable14) /*AbstractArray::add*/;
1209 variable15 = NEW_ReduceAction14_parser___ReduceAction14___init(); /*new ReduceAction14*/
1210 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable15) /*AbstractArray::add*/;
1211 variable16 = NEW_ReduceAction15_parser___ReduceAction15___init(); /*new ReduceAction15*/
1212 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable16) /*AbstractArray::add*/;
1213 variable17 = NEW_ReduceAction16_parser___ReduceAction16___init(); /*new ReduceAction16*/
1214 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable17) /*AbstractArray::add*/;
1215 variable18 = NEW_ReduceAction17_parser___ReduceAction17___init(); /*new ReduceAction17*/
1216 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable18) /*AbstractArray::add*/;
1217 variable19 = NEW_ReduceAction18_parser___ReduceAction18___init(); /*new ReduceAction18*/
1218 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable19) /*AbstractArray::add*/;
1219 variable20 = NEW_ReduceAction19_parser___ReduceAction19___init(); /*new ReduceAction19*/
1220 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable20) /*AbstractArray::add*/;
1221 variable21 = NEW_ReduceAction20_parser___ReduceAction20___init(); /*new ReduceAction20*/
1222 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable21) /*AbstractArray::add*/;
1223 variable22 = NEW_ReduceAction21_parser___ReduceAction21___init(); /*new ReduceAction21*/
1224 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable22) /*AbstractArray::add*/;
1225 variable23 = NEW_ReduceAction22_parser___ReduceAction22___init(); /*new ReduceAction22*/
1226 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable23) /*AbstractArray::add*/;
1227 variable24 = NEW_ReduceAction23_parser___ReduceAction23___init(); /*new ReduceAction23*/
1228 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable24) /*AbstractArray::add*/;
1229 variable25 = NEW_ReduceAction24_parser___ReduceAction24___init(); /*new ReduceAction24*/
1230 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable25) /*AbstractArray::add*/;
1231 variable26 = NEW_ReduceAction25_parser___ReduceAction25___init(); /*new ReduceAction25*/
1232 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable26) /*AbstractArray::add*/;
1233 variable27 = NEW_ReduceAction26_parser___ReduceAction26___init(); /*new ReduceAction26*/
1234 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable27) /*AbstractArray::add*/;
1235 variable28 = NEW_ReduceAction27_parser___ReduceAction27___init(); /*new ReduceAction27*/
1236 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable28) /*AbstractArray::add*/;
1237 variable29 = NEW_ReduceAction28_parser___ReduceAction28___init(); /*new ReduceAction28*/
1238 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable29) /*AbstractArray::add*/;
1239 variable30 = NEW_ReduceAction29_parser___ReduceAction29___init(); /*new ReduceAction29*/
1240 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable30) /*AbstractArray::add*/;
1241 variable31 = NEW_ReduceAction30_parser___ReduceAction30___init(); /*new ReduceAction30*/
1242 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable31) /*AbstractArray::add*/;
1243 variable32 = NEW_ReduceAction31_parser___ReduceAction31___init(); /*new ReduceAction31*/
1244 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable32) /*AbstractArray::add*/;
1245 variable33 = NEW_ReduceAction32_parser___ReduceAction32___init(); /*new ReduceAction32*/
1246 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable33) /*AbstractArray::add*/;
1247 variable34 = NEW_ReduceAction33_parser___ReduceAction33___init(); /*new ReduceAction33*/
1248 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable34) /*AbstractArray::add*/;
1249 variable35 = NEW_ReduceAction34_parser___ReduceAction34___init(); /*new ReduceAction34*/
1250 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable35) /*AbstractArray::add*/;
1251 variable36 = NEW_ReduceAction35_parser___ReduceAction35___init(); /*new ReduceAction35*/
1252 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable36) /*AbstractArray::add*/;
1253 variable37 = NEW_ReduceAction36_parser___ReduceAction36___init(); /*new ReduceAction36*/
1254 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable37) /*AbstractArray::add*/;
1255 variable38 = NEW_ReduceAction37_parser___ReduceAction37___init(); /*new ReduceAction37*/
1256 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable38) /*AbstractArray::add*/;
1257 variable39 = NEW_ReduceAction38_parser___ReduceAction38___init(); /*new ReduceAction38*/
1258 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable39) /*AbstractArray::add*/;
1259 variable40 = NEW_ReduceAction39_parser___ReduceAction39___init(); /*new ReduceAction39*/
1260 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable40) /*AbstractArray::add*/;
1261 variable41 = NEW_ReduceAction40_parser___ReduceAction40___init(); /*new ReduceAction40*/
1262 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable41) /*AbstractArray::add*/;
1263 variable42 = NEW_ReduceAction41_parser___ReduceAction41___init(); /*new ReduceAction41*/
1264 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable42) /*AbstractArray::add*/;
1265 variable43 = NEW_ReduceAction42_parser___ReduceAction42___init(); /*new ReduceAction42*/
1266 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable43) /*AbstractArray::add*/;
1267 variable44 = NEW_ReduceAction43_parser___ReduceAction43___init(); /*new ReduceAction43*/
1268 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable44) /*AbstractArray::add*/;
1269 variable45 = NEW_ReduceAction44_parser___ReduceAction44___init(); /*new ReduceAction44*/
1270 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable45) /*AbstractArray::add*/;
1271 variable46 = NEW_ReduceAction45_parser___ReduceAction45___init(); /*new ReduceAction45*/
1272 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable46) /*AbstractArray::add*/;
1273 variable47 = NEW_ReduceAction46_parser___ReduceAction46___init(); /*new ReduceAction46*/
1274 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable47) /*AbstractArray::add*/;
1275 variable48 = NEW_ReduceAction47_parser___ReduceAction47___init(); /*new ReduceAction47*/
1276 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable48) /*AbstractArray::add*/;
1277 variable49 = NEW_ReduceAction48_parser___ReduceAction48___init(); /*new ReduceAction48*/
1278 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable49) /*AbstractArray::add*/;
1279 variable50 = NEW_ReduceAction49_parser___ReduceAction49___init(); /*new ReduceAction49*/
1280 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable50) /*AbstractArray::add*/;
1281 variable51 = NEW_ReduceAction50_parser___ReduceAction50___init(); /*new ReduceAction50*/
1282 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable51) /*AbstractArray::add*/;
1283 variable52 = NEW_ReduceAction51_parser___ReduceAction51___init(); /*new ReduceAction51*/
1284 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable52) /*AbstractArray::add*/;
1285 variable53 = NEW_ReduceAction52_parser___ReduceAction52___init(); /*new ReduceAction52*/
1286 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable53) /*AbstractArray::add*/;
1287 variable54 = NEW_ReduceAction53_parser___ReduceAction53___init(); /*new ReduceAction53*/
1288 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable54) /*AbstractArray::add*/;
1289 variable55 = NEW_ReduceAction54_parser___ReduceAction54___init(); /*new ReduceAction54*/
1290 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable55) /*AbstractArray::add*/;
1291 variable56 = NEW_ReduceAction55_parser___ReduceAction55___init(); /*new ReduceAction55*/
1292 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable56) /*AbstractArray::add*/;
1293 variable57 = NEW_ReduceAction56_parser___ReduceAction56___init(); /*new ReduceAction56*/
1294 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable57) /*AbstractArray::add*/;
1295 variable58 = NEW_ReduceAction57_parser___ReduceAction57___init(); /*new ReduceAction57*/
1296 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable58) /*AbstractArray::add*/;
1297 variable59 = NEW_ReduceAction58_parser___ReduceAction58___init(); /*new ReduceAction58*/
1298 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable59) /*AbstractArray::add*/;
1299 variable60 = NEW_ReduceAction59_parser___ReduceAction59___init(); /*new ReduceAction59*/
1300 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable60) /*AbstractArray::add*/;
1301 variable61 = NEW_ReduceAction60_parser___ReduceAction60___init(); /*new ReduceAction60*/
1302 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable61) /*AbstractArray::add*/;
1303 variable62 = NEW_ReduceAction61_parser___ReduceAction61___init(); /*new ReduceAction61*/
1304 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable62) /*AbstractArray::add*/;
1305 variable63 = NEW_ReduceAction62_parser___ReduceAction62___init(); /*new ReduceAction62*/
1306 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable63) /*AbstractArray::add*/;
1307 variable64 = NEW_ReduceAction63_parser___ReduceAction63___init(); /*new ReduceAction63*/
1308 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable64) /*AbstractArray::add*/;
1309 variable65 = NEW_ReduceAction64_parser___ReduceAction64___init(); /*new ReduceAction64*/
1310 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable65) /*AbstractArray::add*/;
1311 variable66 = NEW_ReduceAction65_parser___ReduceAction65___init(); /*new ReduceAction65*/
1312 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable66) /*AbstractArray::add*/;
1313 variable67 = NEW_ReduceAction66_parser___ReduceAction66___init(); /*new ReduceAction66*/
1314 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable67) /*AbstractArray::add*/;
1315 variable68 = NEW_ReduceAction67_parser___ReduceAction67___init(); /*new ReduceAction67*/
1316 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable68) /*AbstractArray::add*/;
1317 variable69 = NEW_ReduceAction68_parser___ReduceAction68___init(); /*new ReduceAction68*/
1318 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable69) /*AbstractArray::add*/;
1319 variable70 = NEW_ReduceAction69_parser___ReduceAction69___init(); /*new ReduceAction69*/
1320 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable70) /*AbstractArray::add*/;
1321 variable71 = NEW_ReduceAction70_parser___ReduceAction70___init(); /*new ReduceAction70*/
1322 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable71) /*AbstractArray::add*/;
1323 variable72 = NEW_ReduceAction71_parser___ReduceAction71___init(); /*new ReduceAction71*/
1324 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable72) /*AbstractArray::add*/;
1325 variable73 = NEW_ReduceAction72_parser___ReduceAction72___init(); /*new ReduceAction72*/
1326 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable73) /*AbstractArray::add*/;
1327 variable74 = NEW_ReduceAction73_parser___ReduceAction73___init(); /*new ReduceAction73*/
1328 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable74) /*AbstractArray::add*/;
1329 variable75 = NEW_ReduceAction74_parser___ReduceAction74___init(); /*new ReduceAction74*/
1330 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable75) /*AbstractArray::add*/;
1331 variable76 = NEW_ReduceAction75_parser___ReduceAction75___init(); /*new ReduceAction75*/
1332 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable76) /*AbstractArray::add*/;
1333 variable77 = NEW_ReduceAction76_parser___ReduceAction76___init(); /*new ReduceAction76*/
1334 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable77) /*AbstractArray::add*/;
1335 variable78 = NEW_ReduceAction77_parser___ReduceAction77___init(); /*new ReduceAction77*/
1336 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable78) /*AbstractArray::add*/;
1337 variable79 = NEW_ReduceAction78_parser___ReduceAction78___init(); /*new ReduceAction78*/
1338 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable79) /*AbstractArray::add*/;
1339 variable80 = NEW_ReduceAction79_parser___ReduceAction79___init(); /*new ReduceAction79*/
1340 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable80) /*AbstractArray::add*/;
1341 variable81 = NEW_ReduceAction80_parser___ReduceAction80___init(); /*new ReduceAction80*/
1342 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable81) /*AbstractArray::add*/;
1343 variable82 = NEW_ReduceAction81_parser___ReduceAction81___init(); /*new ReduceAction81*/
1344 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable82) /*AbstractArray::add*/;
1345 variable83 = NEW_ReduceAction82_parser___ReduceAction82___init(); /*new ReduceAction82*/
1346 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable83) /*AbstractArray::add*/;
1347 variable84 = NEW_ReduceAction83_parser___ReduceAction83___init(); /*new ReduceAction83*/
1348 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable84) /*AbstractArray::add*/;
1349 variable85 = NEW_ReduceAction84_parser___ReduceAction84___init(); /*new ReduceAction84*/
1350 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable85) /*AbstractArray::add*/;
1351 variable86 = NEW_ReduceAction85_parser___ReduceAction85___init(); /*new ReduceAction85*/
1352 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable86) /*AbstractArray::add*/;
1353 variable87 = NEW_ReduceAction86_parser___ReduceAction86___init(); /*new ReduceAction86*/
1354 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable87) /*AbstractArray::add*/;
1355 variable88 = NEW_ReduceAction87_parser___ReduceAction87___init(); /*new ReduceAction87*/
1356 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable88) /*AbstractArray::add*/;
1357 variable89 = NEW_ReduceAction88_parser___ReduceAction88___init(); /*new ReduceAction88*/
1358 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable89) /*AbstractArray::add*/;
1359 variable90 = NEW_ReduceAction89_parser___ReduceAction89___init(); /*new ReduceAction89*/
1360 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable90) /*AbstractArray::add*/;
1361 variable91 = NEW_ReduceAction90_parser___ReduceAction90___init(); /*new ReduceAction90*/
1362 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable91) /*AbstractArray::add*/;
1363 variable92 = NEW_ReduceAction91_parser___ReduceAction91___init(); /*new ReduceAction91*/
1364 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable92) /*AbstractArray::add*/;
1365 variable93 = NEW_ReduceAction92_parser___ReduceAction92___init(); /*new ReduceAction92*/
1366 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable93) /*AbstractArray::add*/;
1367 variable94 = NEW_ReduceAction93_parser___ReduceAction93___init(); /*new ReduceAction93*/
1368 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable94) /*AbstractArray::add*/;
1369 variable95 = NEW_ReduceAction94_parser___ReduceAction94___init(); /*new ReduceAction94*/
1370 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable95) /*AbstractArray::add*/;
1371 variable96 = NEW_ReduceAction95_parser___ReduceAction95___init(); /*new ReduceAction95*/
1372 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable96) /*AbstractArray::add*/;
1373 variable97 = NEW_ReduceAction96_parser___ReduceAction96___init(); /*new ReduceAction96*/
1374 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable97) /*AbstractArray::add*/;
1375 variable98 = NEW_ReduceAction97_parser___ReduceAction97___init(); /*new ReduceAction97*/
1376 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable98) /*AbstractArray::add*/;
1377 variable99 = NEW_ReduceAction98_parser___ReduceAction98___init(); /*new ReduceAction98*/
1378 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable99) /*AbstractArray::add*/;
1379 variable100 = NEW_ReduceAction99_parser___ReduceAction99___init(); /*new ReduceAction99*/
1380 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable100) /*AbstractArray::add*/;
1381 variable101 = NEW_ReduceAction100_parser___ReduceAction100___init(); /*new ReduceAction100*/
1382 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable101) /*AbstractArray::add*/;
1383 variable102 = NEW_ReduceAction101_parser___ReduceAction101___init(); /*new ReduceAction101*/
1384 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable102) /*AbstractArray::add*/;
1385 variable103 = NEW_ReduceAction102_parser___ReduceAction102___init(); /*new ReduceAction102*/
1386 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable103) /*AbstractArray::add*/;
1387 variable104 = NEW_ReduceAction103_parser___ReduceAction103___init(); /*new ReduceAction103*/
1388 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable104) /*AbstractArray::add*/;
1389 variable105 = NEW_ReduceAction104_parser___ReduceAction104___init(); /*new ReduceAction104*/
1390 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable105) /*AbstractArray::add*/;
1391 variable106 = NEW_ReduceAction105_parser___ReduceAction105___init(); /*new ReduceAction105*/
1392 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable106) /*AbstractArray::add*/;
1393 variable107 = NEW_ReduceAction106_parser___ReduceAction106___init(); /*new ReduceAction106*/
1394 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable107) /*AbstractArray::add*/;
1395 variable108 = NEW_ReduceAction107_parser___ReduceAction107___init(); /*new ReduceAction107*/
1396 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable108) /*AbstractArray::add*/;
1397 variable109 = NEW_ReduceAction108_parser___ReduceAction108___init(); /*new ReduceAction108*/
1398 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable109) /*AbstractArray::add*/;
1399 variable110 = NEW_ReduceAction109_parser___ReduceAction109___init(); /*new ReduceAction109*/
1400 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable110) /*AbstractArray::add*/;
1401 variable111 = NEW_ReduceAction110_parser___ReduceAction110___init(); /*new ReduceAction110*/
1402 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable111) /*AbstractArray::add*/;
1403 variable112 = NEW_ReduceAction111_parser___ReduceAction111___init(); /*new ReduceAction111*/
1404 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable112) /*AbstractArray::add*/;
1405 variable113 = NEW_ReduceAction112_parser___ReduceAction112___init(); /*new ReduceAction112*/
1406 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable113) /*AbstractArray::add*/;
1407 variable114 = NEW_ReduceAction113_parser___ReduceAction113___init(); /*new ReduceAction113*/
1408 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable114) /*AbstractArray::add*/;
1409 variable115 = NEW_ReduceAction114_parser___ReduceAction114___init(); /*new ReduceAction114*/
1410 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable115) /*AbstractArray::add*/;
1411 variable116 = NEW_ReduceAction115_parser___ReduceAction115___init(); /*new ReduceAction115*/
1412 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable116) /*AbstractArray::add*/;
1413 variable117 = NEW_ReduceAction116_parser___ReduceAction116___init(); /*new ReduceAction116*/
1414 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable117) /*AbstractArray::add*/;
1415 variable118 = NEW_ReduceAction117_parser___ReduceAction117___init(); /*new ReduceAction117*/
1416 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable118) /*AbstractArray::add*/;
1417 variable119 = NEW_ReduceAction118_parser___ReduceAction118___init(); /*new ReduceAction118*/
1418 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable119) /*AbstractArray::add*/;
1419 variable120 = NEW_ReduceAction119_parser___ReduceAction119___init(); /*new ReduceAction119*/
1420 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable120) /*AbstractArray::add*/;
1421 variable121 = NEW_ReduceAction120_parser___ReduceAction120___init(); /*new ReduceAction120*/
1422 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable121) /*AbstractArray::add*/;
1423 variable122 = NEW_ReduceAction121_parser___ReduceAction121___init(); /*new ReduceAction121*/
1424 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable122) /*AbstractArray::add*/;
1425 variable123 = NEW_ReduceAction122_parser___ReduceAction122___init(); /*new ReduceAction122*/
1426 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable123) /*AbstractArray::add*/;
1427 variable124 = NEW_ReduceAction123_parser___ReduceAction123___init(); /*new ReduceAction123*/
1428 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable124) /*AbstractArray::add*/;
1429 variable125 = NEW_ReduceAction124_parser___ReduceAction124___init(); /*new ReduceAction124*/
1430 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable125) /*AbstractArray::add*/;
1431 variable126 = NEW_ReduceAction125_parser___ReduceAction125___init(); /*new ReduceAction125*/
1432 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable126) /*AbstractArray::add*/;
1433 variable127 = NEW_ReduceAction126_parser___ReduceAction126___init(); /*new ReduceAction126*/
1434 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable127) /*AbstractArray::add*/;
1435 variable128 = NEW_ReduceAction127_parser___ReduceAction127___init(); /*new ReduceAction127*/
1436 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable128) /*AbstractArray::add*/;
1437 variable129 = NEW_ReduceAction128_parser___ReduceAction128___init(); /*new ReduceAction128*/
1438 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable129) /*AbstractArray::add*/;
1439 variable130 = NEW_ReduceAction129_parser___ReduceAction129___init(); /*new ReduceAction129*/
1440 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable130) /*AbstractArray::add*/;
1441 variable131 = NEW_ReduceAction130_parser___ReduceAction130___init(); /*new ReduceAction130*/
1442 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable131) /*AbstractArray::add*/;
1443 variable132 = NEW_ReduceAction131_parser___ReduceAction131___init(); /*new ReduceAction131*/
1444 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable132) /*AbstractArray::add*/;
1445 variable133 = NEW_ReduceAction132_parser___ReduceAction132___init(); /*new ReduceAction132*/
1446 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable133) /*AbstractArray::add*/;
1447 variable134 = NEW_ReduceAction133_parser___ReduceAction133___init(); /*new ReduceAction133*/
1448 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable134) /*AbstractArray::add*/;
1449 variable135 = NEW_ReduceAction134_parser___ReduceAction134___init(); /*new ReduceAction134*/
1450 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable135) /*AbstractArray::add*/;
1451 variable136 = NEW_ReduceAction135_parser___ReduceAction135___init(); /*new ReduceAction135*/
1452 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable136) /*AbstractArray::add*/;
1453 variable137 = NEW_ReduceAction136_parser___ReduceAction136___init(); /*new ReduceAction136*/
1454 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable137) /*AbstractArray::add*/;
1455 variable138 = NEW_ReduceAction137_parser___ReduceAction137___init(); /*new ReduceAction137*/
1456 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable138) /*AbstractArray::add*/;
1457 variable139 = NEW_ReduceAction138_parser___ReduceAction138___init(); /*new ReduceAction138*/
1458 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable139) /*AbstractArray::add*/;
1459 variable140 = NEW_ReduceAction139_parser___ReduceAction139___init(); /*new ReduceAction139*/
1460 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable140) /*AbstractArray::add*/;
1461 variable141 = NEW_ReduceAction140_parser___ReduceAction140___init(); /*new ReduceAction140*/
1462 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable141) /*AbstractArray::add*/;
1463 variable142 = NEW_ReduceAction141_parser___ReduceAction141___init(); /*new ReduceAction141*/
1464 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable142) /*AbstractArray::add*/;
1465 variable143 = NEW_ReduceAction142_parser___ReduceAction142___init(); /*new ReduceAction142*/
1466 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable143) /*AbstractArray::add*/;
1467 variable144 = NEW_ReduceAction143_parser___ReduceAction143___init(); /*new ReduceAction143*/
1468 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable144) /*AbstractArray::add*/;
1469 variable145 = NEW_ReduceAction144_parser___ReduceAction144___init(); /*new ReduceAction144*/
1470 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable145) /*AbstractArray::add*/;
1471 variable146 = NEW_ReduceAction145_parser___ReduceAction145___init(); /*new ReduceAction145*/
1472 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable146) /*AbstractArray::add*/;
1473 variable147 = NEW_ReduceAction146_parser___ReduceAction146___init(); /*new ReduceAction146*/
1474 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable147) /*AbstractArray::add*/;
1475 variable148 = NEW_ReduceAction147_parser___ReduceAction147___init(); /*new ReduceAction147*/
1476 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable148) /*AbstractArray::add*/;
1477 variable149 = NEW_ReduceAction148_parser___ReduceAction148___init(); /*new ReduceAction148*/
1478 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable149) /*AbstractArray::add*/;
1479 variable150 = NEW_ReduceAction149_parser___ReduceAction149___init(); /*new ReduceAction149*/
1480 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable150) /*AbstractArray::add*/;
1481 variable151 = NEW_ReduceAction150_parser___ReduceAction150___init(); /*new ReduceAction150*/
1482 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable151) /*AbstractArray::add*/;
1483 variable152 = NEW_ReduceAction151_parser___ReduceAction151___init(); /*new ReduceAction151*/
1484 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable152) /*AbstractArray::add*/;
1485 variable153 = NEW_ReduceAction152_parser___ReduceAction152___init(); /*new ReduceAction152*/
1486 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable153) /*AbstractArray::add*/;
1487 variable154 = NEW_ReduceAction153_parser___ReduceAction153___init(); /*new ReduceAction153*/
1488 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable154) /*AbstractArray::add*/;
1489 variable155 = NEW_ReduceAction154_parser___ReduceAction154___init(); /*new ReduceAction154*/
1490 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable155) /*AbstractArray::add*/;
1491 variable156 = NEW_ReduceAction155_parser___ReduceAction155___init(); /*new ReduceAction155*/
1492 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable156) /*AbstractArray::add*/;
1493 variable157 = NEW_ReduceAction156_parser___ReduceAction156___init(); /*new ReduceAction156*/
1494 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable157) /*AbstractArray::add*/;
1495 variable158 = NEW_ReduceAction157_parser___ReduceAction157___init(); /*new ReduceAction157*/
1496 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable158) /*AbstractArray::add*/;
1497 variable159 = NEW_ReduceAction158_parser___ReduceAction158___init(); /*new ReduceAction158*/
1498 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable159) /*AbstractArray::add*/;
1499 variable160 = NEW_ReduceAction159_parser___ReduceAction159___init(); /*new ReduceAction159*/
1500 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable160) /*AbstractArray::add*/;
1501 variable161 = NEW_ReduceAction160_parser___ReduceAction160___init(); /*new ReduceAction160*/
1502 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable161) /*AbstractArray::add*/;
1503 variable162 = NEW_ReduceAction161_parser___ReduceAction161___init(); /*new ReduceAction161*/
1504 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable162) /*AbstractArray::add*/;
1505 variable163 = NEW_ReduceAction162_parser___ReduceAction162___init(); /*new ReduceAction162*/
1506 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable163) /*AbstractArray::add*/;
1507 variable164 = NEW_ReduceAction163_parser___ReduceAction163___init(); /*new ReduceAction163*/
1508 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable164) /*AbstractArray::add*/;
1509 variable165 = NEW_ReduceAction164_parser___ReduceAction164___init(); /*new ReduceAction164*/
1510 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable165) /*AbstractArray::add*/;
1511 variable166 = NEW_ReduceAction165_parser___ReduceAction165___init(); /*new ReduceAction165*/
1512 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable166) /*AbstractArray::add*/;
1513 variable167 = NEW_ReduceAction166_parser___ReduceAction166___init(); /*new ReduceAction166*/
1514 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable167) /*AbstractArray::add*/;
1515 variable168 = NEW_ReduceAction167_parser___ReduceAction167___init(); /*new ReduceAction167*/
1516 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable168) /*AbstractArray::add*/;
1517 variable169 = NEW_ReduceAction168_parser___ReduceAction168___init(); /*new ReduceAction168*/
1518 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable169) /*AbstractArray::add*/;
1519 variable170 = NEW_ReduceAction169_parser___ReduceAction169___init(); /*new ReduceAction169*/
1520 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable170) /*AbstractArray::add*/;
1521 variable171 = NEW_ReduceAction170_parser___ReduceAction170___init(); /*new ReduceAction170*/
1522 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable171) /*AbstractArray::add*/;
1523 variable172 = NEW_ReduceAction171_parser___ReduceAction171___init(); /*new ReduceAction171*/
1524 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable172) /*AbstractArray::add*/;
1525 variable173 = NEW_ReduceAction172_parser___ReduceAction172___init(); /*new ReduceAction172*/
1526 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable173) /*AbstractArray::add*/;
1527 variable174 = NEW_ReduceAction173_parser___ReduceAction173___init(); /*new ReduceAction173*/
1528 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable174) /*AbstractArray::add*/;
1529 variable175 = NEW_ReduceAction174_parser___ReduceAction174___init(); /*new ReduceAction174*/
1530 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable175) /*AbstractArray::add*/;
1531 variable176 = NEW_ReduceAction175_parser___ReduceAction175___init(); /*new ReduceAction175*/
1532 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable176) /*AbstractArray::add*/;
1533 variable177 = NEW_ReduceAction176_parser___ReduceAction176___init(); /*new ReduceAction176*/
1534 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable177) /*AbstractArray::add*/;
1535 variable178 = NEW_ReduceAction177_parser___ReduceAction177___init(); /*new ReduceAction177*/
1536 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable178) /*AbstractArray::add*/;
1537 variable179 = NEW_ReduceAction178_parser___ReduceAction178___init(); /*new ReduceAction178*/
1538 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable179) /*AbstractArray::add*/;
1539 variable180 = NEW_ReduceAction179_parser___ReduceAction179___init(); /*new ReduceAction179*/
1540 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable180) /*AbstractArray::add*/;
1541 variable181 = NEW_ReduceAction180_parser___ReduceAction180___init(); /*new ReduceAction180*/
1542 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable181) /*AbstractArray::add*/;
1543 variable182 = NEW_ReduceAction181_parser___ReduceAction181___init(); /*new ReduceAction181*/
1544 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable182) /*AbstractArray::add*/;
1545 variable183 = NEW_ReduceAction182_parser___ReduceAction182___init(); /*new ReduceAction182*/
1546 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable183) /*AbstractArray::add*/;
1547 variable184 = NEW_ReduceAction183_parser___ReduceAction183___init(); /*new ReduceAction183*/
1548 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable184) /*AbstractArray::add*/;
1549 variable185 = NEW_ReduceAction184_parser___ReduceAction184___init(); /*new ReduceAction184*/
1550 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable185) /*AbstractArray::add*/;
1551 variable186 = NEW_ReduceAction185_parser___ReduceAction185___init(); /*new ReduceAction185*/
1552 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable186) /*AbstractArray::add*/;
1553 variable187 = NEW_ReduceAction186_parser___ReduceAction186___init(); /*new ReduceAction186*/
1554 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable187) /*AbstractArray::add*/;
1555 variable188 = NEW_ReduceAction187_parser___ReduceAction187___init(); /*new ReduceAction187*/
1556 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable188) /*AbstractArray::add*/;
1557 variable189 = NEW_ReduceAction188_parser___ReduceAction188___init(); /*new ReduceAction188*/
1558 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable189) /*AbstractArray::add*/;
1559 variable190 = NEW_ReduceAction189_parser___ReduceAction189___init(); /*new ReduceAction189*/
1560 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable190) /*AbstractArray::add*/;
1561 variable191 = NEW_ReduceAction190_parser___ReduceAction190___init(); /*new ReduceAction190*/
1562 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable191) /*AbstractArray::add*/;
1563 variable192 = NEW_ReduceAction191_parser___ReduceAction191___init(); /*new ReduceAction191*/
1564 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable192) /*AbstractArray::add*/;
1565 variable193 = NEW_ReduceAction192_parser___ReduceAction192___init(); /*new ReduceAction192*/
1566 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable193) /*AbstractArray::add*/;
1567 variable194 = NEW_ReduceAction193_parser___ReduceAction193___init(); /*new ReduceAction193*/
1568 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable194) /*AbstractArray::add*/;
1569 variable195 = NEW_ReduceAction194_parser___ReduceAction194___init(); /*new ReduceAction194*/
1570 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable195) /*AbstractArray::add*/;
1571 variable196 = NEW_ReduceAction195_parser___ReduceAction195___init(); /*new ReduceAction195*/
1572 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable196) /*AbstractArray::add*/;
1573 variable197 = NEW_ReduceAction196_parser___ReduceAction196___init(); /*new ReduceAction196*/
1574 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable197) /*AbstractArray::add*/;
1575 variable198 = NEW_ReduceAction197_parser___ReduceAction197___init(); /*new ReduceAction197*/
1576 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable198) /*AbstractArray::add*/;
1577 variable199 = NEW_ReduceAction198_parser___ReduceAction198___init(); /*new ReduceAction198*/
1578 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable199) /*AbstractArray::add*/;
1579 variable200 = NEW_ReduceAction199_parser___ReduceAction199___init(); /*new ReduceAction199*/
1580 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable200) /*AbstractArray::add*/;
1581 variable201 = NEW_ReduceAction200_parser___ReduceAction200___init(); /*new ReduceAction200*/
1582 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable201) /*AbstractArray::add*/;
1583 variable202 = NEW_ReduceAction201_parser___ReduceAction201___init(); /*new ReduceAction201*/
1584 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable202) /*AbstractArray::add*/;
1585 variable203 = NEW_ReduceAction202_parser___ReduceAction202___init(); /*new ReduceAction202*/
1586 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable203) /*AbstractArray::add*/;
1587 variable204 = NEW_ReduceAction203_parser___ReduceAction203___init(); /*new ReduceAction203*/
1588 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable204) /*AbstractArray::add*/;
1589 variable205 = NEW_ReduceAction204_parser___ReduceAction204___init(); /*new ReduceAction204*/
1590 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable205) /*AbstractArray::add*/;
1591 variable206 = NEW_ReduceAction205_parser___ReduceAction205___init(); /*new ReduceAction205*/
1592 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable206) /*AbstractArray::add*/;
1593 variable207 = NEW_ReduceAction206_parser___ReduceAction206___init(); /*new ReduceAction206*/
1594 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable207) /*AbstractArray::add*/;
1595 variable208 = NEW_ReduceAction207_parser___ReduceAction207___init(); /*new ReduceAction207*/
1596 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable208) /*AbstractArray::add*/;
1597 variable209 = NEW_ReduceAction208_parser___ReduceAction208___init(); /*new ReduceAction208*/
1598 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable209) /*AbstractArray::add*/;
1599 variable210 = NEW_ReduceAction209_parser___ReduceAction209___init(); /*new ReduceAction209*/
1600 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable210) /*AbstractArray::add*/;
1601 variable211 = NEW_ReduceAction210_parser___ReduceAction210___init(); /*new ReduceAction210*/
1602 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable211) /*AbstractArray::add*/;
1603 variable212 = NEW_ReduceAction211_parser___ReduceAction211___init(); /*new ReduceAction211*/
1604 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable212) /*AbstractArray::add*/;
1605 variable213 = NEW_ReduceAction212_parser___ReduceAction212___init(); /*new ReduceAction212*/
1606 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable213) /*AbstractArray::add*/;
1607 variable214 = NEW_ReduceAction213_parser___ReduceAction213___init(); /*new ReduceAction213*/
1608 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable214) /*AbstractArray::add*/;
1609 variable215 = NEW_ReduceAction214_parser___ReduceAction214___init(); /*new ReduceAction214*/
1610 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable215) /*AbstractArray::add*/;
1611 variable216 = NEW_ReduceAction215_parser___ReduceAction215___init(); /*new ReduceAction215*/
1612 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable216) /*AbstractArray::add*/;
1613 variable217 = NEW_ReduceAction216_parser___ReduceAction216___init(); /*new ReduceAction216*/
1614 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable217) /*AbstractArray::add*/;
1615 variable218 = NEW_ReduceAction217_parser___ReduceAction217___init(); /*new ReduceAction217*/
1616 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable218) /*AbstractArray::add*/;
1617 variable219 = NEW_ReduceAction218_parser___ReduceAction218___init(); /*new ReduceAction218*/
1618 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable219) /*AbstractArray::add*/;
1619 variable220 = NEW_ReduceAction219_parser___ReduceAction219___init(); /*new ReduceAction219*/
1620 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable220) /*AbstractArray::add*/;
1621 variable221 = NEW_ReduceAction220_parser___ReduceAction220___init(); /*new ReduceAction220*/
1622 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable221) /*AbstractArray::add*/;
1623 variable222 = NEW_ReduceAction221_parser___ReduceAction221___init(); /*new ReduceAction221*/
1624 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable222) /*AbstractArray::add*/;
1625 variable223 = NEW_ReduceAction222_parser___ReduceAction222___init(); /*new ReduceAction222*/
1626 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable223) /*AbstractArray::add*/;
1627 variable224 = NEW_ReduceAction223_parser___ReduceAction223___init(); /*new ReduceAction223*/
1628 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable224) /*AbstractArray::add*/;
1629 variable225 = NEW_ReduceAction224_parser___ReduceAction224___init(); /*new ReduceAction224*/
1630 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable225) /*AbstractArray::add*/;
1631 variable226 = NEW_ReduceAction225_parser___ReduceAction225___init(); /*new ReduceAction225*/
1632 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable226) /*AbstractArray::add*/;
1633 variable227 = NEW_ReduceAction226_parser___ReduceAction226___init(); /*new ReduceAction226*/
1634 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable227) /*AbstractArray::add*/;
1635 variable228 = NEW_ReduceAction227_parser___ReduceAction227___init(); /*new ReduceAction227*/
1636 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable228) /*AbstractArray::add*/;
1637 variable229 = NEW_ReduceAction228_parser___ReduceAction228___init(); /*new ReduceAction228*/
1638 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable229) /*AbstractArray::add*/;
1639 variable230 = NEW_ReduceAction229_parser___ReduceAction229___init(); /*new ReduceAction229*/
1640 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable230) /*AbstractArray::add*/;
1641 variable231 = NEW_ReduceAction230_parser___ReduceAction230___init(); /*new ReduceAction230*/
1642 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable231) /*AbstractArray::add*/;
1643 variable232 = NEW_ReduceAction231_parser___ReduceAction231___init(); /*new ReduceAction231*/
1644 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable232) /*AbstractArray::add*/;
1645 variable233 = NEW_ReduceAction232_parser___ReduceAction232___init(); /*new ReduceAction232*/
1646 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable233) /*AbstractArray::add*/;
1647 variable234 = NEW_ReduceAction233_parser___ReduceAction233___init(); /*new ReduceAction233*/
1648 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable234) /*AbstractArray::add*/;
1649 variable235 = NEW_ReduceAction234_parser___ReduceAction234___init(); /*new ReduceAction234*/
1650 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable235) /*AbstractArray::add*/;
1651 variable236 = NEW_ReduceAction235_parser___ReduceAction235___init(); /*new ReduceAction235*/
1652 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable236) /*AbstractArray::add*/;
1653 variable237 = NEW_ReduceAction236_parser___ReduceAction236___init(); /*new ReduceAction236*/
1654 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable237) /*AbstractArray::add*/;
1655 variable238 = NEW_ReduceAction237_parser___ReduceAction237___init(); /*new ReduceAction237*/
1656 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable238) /*AbstractArray::add*/;
1657 variable239 = NEW_ReduceAction238_parser___ReduceAction238___init(); /*new ReduceAction238*/
1658 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable239) /*AbstractArray::add*/;
1659 variable240 = NEW_ReduceAction239_parser___ReduceAction239___init(); /*new ReduceAction239*/
1660 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable240) /*AbstractArray::add*/;
1661 variable241 = NEW_ReduceAction240_parser___ReduceAction240___init(); /*new ReduceAction240*/
1662 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable241) /*AbstractArray::add*/;
1663 variable242 = NEW_ReduceAction241_parser___ReduceAction241___init(); /*new ReduceAction241*/
1664 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable242) /*AbstractArray::add*/;
1665 variable243 = NEW_ReduceAction242_parser___ReduceAction242___init(); /*new ReduceAction242*/
1666 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable243) /*AbstractArray::add*/;
1667 variable244 = NEW_ReduceAction243_parser___ReduceAction243___init(); /*new ReduceAction243*/
1668 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable244) /*AbstractArray::add*/;
1669 variable245 = NEW_ReduceAction244_parser___ReduceAction244___init(); /*new ReduceAction244*/
1670 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable245) /*AbstractArray::add*/;
1671 variable246 = NEW_ReduceAction245_parser___ReduceAction245___init(); /*new ReduceAction245*/
1672 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable246) /*AbstractArray::add*/;
1673 variable247 = NEW_ReduceAction246_parser___ReduceAction246___init(); /*new ReduceAction246*/
1674 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable247) /*AbstractArray::add*/;
1675 variable248 = NEW_ReduceAction247_parser___ReduceAction247___init(); /*new ReduceAction247*/
1676 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable248) /*AbstractArray::add*/;
1677 variable249 = NEW_ReduceAction248_parser___ReduceAction248___init(); /*new ReduceAction248*/
1678 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable249) /*AbstractArray::add*/;
1679 variable250 = NEW_ReduceAction249_parser___ReduceAction249___init(); /*new ReduceAction249*/
1680 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable250) /*AbstractArray::add*/;
1681 variable251 = NEW_ReduceAction250_parser___ReduceAction250___init(); /*new ReduceAction250*/
1682 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable251) /*AbstractArray::add*/;
1683 variable252 = NEW_ReduceAction251_parser___ReduceAction251___init(); /*new ReduceAction251*/
1684 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable252) /*AbstractArray::add*/;
1685 variable253 = NEW_ReduceAction252_parser___ReduceAction252___init(); /*new ReduceAction252*/
1686 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable253) /*AbstractArray::add*/;
1687 variable254 = NEW_ReduceAction253_parser___ReduceAction253___init(); /*new ReduceAction253*/
1688 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable254) /*AbstractArray::add*/;
1689 variable255 = NEW_ReduceAction254_parser___ReduceAction254___init(); /*new ReduceAction254*/
1690 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable255) /*AbstractArray::add*/;
1691 variable256 = NEW_ReduceAction255_parser___ReduceAction255___init(); /*new ReduceAction255*/
1692 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable256) /*AbstractArray::add*/;
1693 variable257 = NEW_ReduceAction256_parser___ReduceAction256___init(); /*new ReduceAction256*/
1694 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable257) /*AbstractArray::add*/;
1695 variable258 = NEW_ReduceAction257_parser___ReduceAction257___init(); /*new ReduceAction257*/
1696 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable258) /*AbstractArray::add*/;
1697 variable259 = NEW_ReduceAction258_parser___ReduceAction258___init(); /*new ReduceAction258*/
1698 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable259) /*AbstractArray::add*/;
1699 variable260 = NEW_ReduceAction259_parser___ReduceAction259___init(); /*new ReduceAction259*/
1700 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable260) /*AbstractArray::add*/;
1701 variable261 = NEW_ReduceAction260_parser___ReduceAction260___init(); /*new ReduceAction260*/
1702 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable261) /*AbstractArray::add*/;
1703 variable262 = NEW_ReduceAction261_parser___ReduceAction261___init(); /*new ReduceAction261*/
1704 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable262) /*AbstractArray::add*/;
1705 variable263 = NEW_ReduceAction262_parser___ReduceAction262___init(); /*new ReduceAction262*/
1706 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable263) /*AbstractArray::add*/;
1707 variable264 = NEW_ReduceAction263_parser___ReduceAction263___init(); /*new ReduceAction263*/
1708 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable264) /*AbstractArray::add*/;
1709 variable265 = NEW_ReduceAction264_parser___ReduceAction264___init(); /*new ReduceAction264*/
1710 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable265) /*AbstractArray::add*/;
1711 variable266 = NEW_ReduceAction265_parser___ReduceAction265___init(); /*new ReduceAction265*/
1712 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable266) /*AbstractArray::add*/;
1713 variable267 = NEW_ReduceAction266_parser___ReduceAction266___init(); /*new ReduceAction266*/
1714 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable267) /*AbstractArray::add*/;
1715 variable268 = NEW_ReduceAction267_parser___ReduceAction267___init(); /*new ReduceAction267*/
1716 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable268) /*AbstractArray::add*/;
1717 variable269 = NEW_ReduceAction268_parser___ReduceAction268___init(); /*new ReduceAction268*/
1718 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable269) /*AbstractArray::add*/;
1719 variable270 = NEW_ReduceAction269_parser___ReduceAction269___init(); /*new ReduceAction269*/
1720 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable270) /*AbstractArray::add*/;
1721 variable271 = NEW_ReduceAction270_parser___ReduceAction270___init(); /*new ReduceAction270*/
1722 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable271) /*AbstractArray::add*/;
1723 variable272 = NEW_ReduceAction271_parser___ReduceAction271___init(); /*new ReduceAction271*/
1724 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable272) /*AbstractArray::add*/;
1725 variable273 = NEW_ReduceAction272_parser___ReduceAction272___init(); /*new ReduceAction272*/
1726 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable273) /*AbstractArray::add*/;
1727 variable274 = NEW_ReduceAction273_parser___ReduceAction273___init(); /*new ReduceAction273*/
1728 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable274) /*AbstractArray::add*/;
1729 variable275 = NEW_ReduceAction274_parser___ReduceAction274___init(); /*new ReduceAction274*/
1730 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable275) /*AbstractArray::add*/;
1731 variable276 = NEW_ReduceAction275_parser___ReduceAction275___init(); /*new ReduceAction275*/
1732 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable276) /*AbstractArray::add*/;
1733 variable277 = NEW_ReduceAction276_parser___ReduceAction276___init(); /*new ReduceAction276*/
1734 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable277) /*AbstractArray::add*/;
1735 variable278 = NEW_ReduceAction277_parser___ReduceAction277___init(); /*new ReduceAction277*/
1736 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable278) /*AbstractArray::add*/;
1737 variable279 = NEW_ReduceAction278_parser___ReduceAction278___init(); /*new ReduceAction278*/
1738 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable279) /*AbstractArray::add*/;
1739 variable280 = NEW_ReduceAction279_parser___ReduceAction279___init(); /*new ReduceAction279*/
1740 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable280) /*AbstractArray::add*/;
1741 variable281 = NEW_ReduceAction280_parser___ReduceAction280___init(); /*new ReduceAction280*/
1742 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable281) /*AbstractArray::add*/;
1743 variable282 = NEW_ReduceAction281_parser___ReduceAction281___init(); /*new ReduceAction281*/
1744 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable282) /*AbstractArray::add*/;
1745 variable283 = NEW_ReduceAction282_parser___ReduceAction282___init(); /*new ReduceAction282*/
1746 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable283) /*AbstractArray::add*/;
1747 variable284 = NEW_ReduceAction283_parser___ReduceAction283___init(); /*new ReduceAction283*/
1748 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable284) /*AbstractArray::add*/;
1749 variable285 = NEW_ReduceAction284_parser___ReduceAction284___init(); /*new ReduceAction284*/
1750 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable285) /*AbstractArray::add*/;
1751 variable286 = NEW_ReduceAction285_parser___ReduceAction285___init(); /*new ReduceAction285*/
1752 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable286) /*AbstractArray::add*/;
1753 variable287 = NEW_ReduceAction286_parser___ReduceAction286___init(); /*new ReduceAction286*/
1754 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable287) /*AbstractArray::add*/;
1755 variable288 = NEW_ReduceAction287_parser___ReduceAction287___init(); /*new ReduceAction287*/
1756 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable288) /*AbstractArray::add*/;
1757 variable289 = NEW_ReduceAction288_parser___ReduceAction288___init(); /*new ReduceAction288*/
1758 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable289) /*AbstractArray::add*/;
1759 variable290 = NEW_ReduceAction289_parser___ReduceAction289___init(); /*new ReduceAction289*/
1760 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable290) /*AbstractArray::add*/;
1761 variable291 = NEW_ReduceAction290_parser___ReduceAction290___init(); /*new ReduceAction290*/
1762 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable291) /*AbstractArray::add*/;
1763 variable292 = NEW_ReduceAction291_parser___ReduceAction291___init(); /*new ReduceAction291*/
1764 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable292) /*AbstractArray::add*/;
1765 variable293 = NEW_ReduceAction292_parser___ReduceAction292___init(); /*new ReduceAction292*/
1766 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable293) /*AbstractArray::add*/;
1767 variable294 = NEW_ReduceAction293_parser___ReduceAction293___init(); /*new ReduceAction293*/
1768 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable294) /*AbstractArray::add*/;
1769 variable295 = NEW_ReduceAction294_parser___ReduceAction294___init(); /*new ReduceAction294*/
1770 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable295) /*AbstractArray::add*/;
1771 variable296 = NEW_ReduceAction295_parser___ReduceAction295___init(); /*new ReduceAction295*/
1772 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable296) /*AbstractArray::add*/;
1773 variable297 = NEW_ReduceAction296_parser___ReduceAction296___init(); /*new ReduceAction296*/
1774 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable297) /*AbstractArray::add*/;
1775 variable298 = NEW_ReduceAction297_parser___ReduceAction297___init(); /*new ReduceAction297*/
1776 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable298) /*AbstractArray::add*/;
1777 variable299 = NEW_ReduceAction298_parser___ReduceAction298___init(); /*new ReduceAction298*/
1778 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable299) /*AbstractArray::add*/;
1779 variable300 = NEW_ReduceAction299_parser___ReduceAction299___init(); /*new ReduceAction299*/
1780 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable300) /*AbstractArray::add*/;
1781 variable301 = NEW_ReduceAction300_parser___ReduceAction300___init(); /*new ReduceAction300*/
1782 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable301) /*AbstractArray::add*/;
1783 variable302 = NEW_ReduceAction301_parser___ReduceAction301___init(); /*new ReduceAction301*/
1784 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable302) /*AbstractArray::add*/;
1785 variable303 = NEW_ReduceAction302_parser___ReduceAction302___init(); /*new ReduceAction302*/
1786 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable303) /*AbstractArray::add*/;
1787 variable304 = NEW_ReduceAction303_parser___ReduceAction303___init(); /*new ReduceAction303*/
1788 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable304) /*AbstractArray::add*/;
1789 variable305 = NEW_ReduceAction304_parser___ReduceAction304___init(); /*new ReduceAction304*/
1790 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable305) /*AbstractArray::add*/;
1791 variable306 = NEW_ReduceAction305_parser___ReduceAction305___init(); /*new ReduceAction305*/
1792 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable306) /*AbstractArray::add*/;
1793 variable307 = NEW_ReduceAction306_parser___ReduceAction306___init(); /*new ReduceAction306*/
1794 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable307) /*AbstractArray::add*/;
1795 variable308 = NEW_ReduceAction307_parser___ReduceAction307___init(); /*new ReduceAction307*/
1796 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable308) /*AbstractArray::add*/;
1797 variable309 = NEW_ReduceAction308_parser___ReduceAction308___init(); /*new ReduceAction308*/
1798 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable309) /*AbstractArray::add*/;
1799 variable310 = NEW_ReduceAction309_parser___ReduceAction309___init(); /*new ReduceAction309*/
1800 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable310) /*AbstractArray::add*/;
1801 variable311 = NEW_ReduceAction310_parser___ReduceAction310___init(); /*new ReduceAction310*/
1802 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable311) /*AbstractArray::add*/;
1803 variable312 = NEW_ReduceAction311_parser___ReduceAction311___init(); /*new ReduceAction311*/
1804 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable312) /*AbstractArray::add*/;
1805 variable313 = NEW_ReduceAction312_parser___ReduceAction312___init(); /*new ReduceAction312*/
1806 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable313) /*AbstractArray::add*/;
1807 variable314 = NEW_ReduceAction313_parser___ReduceAction313___init(); /*new ReduceAction313*/
1808 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable314) /*AbstractArray::add*/;
1809 variable315 = NEW_ReduceAction314_parser___ReduceAction314___init(); /*new ReduceAction314*/
1810 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable315) /*AbstractArray::add*/;
1811 variable316 = NEW_ReduceAction315_parser___ReduceAction315___init(); /*new ReduceAction315*/
1812 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable316) /*AbstractArray::add*/;
1813 variable317 = NEW_ReduceAction316_parser___ReduceAction316___init(); /*new ReduceAction316*/
1814 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable317) /*AbstractArray::add*/;
1815 variable318 = NEW_ReduceAction317_parser___ReduceAction317___init(); /*new ReduceAction317*/
1816 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable318) /*AbstractArray::add*/;
1817 variable319 = NEW_ReduceAction318_parser___ReduceAction318___init(); /*new ReduceAction318*/
1818 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable319) /*AbstractArray::add*/;
1819 variable320 = NEW_ReduceAction319_parser___ReduceAction319___init(); /*new ReduceAction319*/
1820 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable320) /*AbstractArray::add*/;
1821 variable321 = NEW_ReduceAction320_parser___ReduceAction320___init(); /*new ReduceAction320*/
1822 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable321) /*AbstractArray::add*/;
1823 variable322 = NEW_ReduceAction321_parser___ReduceAction321___init(); /*new ReduceAction321*/
1824 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable322) /*AbstractArray::add*/;
1825 variable323 = NEW_ReduceAction322_parser___ReduceAction322___init(); /*new ReduceAction322*/
1826 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable323) /*AbstractArray::add*/;
1827 variable324 = NEW_ReduceAction323_parser___ReduceAction323___init(); /*new ReduceAction323*/
1828 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable324) /*AbstractArray::add*/;
1829 variable325 = NEW_ReduceAction324_parser___ReduceAction324___init(); /*new ReduceAction324*/
1830 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable325) /*AbstractArray::add*/;
1831 variable326 = NEW_ReduceAction325_parser___ReduceAction325___init(); /*new ReduceAction325*/
1832 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable326) /*AbstractArray::add*/;
1833 variable327 = NEW_ReduceAction326_parser___ReduceAction326___init(); /*new ReduceAction326*/
1834 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable327) /*AbstractArray::add*/;
1835 variable328 = NEW_ReduceAction327_parser___ReduceAction327___init(); /*new ReduceAction327*/
1836 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable328) /*AbstractArray::add*/;
1837 variable329 = NEW_ReduceAction328_parser___ReduceAction328___init(); /*new ReduceAction328*/
1838 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable329) /*AbstractArray::add*/;
1839 variable330 = NEW_ReduceAction329_parser___ReduceAction329___init(); /*new ReduceAction329*/
1840 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable330) /*AbstractArray::add*/;
1841 variable331 = NEW_ReduceAction330_parser___ReduceAction330___init(); /*new ReduceAction330*/
1842 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable331) /*AbstractArray::add*/;
1843 variable332 = NEW_ReduceAction331_parser___ReduceAction331___init(); /*new ReduceAction331*/
1844 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable332) /*AbstractArray::add*/;
1845 variable333 = NEW_ReduceAction332_parser___ReduceAction332___init(); /*new ReduceAction332*/
1846 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable333) /*AbstractArray::add*/;
1847 variable334 = NEW_ReduceAction333_parser___ReduceAction333___init(); /*new ReduceAction333*/
1848 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable334) /*AbstractArray::add*/;
1849 variable335 = NEW_ReduceAction334_parser___ReduceAction334___init(); /*new ReduceAction334*/
1850 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable335) /*AbstractArray::add*/;
1851 variable336 = NEW_ReduceAction335_parser___ReduceAction335___init(); /*new ReduceAction335*/
1852 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable336) /*AbstractArray::add*/;
1853 variable337 = NEW_ReduceAction336_parser___ReduceAction336___init(); /*new ReduceAction336*/
1854 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable337) /*AbstractArray::add*/;
1855 variable338 = NEW_ReduceAction337_parser___ReduceAction337___init(); /*new ReduceAction337*/
1856 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable338) /*AbstractArray::add*/;
1857 variable339 = NEW_ReduceAction338_parser___ReduceAction338___init(); /*new ReduceAction338*/
1858 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable339) /*AbstractArray::add*/;
1859 variable340 = NEW_ReduceAction339_parser___ReduceAction339___init(); /*new ReduceAction339*/
1860 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable340) /*AbstractArray::add*/;
1861 variable341 = NEW_ReduceAction340_parser___ReduceAction340___init(); /*new ReduceAction340*/
1862 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable341) /*AbstractArray::add*/;
1863 variable342 = NEW_ReduceAction341_parser___ReduceAction341___init(); /*new ReduceAction341*/
1864 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable342) /*AbstractArray::add*/;
1865 variable343 = NEW_ReduceAction342_parser___ReduceAction342___init(); /*new ReduceAction342*/
1866 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable343) /*AbstractArray::add*/;
1867 variable344 = NEW_ReduceAction343_parser___ReduceAction343___init(); /*new ReduceAction343*/
1868 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable344) /*AbstractArray::add*/;
1869 variable345 = NEW_ReduceAction344_parser___ReduceAction344___init(); /*new ReduceAction344*/
1870 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable345) /*AbstractArray::add*/;
1871 variable346 = NEW_ReduceAction345_parser___ReduceAction345___init(); /*new ReduceAction345*/
1872 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable346) /*AbstractArray::add*/;
1873 variable347 = NEW_ReduceAction346_parser___ReduceAction346___init(); /*new ReduceAction346*/
1874 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable347) /*AbstractArray::add*/;
1875 variable348 = NEW_ReduceAction347_parser___ReduceAction347___init(); /*new ReduceAction347*/
1876 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable348) /*AbstractArray::add*/;
1877 variable349 = NEW_ReduceAction348_parser___ReduceAction348___init(); /*new ReduceAction348*/
1878 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable349) /*AbstractArray::add*/;
1879 variable350 = NEW_ReduceAction349_parser___ReduceAction349___init(); /*new ReduceAction349*/
1880 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable350) /*AbstractArray::add*/;
1881 variable351 = NEW_ReduceAction350_parser___ReduceAction350___init(); /*new ReduceAction350*/
1882 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable351) /*AbstractArray::add*/;
1883 variable352 = NEW_ReduceAction351_parser___ReduceAction351___init(); /*new ReduceAction351*/
1884 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable352) /*AbstractArray::add*/;
1885 variable353 = NEW_ReduceAction352_parser___ReduceAction352___init(); /*new ReduceAction352*/
1886 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable353) /*AbstractArray::add*/;
1887 variable354 = NEW_ReduceAction353_parser___ReduceAction353___init(); /*new ReduceAction353*/
1888 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable354) /*AbstractArray::add*/;
1889 variable355 = NEW_ReduceAction354_parser___ReduceAction354___init(); /*new ReduceAction354*/
1890 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable355) /*AbstractArray::add*/;
1891 variable356 = NEW_ReduceAction355_parser___ReduceAction355___init(); /*new ReduceAction355*/
1892 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable356) /*AbstractArray::add*/;
1893 variable357 = NEW_ReduceAction356_parser___ReduceAction356___init(); /*new ReduceAction356*/
1894 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable357) /*AbstractArray::add*/;
1895 variable358 = NEW_ReduceAction357_parser___ReduceAction357___init(); /*new ReduceAction357*/
1896 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable358) /*AbstractArray::add*/;
1897 variable359 = NEW_ReduceAction358_parser___ReduceAction358___init(); /*new ReduceAction358*/
1898 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable359) /*AbstractArray::add*/;
1899 variable360 = NEW_ReduceAction359_parser___ReduceAction359___init(); /*new ReduceAction359*/
1900 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable360) /*AbstractArray::add*/;
1901 variable361 = NEW_ReduceAction360_parser___ReduceAction360___init(); /*new ReduceAction360*/
1902 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable361) /*AbstractArray::add*/;
1903 variable362 = NEW_ReduceAction361_parser___ReduceAction361___init(); /*new ReduceAction361*/
1904 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable362) /*AbstractArray::add*/;
1905 variable363 = NEW_ReduceAction362_parser___ReduceAction362___init(); /*new ReduceAction362*/
1906 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable363) /*AbstractArray::add*/;
1907 variable364 = NEW_ReduceAction363_parser___ReduceAction363___init(); /*new ReduceAction363*/
1908 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable364) /*AbstractArray::add*/;
1909 variable365 = NEW_ReduceAction364_parser___ReduceAction364___init(); /*new ReduceAction364*/
1910 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable365) /*AbstractArray::add*/;
1911 variable366 = NEW_ReduceAction365_parser___ReduceAction365___init(); /*new ReduceAction365*/
1912 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable366) /*AbstractArray::add*/;
1913 variable367 = NEW_ReduceAction366_parser___ReduceAction366___init(); /*new ReduceAction366*/
1914 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable367) /*AbstractArray::add*/;
1915 variable368 = NEW_ReduceAction367_parser___ReduceAction367___init(); /*new ReduceAction367*/
1916 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable368) /*AbstractArray::add*/;
1917 variable369 = NEW_ReduceAction368_parser___ReduceAction368___init(); /*new ReduceAction368*/
1918 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable369) /*AbstractArray::add*/;
1919 variable370 = NEW_ReduceAction369_parser___ReduceAction369___init(); /*new ReduceAction369*/
1920 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable370) /*AbstractArray::add*/;
1921 variable371 = NEW_ReduceAction370_parser___ReduceAction370___init(); /*new ReduceAction370*/
1922 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable371) /*AbstractArray::add*/;
1923 variable372 = NEW_ReduceAction371_parser___ReduceAction371___init(); /*new ReduceAction371*/
1924 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable372) /*AbstractArray::add*/;
1925 variable373 = NEW_ReduceAction372_parser___ReduceAction372___init(); /*new ReduceAction372*/
1926 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable373) /*AbstractArray::add*/;
1927 variable374 = NEW_ReduceAction373_parser___ReduceAction373___init(); /*new ReduceAction373*/
1928 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable374) /*AbstractArray::add*/;
1929 variable375 = NEW_ReduceAction374_parser___ReduceAction374___init(); /*new ReduceAction374*/
1930 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable375) /*AbstractArray::add*/;
1931 variable376 = NEW_ReduceAction375_parser___ReduceAction375___init(); /*new ReduceAction375*/
1932 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable376) /*AbstractArray::add*/;
1933 variable377 = NEW_ReduceAction376_parser___ReduceAction376___init(); /*new ReduceAction376*/
1934 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable377) /*AbstractArray::add*/;
1935 variable378 = NEW_ReduceAction377_parser___ReduceAction377___init(); /*new ReduceAction377*/
1936 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable378) /*AbstractArray::add*/;
1937 variable379 = NEW_ReduceAction378_parser___ReduceAction378___init(); /*new ReduceAction378*/
1938 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable379) /*AbstractArray::add*/;
1939 variable380 = NEW_ReduceAction379_parser___ReduceAction379___init(); /*new ReduceAction379*/
1940 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable380) /*AbstractArray::add*/;
1941 variable381 = NEW_ReduceAction380_parser___ReduceAction380___init(); /*new ReduceAction380*/
1942 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable381) /*AbstractArray::add*/;
1943 variable382 = NEW_ReduceAction381_parser___ReduceAction381___init(); /*new ReduceAction381*/
1944 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable382) /*AbstractArray::add*/;
1945 variable383 = NEW_ReduceAction382_parser___ReduceAction382___init(); /*new ReduceAction382*/
1946 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable383) /*AbstractArray::add*/;
1947 variable384 = NEW_ReduceAction383_parser___ReduceAction383___init(); /*new ReduceAction383*/
1948 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable384) /*AbstractArray::add*/;
1949 variable385 = NEW_ReduceAction384_parser___ReduceAction384___init(); /*new ReduceAction384*/
1950 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable385) /*AbstractArray::add*/;
1951 variable386 = NEW_ReduceAction385_parser___ReduceAction385___init(); /*new ReduceAction385*/
1952 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable386) /*AbstractArray::add*/;
1953 variable387 = NEW_ReduceAction386_parser___ReduceAction386___init(); /*new ReduceAction386*/
1954 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable387) /*AbstractArray::add*/;
1955 variable388 = NEW_ReduceAction387_parser___ReduceAction387___init(); /*new ReduceAction387*/
1956 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable388) /*AbstractArray::add*/;
1957 variable389 = NEW_ReduceAction388_parser___ReduceAction388___init(); /*new ReduceAction388*/
1958 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable389) /*AbstractArray::add*/;
1959 variable390 = NEW_ReduceAction389_parser___ReduceAction389___init(); /*new ReduceAction389*/
1960 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable390) /*AbstractArray::add*/;
1961 variable391 = NEW_ReduceAction390_parser___ReduceAction390___init(); /*new ReduceAction390*/
1962 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable391) /*AbstractArray::add*/;
1963 variable392 = NEW_ReduceAction391_parser___ReduceAction391___init(); /*new ReduceAction391*/
1964 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable392) /*AbstractArray::add*/;
1965 variable393 = NEW_ReduceAction392_parser___ReduceAction392___init(); /*new ReduceAction392*/
1966 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable393) /*AbstractArray::add*/;
1967 variable394 = NEW_ReduceAction393_parser___ReduceAction393___init(); /*new ReduceAction393*/
1968 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable394) /*AbstractArray::add*/;
1969 variable395 = NEW_ReduceAction394_parser___ReduceAction394___init(); /*new ReduceAction394*/
1970 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable395) /*AbstractArray::add*/;
1971 variable396 = NEW_ReduceAction395_parser___ReduceAction395___init(); /*new ReduceAction395*/
1972 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable396) /*AbstractArray::add*/;
1973 variable397 = NEW_ReduceAction396_parser___ReduceAction396___init(); /*new ReduceAction396*/
1974 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable397) /*AbstractArray::add*/;
1975 variable398 = NEW_ReduceAction397_parser___ReduceAction397___init(); /*new ReduceAction397*/
1976 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable398) /*AbstractArray::add*/;
1977 variable399 = NEW_ReduceAction398_parser___ReduceAction398___init(); /*new ReduceAction398*/
1978 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable399) /*AbstractArray::add*/;
1979 variable400 = NEW_ReduceAction399_parser___ReduceAction399___init(); /*new ReduceAction399*/
1980 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable400) /*AbstractArray::add*/;
1981 variable401 = NEW_ReduceAction400_parser___ReduceAction400___init(); /*new ReduceAction400*/
1982 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable401) /*AbstractArray::add*/;
1983 variable402 = NEW_ReduceAction401_parser___ReduceAction401___init(); /*new ReduceAction401*/
1984 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable402) /*AbstractArray::add*/;
1985 variable403 = NEW_ReduceAction402_parser___ReduceAction402___init(); /*new ReduceAction402*/
1986 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable403) /*AbstractArray::add*/;
1987 variable404 = NEW_ReduceAction403_parser___ReduceAction403___init(); /*new ReduceAction403*/
1988 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable404) /*AbstractArray::add*/;
1989 variable405 = NEW_ReduceAction404_parser___ReduceAction404___init(); /*new ReduceAction404*/
1990 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable405) /*AbstractArray::add*/;
1991 variable406 = NEW_ReduceAction405_parser___ReduceAction405___init(); /*new ReduceAction405*/
1992 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable406) /*AbstractArray::add*/;
1993 variable407 = NEW_ReduceAction406_parser___ReduceAction406___init(); /*new ReduceAction406*/
1994 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable407) /*AbstractArray::add*/;
1995 variable408 = NEW_ReduceAction407_parser___ReduceAction407___init(); /*new ReduceAction407*/
1996 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable408) /*AbstractArray::add*/;
1997 variable409 = NEW_ReduceAction408_parser___ReduceAction408___init(); /*new ReduceAction408*/
1998 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable409) /*AbstractArray::add*/;
1999 variable410 = NEW_ReduceAction409_parser___ReduceAction409___init(); /*new ReduceAction409*/
2000 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable410) /*AbstractArray::add*/;
2001 variable411 = NEW_ReduceAction410_parser___ReduceAction410___init(); /*new ReduceAction410*/
2002 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable411) /*AbstractArray::add*/;
2003 variable412 = NEW_ReduceAction411_parser___ReduceAction411___init(); /*new ReduceAction411*/
2004 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable412) /*AbstractArray::add*/;
2005 variable413 = NEW_ReduceAction412_parser___ReduceAction412___init(); /*new ReduceAction412*/
2006 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable413) /*AbstractArray::add*/;
2007 variable414 = NEW_ReduceAction413_parser___ReduceAction413___init(); /*new ReduceAction413*/
2008 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable414) /*AbstractArray::add*/;
2009 variable415 = NEW_ReduceAction414_parser___ReduceAction414___init(); /*new ReduceAction414*/
2010 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable415) /*AbstractArray::add*/;
2011 variable416 = NEW_ReduceAction415_parser___ReduceAction415___init(); /*new ReduceAction415*/
2012 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable416) /*AbstractArray::add*/;
2013 variable417 = NEW_ReduceAction416_parser___ReduceAction416___init(); /*new ReduceAction416*/
2014 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable417) /*AbstractArray::add*/;
2015 variable418 = NEW_ReduceAction417_parser___ReduceAction417___init(); /*new ReduceAction417*/
2016 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable418) /*AbstractArray::add*/;
2017 variable419 = NEW_ReduceAction418_parser___ReduceAction418___init(); /*new ReduceAction418*/
2018 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable419) /*AbstractArray::add*/;
2019 variable420 = NEW_ReduceAction419_parser___ReduceAction419___init(); /*new ReduceAction419*/
2020 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable420) /*AbstractArray::add*/;
2021 variable421 = NEW_ReduceAction420_parser___ReduceAction420___init(); /*new ReduceAction420*/
2022 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable421) /*AbstractArray::add*/;
2023 variable422 = NEW_ReduceAction421_parser___ReduceAction421___init(); /*new ReduceAction421*/
2024 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable422) /*AbstractArray::add*/;
2025 variable423 = NEW_ReduceAction422_parser___ReduceAction422___init(); /*new ReduceAction422*/
2026 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable423) /*AbstractArray::add*/;
2027 variable424 = NEW_ReduceAction423_parser___ReduceAction423___init(); /*new ReduceAction423*/
2028 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable424) /*AbstractArray::add*/;
2029 variable425 = NEW_ReduceAction424_parser___ReduceAction424___init(); /*new ReduceAction424*/
2030 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable425) /*AbstractArray::add*/;
2031 variable426 = NEW_ReduceAction425_parser___ReduceAction425___init(); /*new ReduceAction425*/
2032 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable426) /*AbstractArray::add*/;
2033 variable427 = NEW_ReduceAction426_parser___ReduceAction426___init(); /*new ReduceAction426*/
2034 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable427) /*AbstractArray::add*/;
2035 variable428 = NEW_ReduceAction427_parser___ReduceAction427___init(); /*new ReduceAction427*/
2036 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable428) /*AbstractArray::add*/;
2037 variable429 = NEW_ReduceAction428_parser___ReduceAction428___init(); /*new ReduceAction428*/
2038 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable429) /*AbstractArray::add*/;
2039 variable430 = NEW_ReduceAction429_parser___ReduceAction429___init(); /*new ReduceAction429*/
2040 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable430) /*AbstractArray::add*/;
2041 variable431 = NEW_ReduceAction430_parser___ReduceAction430___init(); /*new ReduceAction430*/
2042 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable431) /*AbstractArray::add*/;
2043 variable432 = NEW_ReduceAction431_parser___ReduceAction431___init(); /*new ReduceAction431*/
2044 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable432) /*AbstractArray::add*/;
2045 variable433 = NEW_ReduceAction432_parser___ReduceAction432___init(); /*new ReduceAction432*/
2046 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable433) /*AbstractArray::add*/;
2047 variable434 = NEW_ReduceAction433_parser___ReduceAction433___init(); /*new ReduceAction433*/
2048 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable434) /*AbstractArray::add*/;
2049 variable435 = NEW_ReduceAction434_parser___ReduceAction434___init(); /*new ReduceAction434*/
2050 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable435) /*AbstractArray::add*/;
2051 variable436 = NEW_ReduceAction435_parser___ReduceAction435___init(); /*new ReduceAction435*/
2052 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable436) /*AbstractArray::add*/;
2053 variable437 = NEW_ReduceAction436_parser___ReduceAction436___init(); /*new ReduceAction436*/
2054 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable437) /*AbstractArray::add*/;
2055 variable438 = NEW_ReduceAction437_parser___ReduceAction437___init(); /*new ReduceAction437*/
2056 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable438) /*AbstractArray::add*/;
2057 variable439 = NEW_ReduceAction438_parser___ReduceAction438___init(); /*new ReduceAction438*/
2058 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable439) /*AbstractArray::add*/;
2059 variable440 = NEW_ReduceAction439_parser___ReduceAction439___init(); /*new ReduceAction439*/
2060 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable440) /*AbstractArray::add*/;
2061 variable441 = NEW_ReduceAction440_parser___ReduceAction440___init(); /*new ReduceAction440*/
2062 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable441) /*AbstractArray::add*/;
2063 variable442 = NEW_ReduceAction441_parser___ReduceAction441___init(); /*new ReduceAction441*/
2064 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable442) /*AbstractArray::add*/;
2065 variable443 = NEW_ReduceAction442_parser___ReduceAction442___init(); /*new ReduceAction442*/
2066 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable443) /*AbstractArray::add*/;
2067 variable444 = NEW_ReduceAction443_parser___ReduceAction443___init(); /*new ReduceAction443*/
2068 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable444) /*AbstractArray::add*/;
2069 variable445 = NEW_ReduceAction444_parser___ReduceAction444___init(); /*new ReduceAction444*/
2070 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable445) /*AbstractArray::add*/;
2071 variable446 = NEW_ReduceAction445_parser___ReduceAction445___init(); /*new ReduceAction445*/
2072 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable446) /*AbstractArray::add*/;
2073 variable447 = NEW_ReduceAction446_parser___ReduceAction446___init(); /*new ReduceAction446*/
2074 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable447) /*AbstractArray::add*/;
2075 variable448 = NEW_ReduceAction447_parser___ReduceAction447___init(); /*new ReduceAction447*/
2076 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable448) /*AbstractArray::add*/;
2077 variable449 = NEW_ReduceAction448_parser___ReduceAction448___init(); /*new ReduceAction448*/
2078 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable449) /*AbstractArray::add*/;
2079 variable450 = NEW_ReduceAction449_parser___ReduceAction449___init(); /*new ReduceAction449*/
2080 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable450) /*AbstractArray::add*/;
2081 variable451 = NEW_ReduceAction450_parser___ReduceAction450___init(); /*new ReduceAction450*/
2082 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable451) /*AbstractArray::add*/;
2083 variable452 = NEW_ReduceAction451_parser___ReduceAction451___init(); /*new ReduceAction451*/
2084 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable452) /*AbstractArray::add*/;
2085 variable453 = NEW_ReduceAction452_parser___ReduceAction452___init(); /*new ReduceAction452*/
2086 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable453) /*AbstractArray::add*/;
2087 variable454 = NEW_ReduceAction453_parser___ReduceAction453___init(); /*new ReduceAction453*/
2088 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable454) /*AbstractArray::add*/;
2089 variable455 = NEW_ReduceAction454_parser___ReduceAction454___init(); /*new ReduceAction454*/
2090 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable455) /*AbstractArray::add*/;
2091 variable456 = NEW_ReduceAction455_parser___ReduceAction455___init(); /*new ReduceAction455*/
2092 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable456) /*AbstractArray::add*/;
2093 variable457 = NEW_ReduceAction456_parser___ReduceAction456___init(); /*new ReduceAction456*/
2094 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable457) /*AbstractArray::add*/;
2095 variable458 = NEW_ReduceAction457_parser___ReduceAction457___init(); /*new ReduceAction457*/
2096 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable458) /*AbstractArray::add*/;
2097 variable459 = NEW_ReduceAction458_parser___ReduceAction458___init(); /*new ReduceAction458*/
2098 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable459) /*AbstractArray::add*/;
2099 variable460 = NEW_ReduceAction459_parser___ReduceAction459___init(); /*new ReduceAction459*/
2100 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable460) /*AbstractArray::add*/;
2101 variable461 = NEW_ReduceAction460_parser___ReduceAction460___init(); /*new ReduceAction460*/
2102 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable461) /*AbstractArray::add*/;
2103 variable462 = NEW_ReduceAction461_parser___ReduceAction461___init(); /*new ReduceAction461*/
2104 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable462) /*AbstractArray::add*/;
2105 variable463 = NEW_ReduceAction462_parser___ReduceAction462___init(); /*new ReduceAction462*/
2106 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable463) /*AbstractArray::add*/;
2107 variable464 = NEW_ReduceAction463_parser___ReduceAction463___init(); /*new ReduceAction463*/
2108 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable464) /*AbstractArray::add*/;
2109 variable465 = NEW_ReduceAction464_parser___ReduceAction464___init(); /*new ReduceAction464*/
2110 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable465) /*AbstractArray::add*/;
2111 variable466 = NEW_ReduceAction465_parser___ReduceAction465___init(); /*new ReduceAction465*/
2112 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable466) /*AbstractArray::add*/;
2113 variable467 = NEW_ReduceAction466_parser___ReduceAction466___init(); /*new ReduceAction466*/
2114 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable467) /*AbstractArray::add*/;
2115 variable468 = NEW_ReduceAction467_parser___ReduceAction467___init(); /*new ReduceAction467*/
2116 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable468) /*AbstractArray::add*/;
2117 variable469 = NEW_ReduceAction468_parser___ReduceAction468___init(); /*new ReduceAction468*/
2118 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable469) /*AbstractArray::add*/;
2119 variable470 = NEW_ReduceAction469_parser___ReduceAction469___init(); /*new ReduceAction469*/
2120 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable470) /*AbstractArray::add*/;
2121 variable471 = NEW_ReduceAction470_parser___ReduceAction470___init(); /*new ReduceAction470*/
2122 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable471) /*AbstractArray::add*/;
2123 variable472 = NEW_ReduceAction471_parser___ReduceAction471___init(); /*new ReduceAction471*/
2124 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable472) /*AbstractArray::add*/;
2125 variable473 = NEW_ReduceAction472_parser___ReduceAction472___init(); /*new ReduceAction472*/
2126 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable473) /*AbstractArray::add*/;
2127 variable474 = NEW_ReduceAction473_parser___ReduceAction473___init(); /*new ReduceAction473*/
2128 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable474) /*AbstractArray::add*/;
2129 variable475 = NEW_ReduceAction474_parser___ReduceAction474___init(); /*new ReduceAction474*/
2130 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable475) /*AbstractArray::add*/;
2131 variable476 = NEW_ReduceAction475_parser___ReduceAction475___init(); /*new ReduceAction475*/
2132 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable476) /*AbstractArray::add*/;
2133 variable477 = NEW_ReduceAction476_parser___ReduceAction476___init(); /*new ReduceAction476*/
2134 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable477) /*AbstractArray::add*/;
2135 variable478 = NEW_ReduceAction477_parser___ReduceAction477___init(); /*new ReduceAction477*/
2136 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable478) /*AbstractArray::add*/;
2137 variable479 = NEW_ReduceAction478_parser___ReduceAction478___init(); /*new ReduceAction478*/
2138 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable479) /*AbstractArray::add*/;
2139 variable480 = NEW_ReduceAction479_parser___ReduceAction479___init(); /*new ReduceAction479*/
2140 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable480) /*AbstractArray::add*/;
2141 variable481 = NEW_ReduceAction480_parser___ReduceAction480___init(); /*new ReduceAction480*/
2142 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable481) /*AbstractArray::add*/;
2143 variable482 = NEW_ReduceAction481_parser___ReduceAction481___init(); /*new ReduceAction481*/
2144 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable482) /*AbstractArray::add*/;
2145 variable483 = NEW_ReduceAction482_parser___ReduceAction482___init(); /*new ReduceAction482*/
2146 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable483) /*AbstractArray::add*/;
2147 variable484 = NEW_ReduceAction483_parser___ReduceAction483___init(); /*new ReduceAction483*/
2148 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable484) /*AbstractArray::add*/;
2149 variable485 = NEW_ReduceAction484_parser___ReduceAction484___init(); /*new ReduceAction484*/
2150 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable485) /*AbstractArray::add*/;
2151 variable486 = NEW_ReduceAction485_parser___ReduceAction485___init(); /*new ReduceAction485*/
2152 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable486) /*AbstractArray::add*/;
2153 variable487 = NEW_ReduceAction486_parser___ReduceAction486___init(); /*new ReduceAction486*/
2154 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable487) /*AbstractArray::add*/;
2155 variable488 = NEW_ReduceAction487_parser___ReduceAction487___init(); /*new ReduceAction487*/
2156 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable488) /*AbstractArray::add*/;
2157 variable489 = NEW_ReduceAction488_parser___ReduceAction488___init(); /*new ReduceAction488*/
2158 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable489) /*AbstractArray::add*/;
2159 variable490 = NEW_ReduceAction489_parser___ReduceAction489___init(); /*new ReduceAction489*/
2160 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable490) /*AbstractArray::add*/;
2161 variable491 = NEW_ReduceAction490_parser___ReduceAction490___init(); /*new ReduceAction490*/
2162 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable491) /*AbstractArray::add*/;
2163 variable492 = NEW_ReduceAction491_parser___ReduceAction491___init(); /*new ReduceAction491*/
2164 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable492) /*AbstractArray::add*/;
2165 variable493 = NEW_ReduceAction492_parser___ReduceAction492___init(); /*new ReduceAction492*/
2166 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable493) /*AbstractArray::add*/;
2167 variable494 = NEW_ReduceAction493_parser___ReduceAction493___init(); /*new ReduceAction493*/
2168 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable494) /*AbstractArray::add*/;
2169 variable495 = NEW_ReduceAction494_parser___ReduceAction494___init(); /*new ReduceAction494*/
2170 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable495) /*AbstractArray::add*/;
2171 variable496 = NEW_ReduceAction495_parser___ReduceAction495___init(); /*new ReduceAction495*/
2172 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable496) /*AbstractArray::add*/;
2173 variable497 = NEW_ReduceAction496_parser___ReduceAction496___init(); /*new ReduceAction496*/
2174 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable497) /*AbstractArray::add*/;
2175 variable498 = NEW_ReduceAction497_parser___ReduceAction497___init(); /*new ReduceAction497*/
2176 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable498) /*AbstractArray::add*/;
2177 variable499 = NEW_ReduceAction498_parser___ReduceAction498___init(); /*new ReduceAction498*/
2178 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable499) /*AbstractArray::add*/;
2179 variable500 = NEW_ReduceAction499_parser___ReduceAction499___init(); /*new ReduceAction499*/
2180 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable500) /*AbstractArray::add*/;
2181 variable501 = NEW_ReduceAction500_parser___ReduceAction500___init(); /*new ReduceAction500*/
2182 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable501) /*AbstractArray::add*/;
2183 variable502 = NEW_ReduceAction501_parser___ReduceAction501___init(); /*new ReduceAction501*/
2184 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable502) /*AbstractArray::add*/;
2185 variable503 = NEW_ReduceAction502_parser___ReduceAction502___init(); /*new ReduceAction502*/
2186 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable503) /*AbstractArray::add*/;
2187 variable504 = NEW_ReduceAction503_parser___ReduceAction503___init(); /*new ReduceAction503*/
2188 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable504) /*AbstractArray::add*/;
2189 variable505 = NEW_ReduceAction504_parser___ReduceAction504___init(); /*new ReduceAction504*/
2190 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable505) /*AbstractArray::add*/;
2191 variable506 = NEW_ReduceAction505_parser___ReduceAction505___init(); /*new ReduceAction505*/
2192 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable506) /*AbstractArray::add*/;
2193 variable507 = NEW_ReduceAction506_parser___ReduceAction506___init(); /*new ReduceAction506*/
2194 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable507) /*AbstractArray::add*/;
2195 variable508 = NEW_ReduceAction507_parser___ReduceAction507___init(); /*new ReduceAction507*/
2196 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable508) /*AbstractArray::add*/;
2197 variable509 = NEW_ReduceAction508_parser___ReduceAction508___init(); /*new ReduceAction508*/
2198 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable509) /*AbstractArray::add*/;
2199 variable510 = NEW_ReduceAction509_parser___ReduceAction509___init(); /*new ReduceAction509*/
2200 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable510) /*AbstractArray::add*/;
2201 variable511 = NEW_ReduceAction510_parser___ReduceAction510___init(); /*new ReduceAction510*/
2202 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable511) /*AbstractArray::add*/;
2203 variable512 = NEW_ReduceAction511_parser___ReduceAction511___init(); /*new ReduceAction511*/
2204 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable512) /*AbstractArray::add*/;
2205 variable513 = NEW_ReduceAction512_parser___ReduceAction512___init(); /*new ReduceAction512*/
2206 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable513) /*AbstractArray::add*/;
2207 variable514 = NEW_ReduceAction513_parser___ReduceAction513___init(); /*new ReduceAction513*/
2208 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable514) /*AbstractArray::add*/;
2209 variable515 = NEW_ReduceAction514_parser___ReduceAction514___init(); /*new ReduceAction514*/
2210 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable515) /*AbstractArray::add*/;
2211 variable516 = NEW_ReduceAction515_parser___ReduceAction515___init(); /*new ReduceAction515*/
2212 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable516) /*AbstractArray::add*/;
2213 variable517 = NEW_ReduceAction516_parser___ReduceAction516___init(); /*new ReduceAction516*/
2214 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable517) /*AbstractArray::add*/;
2215 variable518 = NEW_ReduceAction517_parser___ReduceAction517___init(); /*new ReduceAction517*/
2216 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable518) /*AbstractArray::add*/;
2217 variable519 = NEW_ReduceAction518_parser___ReduceAction518___init(); /*new ReduceAction518*/
2218 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable519) /*AbstractArray::add*/;
2219 variable520 = NEW_ReduceAction519_parser___ReduceAction519___init(); /*new ReduceAction519*/
2220 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable520) /*AbstractArray::add*/;
2221 variable521 = NEW_ReduceAction520_parser___ReduceAction520___init(); /*new ReduceAction520*/
2222 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable521) /*AbstractArray::add*/;
2223 variable522 = NEW_ReduceAction521_parser___ReduceAction521___init(); /*new ReduceAction521*/
2224 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable522) /*AbstractArray::add*/;
2225 variable523 = NEW_ReduceAction522_parser___ReduceAction522___init(); /*new ReduceAction522*/
2226 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable523) /*AbstractArray::add*/;
2227 variable524 = NEW_ReduceAction523_parser___ReduceAction523___init(); /*new ReduceAction523*/
2228 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable524) /*AbstractArray::add*/;
2229 variable525 = NEW_ReduceAction524_parser___ReduceAction524___init(); /*new ReduceAction524*/
2230 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable525) /*AbstractArray::add*/;
2231 variable526 = NEW_ReduceAction525_parser___ReduceAction525___init(); /*new ReduceAction525*/
2232 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable526) /*AbstractArray::add*/;
2233 variable527 = NEW_ReduceAction526_parser___ReduceAction526___init(); /*new ReduceAction526*/
2234 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable527) /*AbstractArray::add*/;
2235 variable528 = NEW_ReduceAction527_parser___ReduceAction527___init(); /*new ReduceAction527*/
2236 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable528) /*AbstractArray::add*/;
2237 variable529 = NEW_ReduceAction528_parser___ReduceAction528___init(); /*new ReduceAction528*/
2238 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable529) /*AbstractArray::add*/;
2239 variable530 = NEW_ReduceAction529_parser___ReduceAction529___init(); /*new ReduceAction529*/
2240 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable530) /*AbstractArray::add*/;
2241 variable531 = NEW_ReduceAction530_parser___ReduceAction530___init(); /*new ReduceAction530*/
2242 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable531) /*AbstractArray::add*/;
2243 variable532 = NEW_ReduceAction531_parser___ReduceAction531___init(); /*new ReduceAction531*/
2244 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable532) /*AbstractArray::add*/;
2245 variable533 = NEW_ReduceAction532_parser___ReduceAction532___init(); /*new ReduceAction532*/
2246 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable533) /*AbstractArray::add*/;
2247 variable534 = NEW_ReduceAction533_parser___ReduceAction533___init(); /*new ReduceAction533*/
2248 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable534) /*AbstractArray::add*/;
2249 variable535 = NEW_ReduceAction534_parser___ReduceAction534___init(); /*new ReduceAction534*/
2250 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable535) /*AbstractArray::add*/;
2251 variable536 = NEW_ReduceAction535_parser___ReduceAction535___init(); /*new ReduceAction535*/
2252 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable536) /*AbstractArray::add*/;
2253 variable537 = NEW_ReduceAction536_parser___ReduceAction536___init(); /*new ReduceAction536*/
2254 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable537) /*AbstractArray::add*/;
2255 variable538 = NEW_ReduceAction537_parser___ReduceAction537___init(); /*new ReduceAction537*/
2256 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable538) /*AbstractArray::add*/;
2257 variable539 = NEW_ReduceAction538_parser___ReduceAction538___init(); /*new ReduceAction538*/
2258 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable539) /*AbstractArray::add*/;
2259 variable540 = NEW_ReduceAction539_parser___ReduceAction539___init(); /*new ReduceAction539*/
2260 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable540) /*AbstractArray::add*/;
2261 variable541 = NEW_ReduceAction540_parser___ReduceAction540___init(); /*new ReduceAction540*/
2262 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable541) /*AbstractArray::add*/;
2263 variable542 = NEW_ReduceAction541_parser___ReduceAction541___init(); /*new ReduceAction541*/
2264 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable542) /*AbstractArray::add*/;
2265 variable543 = NEW_ReduceAction542_parser___ReduceAction542___init(); /*new ReduceAction542*/
2266 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable543) /*AbstractArray::add*/;
2267 variable544 = NEW_ReduceAction543_parser___ReduceAction543___init(); /*new ReduceAction543*/
2268 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable544) /*AbstractArray::add*/;
2269 variable545 = NEW_ReduceAction544_parser___ReduceAction544___init(); /*new ReduceAction544*/
2270 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable545) /*AbstractArray::add*/;
2271 variable546 = NEW_ReduceAction545_parser___ReduceAction545___init(); /*new ReduceAction545*/
2272 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable546) /*AbstractArray::add*/;
2273 variable547 = NEW_ReduceAction546_parser___ReduceAction546___init(); /*new ReduceAction546*/
2274 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable547) /*AbstractArray::add*/;
2275 variable548 = NEW_ReduceAction547_parser___ReduceAction547___init(); /*new ReduceAction547*/
2276 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable548) /*AbstractArray::add*/;
2277 variable549 = NEW_ReduceAction548_parser___ReduceAction548___init(); /*new ReduceAction548*/
2278 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable549) /*AbstractArray::add*/;
2279 variable550 = NEW_ReduceAction549_parser___ReduceAction549___init(); /*new ReduceAction549*/
2280 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable550) /*AbstractArray::add*/;
2281 variable551 = NEW_ReduceAction550_parser___ReduceAction550___init(); /*new ReduceAction550*/
2282 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable551) /*AbstractArray::add*/;
2283 variable552 = NEW_ReduceAction551_parser___ReduceAction551___init(); /*new ReduceAction551*/
2284 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable552) /*AbstractArray::add*/;
2285 variable553 = NEW_ReduceAction552_parser___ReduceAction552___init(); /*new ReduceAction552*/
2286 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable553) /*AbstractArray::add*/;
2287 variable554 = NEW_ReduceAction553_parser___ReduceAction553___init(); /*new ReduceAction553*/
2288 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable554) /*AbstractArray::add*/;
2289 variable555 = NEW_ReduceAction554_parser___ReduceAction554___init(); /*new ReduceAction554*/
2290 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable555) /*AbstractArray::add*/;
2291 variable556 = NEW_ReduceAction555_parser___ReduceAction555___init(); /*new ReduceAction555*/
2292 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable556) /*AbstractArray::add*/;
2293 variable557 = NEW_ReduceAction556_parser___ReduceAction556___init(); /*new ReduceAction556*/
2294 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable557) /*AbstractArray::add*/;
2295 variable558 = NEW_ReduceAction557_parser___ReduceAction557___init(); /*new ReduceAction557*/
2296 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable558) /*AbstractArray::add*/;
2297 variable559 = NEW_ReduceAction558_parser___ReduceAction558___init(); /*new ReduceAction558*/
2298 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable559) /*AbstractArray::add*/;
2299 variable560 = NEW_ReduceAction559_parser___ReduceAction559___init(); /*new ReduceAction559*/
2300 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable560) /*AbstractArray::add*/;
2301 variable561 = NEW_ReduceAction560_parser___ReduceAction560___init(); /*new ReduceAction560*/
2302 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable561) /*AbstractArray::add*/;
2303 variable562 = NEW_ReduceAction561_parser___ReduceAction561___init(); /*new ReduceAction561*/
2304 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable562) /*AbstractArray::add*/;
2305 variable563 = NEW_ReduceAction562_parser___ReduceAction562___init(); /*new ReduceAction562*/
2306 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable563) /*AbstractArray::add*/;
2307 variable564 = NEW_ReduceAction563_parser___ReduceAction563___init(); /*new ReduceAction563*/
2308 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable564) /*AbstractArray::add*/;
2309 variable565 = NEW_ReduceAction564_parser___ReduceAction564___init(); /*new ReduceAction564*/
2310 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable565) /*AbstractArray::add*/;
2311 variable566 = NEW_ReduceAction565_parser___ReduceAction565___init(); /*new ReduceAction565*/
2312 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable566) /*AbstractArray::add*/;
2313 variable567 = NEW_ReduceAction566_parser___ReduceAction566___init(); /*new ReduceAction566*/
2314 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable567) /*AbstractArray::add*/;
2315 variable568 = NEW_ReduceAction567_parser___ReduceAction567___init(); /*new ReduceAction567*/
2316 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable568) /*AbstractArray::add*/;
2317 variable569 = NEW_ReduceAction568_parser___ReduceAction568___init(); /*new ReduceAction568*/
2318 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable569) /*AbstractArray::add*/;
2319 variable570 = NEW_ReduceAction569_parser___ReduceAction569___init(); /*new ReduceAction569*/
2320 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable570) /*AbstractArray::add*/;
2321 variable571 = NEW_ReduceAction570_parser___ReduceAction570___init(); /*new ReduceAction570*/
2322 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable571) /*AbstractArray::add*/;
2323 variable572 = NEW_ReduceAction571_parser___ReduceAction571___init(); /*new ReduceAction571*/
2324 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable572) /*AbstractArray::add*/;
2325 variable573 = NEW_ReduceAction572_parser___ReduceAction572___init(); /*new ReduceAction572*/
2326 ((array___AbstractArray___add_t)CALL(variable0,COLOR_abstract_collection___SimpleCollection___add))(variable0, variable573) /*AbstractArray::add*/;
2327 variable1 = NEW_Array_array___Array___with(variable0); /*new Array[ReduceAction]*/
2328 variable0 = variable1;
2329 ATTR_parser___Parser____reduce_table( self) /*Parser::_reduce_table*/ = variable0;
2330 tracehead = trace.prev;
2331 return;
2332 }
2333 void parser___SearchTokensVisitor___visit(val_t self, val_t param0) {
2334 struct trace_t trace = {NULL, NULL, 744, LOCATE_parser___SearchTokensVisitor___visit};
2335 val_t variable0;
2336 val_t variable1;
2337 val_t variable2;
2338 trace.prev = tracehead; tracehead = &trace;
2339 trace.file = LOCATE_parser;
2340 variable0 = param0;
2341 variable1 = TAG_Bool(( variable0 /*n*/==NIT_NULL) || VAL_ISA( variable0 /*n*/, COLOR_Token, ID_Token)) /*cast Token*/;
2342 if (UNTAG_Bool(variable1)) { /*if*/
2343 variable1 = TAG_Bool(( variable0 /*n*/==NIT_NULL) || VAL_ISA( variable0 /*n*/, COLOR_Token, ID_Token)) /*cast Token*/;
2344 if (!UNTAG_Bool(variable1)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___SearchTokensVisitor___visit, LOCATE_parser, 747); nit_exit(1);}
2345 ATTR_parser___SearchTokensVisitor____last_token( self) /*SearchTokensVisitor::_last_token*/ = variable0 /*n*/;
2346 variable1 = ATTR_parser___SearchTokensVisitor____untokenned_nodes( self) /*SearchTokensVisitor::_untokenned_nodes*/;
2347 variable1 = ((array___AbstractArray___iterator_t)CALL(variable1,COLOR_abstract_collection___Collection___iterator))(variable1) /*AbstractArray::iterator*/;
2348 while (true) { /*for*/
2349 variable2 = ((array___ArrayIterator___is_ok_t)CALL(variable1,COLOR_abstract_collection___Iterator___is_ok))(variable1) /*ArrayIterator::is_ok*/;
2350 if (!UNTAG_Bool(variable2)) break; /*for*/
2351 variable2 = ((array___ArrayIterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*ArrayIterator::item*/;
2352 ((parser_prod___Prod___first_token__eq_t)CALL( variable2 /*no*/,COLOR_parser_prod___Prod___first_token__eq))( variable2 /*no*/, variable0 /*n*/) /*Prod::first_token=*/;
2353 continue_30: while(0);
2354 ((array___ArrayIterator___next_t)CALL(variable1,COLOR_abstract_collection___Iterator___next))(variable1) /*ArrayIterator::next*/;
2355 }
2356 break_30: while(0);
2357 variable1 = ATTR_parser___SearchTokensVisitor____untokenned_nodes( self) /*SearchTokensVisitor::_untokenned_nodes*/;
2358 ((array___AbstractArray___clear_t)CALL(variable1,COLOR_abstract_collection___RemovableCollection___clear))(variable1) /*AbstractArray::clear*/;
2359 } else { /*if*/
2360 variable1 = TAG_Bool(( variable0 /*n*/==NIT_NULL) || VAL_ISA( variable0 /*n*/, COLOR_Prod, ID_Prod)) /*cast Prod*/;
2361 if (!UNTAG_Bool(variable1)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___SearchTokensVisitor___visit, LOCATE_parser, 754); nit_exit(1);}
2362 variable1 = ATTR_parser___SearchTokensVisitor____untokenned_nodes( self) /*SearchTokensVisitor::_untokenned_nodes*/;
2363 ((array___AbstractArray___add_t)CALL(variable1,COLOR_abstract_collection___SimpleCollection___add))(variable1, variable0 /*n*/) /*AbstractArray::add*/;
2364 ((parser_prod___PNode___visit_all_t)CALL( variable0 /*n*/,COLOR_parser_prod___PNode___visit_all))( variable0 /*n*/, self) /*PNode::visit_all*/;
2365 variable1 = ATTR_parser___SearchTokensVisitor____last_token( self) /*SearchTokensVisitor::_last_token*/;
2366 ((parser_prod___Prod___last_token__eq_t)CALL( variable0 /*n*/,COLOR_parser_prod___Prod___last_token__eq))( variable0 /*n*/, variable1) /*Prod::last_token=*/;
2367 }
2368 tracehead = trace.prev;
2369 return;
2370 }
2371 void parser___SearchTokensVisitor___init(val_t self, int* init_table) {
2372 struct trace_t trace = {NULL, NULL, 760, LOCATE_parser___SearchTokensVisitor___init};
2373 val_t variable0;
2374 trace.prev = tracehead; tracehead = &trace;
2375 trace.file = LOCATE_parser;
2376 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_SearchTokensVisitor].i]) return;
2377 variable0 = NEW_Array_array___Array___init(); /*new Array[Prod]*/
2378 ATTR_parser___SearchTokensVisitor____untokenned_nodes( self) /*SearchTokensVisitor::_untokenned_nodes*/ = variable0;
2379 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_SearchTokensVisitor].i] = 1;
2380 tracehead = trace.prev;
2381 return;
2382 }
2383 void parser___ReduceAction___action(val_t self, val_t param0) {
2384 struct trace_t trace = {NULL, NULL, 768, LOCATE_parser___ReduceAction___action};
2385 trace.prev = tracehead; tracehead = &trace;
2386 trace.file = LOCATE_parser;
2387 fprintf(stderr, "Deferred method %s called");
2388 fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___SearchTokensVisitor___init, LOCATE_parser, 768);
2389 nit_exit(1);
2390 tracehead = trace.prev;
2391 return;
2392 }
2393 void parser___ReduceAction___init(val_t self, int* init_table) {
2394 struct trace_t trace = {NULL, NULL, 0, LOCATE_parser___ReduceAction___init};
2395 trace.prev = tracehead; tracehead = &trace;
2396 trace.file = LOCATE_parser;
2397 tracehead = trace.prev;
2398 return;
2399 }
2400 void parser___ReduceAction0___action(val_t self, val_t param0) {
2401 struct trace_t trace = {NULL, NULL, 773, LOCATE_parser___ReduceAction0___action};
2402 val_t variable0;
2403 val_t variable1;
2404 val_t variable2;
2405 val_t variable3;
2406 val_t variable4;
2407 val_t variable5;
2408 trace.prev = tracehead; tracehead = &trace;
2409 trace.file = LOCATE_parser;
2410 variable0 = param0;
2411 variable1 = NIT_NULL /*null*/;
2412 variable3 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2413 variable2 = variable3;
2414 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2415 variable3 = variable4;
2416 variable5 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable2 /*listnode3*/, variable3 /*listnode4*/); /*new AModule*/
2417 variable4 = variable5;
2418 variable1 = variable4 /*pmodulenode1*/ /*node_list=*/;
2419 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2420 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
2421 tracehead = trace.prev;
2422 return;
2423 }
2424 void parser___ReduceAction0___init(val_t self, int* init_table) {
2425 struct trace_t trace = {NULL, NULL, 786, LOCATE_parser___ReduceAction0___init};
2426 trace.prev = tracehead; tracehead = &trace;
2427 trace.file = LOCATE_parser;
2428 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction0].i]) return;
2429 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction0].i] = 1;
2430 tracehead = trace.prev;
2431 return;
2432 }
2433 void parser___ReduceAction1___action(val_t self, val_t param0) {
2434 struct trace_t trace = {NULL, NULL, 790, LOCATE_parser___ReduceAction1___action};
2435 val_t variable0;
2436 val_t variable1;
2437 val_t variable2;
2438 val_t variable3;
2439 val_t variable4;
2440 val_t variable5;
2441 val_t variable6;
2442 val_t variable7;
2443 trace.prev = tracehead; tracehead = &trace;
2444 trace.file = LOCATE_parser;
2445 variable0 = param0;
2446 variable1 = NIT_NULL /*null*/;
2447 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2448 variable2 = variable3;
2449 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2450 variable3 = variable4;
2451 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2452 variable4 = variable5;
2453 variable5 = variable2 /*nodearraylist1*/;
2454 variable6 = TAG_Bool(( variable5 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable5 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
2455 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction1___action, LOCATE_parser, 797); nit_exit(1);}
2456 variable7 = NEW_AModule_parser_prod___AModule___init_amodule( variable5 /*ppackagedeclnode2*/, variable3 /*listnode3*/, variable4 /*listnode4*/); /*new AModule*/
2457 variable6 = variable7;
2458 variable1 = variable6 /*pmodulenode1*/ /*node_list=*/;
2459 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2460 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
2461 tracehead = trace.prev;
2462 return;
2463 }
2464 void parser___ReduceAction1___init(val_t self, int* init_table) {
2465 struct trace_t trace = {NULL, NULL, 806, LOCATE_parser___ReduceAction1___init};
2466 trace.prev = tracehead; tracehead = &trace;
2467 trace.file = LOCATE_parser;
2468 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction1].i]) return;
2469 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction1].i] = 1;
2470 tracehead = trace.prev;
2471 return;
2472 }
2473 void parser___ReduceAction2___action(val_t self, val_t param0) {
2474 struct trace_t trace = {NULL, NULL, 810, LOCATE_parser___ReduceAction2___action};
2475 val_t variable0;
2476 val_t variable1;
2477 val_t variable2;
2478 val_t variable3;
2479 val_t variable4;
2480 val_t variable5;
2481 val_t variable6;
2482 val_t variable7;
2483 trace.prev = tracehead; tracehead = &trace;
2484 trace.file = LOCATE_parser;
2485 variable0 = param0;
2486 variable1 = NIT_NULL /*null*/;
2487 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2488 variable2 = variable3;
2489 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2490 variable3 = variable4;
2491 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2492 variable4 = variable5;
2493 variable5 = variable2 /*nodearraylist1*/;
2494 variable6 = TAG_Bool(( variable5 /*listnode3*/==NIT_NULL) || VAL_ISA( variable5 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2495 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction2___action, LOCATE_parser, 817); nit_exit(1);}
2496 variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode3*/ == NIT_NULL /*null*/) || (( variable5 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2497 if (UNTAG_Bool(variable6)) { /*if*/
2498 variable6 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode4*/) /*AbstractArray::is_empty*/;
2499 if (UNTAG_Bool(variable6)) { /*if*/
2500 variable3 = variable5 /*listnode3*/ /*listnode4=*/;
2501 } else { /*if*/
2502 ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode4*/, variable5 /*listnode3*/) /*IndexedCollection::append*/;
2503 }
2504 }
2505 variable7 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable3 /*listnode4*/, variable4 /*listnode5*/); /*new AModule*/
2506 variable6 = variable7;
2507 variable1 = variable6 /*pmodulenode1*/ /*node_list=*/;
2508 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2509 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
2510 tracehead = trace.prev;
2511 return;
2512 }
2513 void parser___ReduceAction2___init(val_t self, int* init_table) {
2514 struct trace_t trace = {NULL, NULL, 833, LOCATE_parser___ReduceAction2___init};
2515 trace.prev = tracehead; tracehead = &trace;
2516 trace.file = LOCATE_parser;
2517 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction2].i]) return;
2518 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction2].i] = 1;
2519 tracehead = trace.prev;
2520 return;
2521 }
2522 void parser___ReduceAction3___action(val_t self, val_t param0) {
2523 struct trace_t trace = {NULL, NULL, 837, LOCATE_parser___ReduceAction3___action};
2524 val_t variable0;
2525 val_t variable1;
2526 val_t variable2;
2527 val_t variable3;
2528 val_t variable4;
2529 val_t variable5;
2530 val_t variable6;
2531 val_t variable7;
2532 val_t variable8;
2533 val_t variable9;
2534 trace.prev = tracehead; tracehead = &trace;
2535 trace.file = LOCATE_parser;
2536 variable0 = param0;
2537 variable1 = NIT_NULL /*null*/;
2538 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2539 variable2 = variable3;
2540 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2541 variable3 = variable4;
2542 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2543 variable4 = variable5;
2544 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2545 variable5 = variable6;
2546 variable6 = variable3 /*nodearraylist1*/;
2547 variable7 = TAG_Bool(( variable6 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
2548 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction3___action, LOCATE_parser, 845); nit_exit(1);}
2549 variable7 = variable2 /*nodearraylist2*/;
2550 variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2551 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction3___action, LOCATE_parser, 847); nit_exit(1);}
2552 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2553 if (UNTAG_Bool(variable8)) { /*if*/
2554 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*AbstractArray::is_empty*/;
2555 if (UNTAG_Bool(variable8)) { /*if*/
2556 variable4 = variable7 /*listnode3*/ /*listnode4=*/;
2557 } else { /*if*/
2558 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable7 /*listnode3*/) /*IndexedCollection::append*/;
2559 }
2560 }
2561 variable9 = NEW_AModule_parser_prod___AModule___init_amodule( variable6 /*ppackagedeclnode2*/, variable4 /*listnode4*/, variable5 /*listnode5*/); /*new AModule*/
2562 variable8 = variable9;
2563 variable1 = variable8 /*pmodulenode1*/ /*node_list=*/;
2564 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2565 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
2566 tracehead = trace.prev;
2567 return;
2568 }
2569 void parser___ReduceAction3___init(val_t self, int* init_table) {
2570 struct trace_t trace = {NULL, NULL, 863, LOCATE_parser___ReduceAction3___init};
2571 trace.prev = tracehead; tracehead = &trace;
2572 trace.file = LOCATE_parser;
2573 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction3].i]) return;
2574 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction3].i] = 1;
2575 tracehead = trace.prev;
2576 return;
2577 }
2578 void parser___ReduceAction4___action(val_t self, val_t param0) {
2579 struct trace_t trace = {NULL, NULL, 867, LOCATE_parser___ReduceAction4___action};
2580 val_t variable0;
2581 val_t variable1;
2582 val_t variable2;
2583 val_t variable3;
2584 val_t variable4;
2585 val_t variable5;
2586 val_t variable6;
2587 val_t variable7;
2588 trace.prev = tracehead; tracehead = &trace;
2589 trace.file = LOCATE_parser;
2590 variable0 = param0;
2591 variable1 = NIT_NULL /*null*/;
2592 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2593 variable2 = variable3;
2594 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2595 variable3 = variable4;
2596 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2597 variable4 = variable5;
2598 variable5 = variable2 /*nodearraylist1*/;
2599 variable6 = TAG_Bool(( variable5 /*listnode4*/==NIT_NULL) || VAL_ISA( variable5 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2600 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction4___action, LOCATE_parser, 874); nit_exit(1);}
2601 variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode4*/ == NIT_NULL /*null*/) || (( variable5 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2602 if (UNTAG_Bool(variable6)) { /*if*/
2603 variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
2604 if (UNTAG_Bool(variable6)) { /*if*/
2605 variable4 = variable5 /*listnode4*/ /*listnode5=*/;
2606 } else { /*if*/
2607 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable5 /*listnode4*/) /*IndexedCollection::append*/;
2608 }
2609 }
2610 variable7 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable3 /*listnode3*/, variable4 /*listnode5*/); /*new AModule*/
2611 variable6 = variable7;
2612 variable1 = variable6 /*pmodulenode1*/ /*node_list=*/;
2613 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2614 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
2615 tracehead = trace.prev;
2616 return;
2617 }
2618 void parser___ReduceAction4___init(val_t self, int* init_table) {
2619 struct trace_t trace = {NULL, NULL, 890, LOCATE_parser___ReduceAction4___init};
2620 trace.prev = tracehead; tracehead = &trace;
2621 trace.file = LOCATE_parser;
2622 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction4].i]) return;
2623 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction4].i] = 1;
2624 tracehead = trace.prev;
2625 return;
2626 }
2627 void parser___ReduceAction5___action(val_t self, val_t param0) {
2628 struct trace_t trace = {NULL, NULL, 894, LOCATE_parser___ReduceAction5___action};
2629 val_t variable0;
2630 val_t variable1;
2631 val_t variable2;
2632 val_t variable3;
2633 val_t variable4;
2634 val_t variable5;
2635 val_t variable6;
2636 val_t variable7;
2637 val_t variable8;
2638 val_t variable9;
2639 trace.prev = tracehead; tracehead = &trace;
2640 trace.file = LOCATE_parser;
2641 variable0 = param0;
2642 variable1 = NIT_NULL /*null*/;
2643 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2644 variable2 = variable3;
2645 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2646 variable3 = variable4;
2647 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2648 variable4 = variable5;
2649 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2650 variable5 = variable6;
2651 variable6 = variable3 /*nodearraylist1*/;
2652 variable7 = TAG_Bool(( variable6 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
2653 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction5___action, LOCATE_parser, 902); nit_exit(1);}
2654 variable7 = variable2 /*nodearraylist2*/;
2655 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2656 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction5___action, LOCATE_parser, 904); nit_exit(1);}
2657 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2658 if (UNTAG_Bool(variable8)) { /*if*/
2659 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
2660 if (UNTAG_Bool(variable8)) { /*if*/
2661 variable5 = variable7 /*listnode4*/ /*listnode5=*/;
2662 } else { /*if*/
2663 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
2664 }
2665 }
2666 variable9 = NEW_AModule_parser_prod___AModule___init_amodule( variable6 /*ppackagedeclnode2*/, variable4 /*listnode3*/, variable5 /*listnode5*/); /*new AModule*/
2667 variable8 = variable9;
2668 variable1 = variable8 /*pmodulenode1*/ /*node_list=*/;
2669 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2670 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
2671 tracehead = trace.prev;
2672 return;
2673 }
2674 void parser___ReduceAction5___init(val_t self, int* init_table) {
2675 struct trace_t trace = {NULL, NULL, 920, LOCATE_parser___ReduceAction5___init};
2676 trace.prev = tracehead; tracehead = &trace;
2677 trace.file = LOCATE_parser;
2678 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction5].i]) return;
2679 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction5].i] = 1;
2680 tracehead = trace.prev;
2681 return;
2682 }
2683 void parser___ReduceAction6___action(val_t self, val_t param0) {
2684 struct trace_t trace = {NULL, NULL, 924, LOCATE_parser___ReduceAction6___action};
2685 val_t variable0;
2686 val_t variable1;
2687 val_t variable2;
2688 val_t variable3;
2689 val_t variable4;
2690 val_t variable5;
2691 val_t variable6;
2692 val_t variable7;
2693 val_t variable8;
2694 val_t variable9;
2695 trace.prev = tracehead; tracehead = &trace;
2696 trace.file = LOCATE_parser;
2697 variable0 = param0;
2698 variable1 = NIT_NULL /*null*/;
2699 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2700 variable2 = variable3;
2701 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2702 variable3 = variable4;
2703 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2704 variable4 = variable5;
2705 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2706 variable5 = variable6;
2707 variable6 = variable3 /*nodearraylist1*/;
2708 variable7 = TAG_Bool(( variable6 /*listnode3*/==NIT_NULL) || VAL_ISA( variable6 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2709 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction6___action, LOCATE_parser, 932); nit_exit(1);}
2710 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode3*/ == NIT_NULL /*null*/) || (( variable6 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2711 if (UNTAG_Bool(variable7)) { /*if*/
2712 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*AbstractArray::is_empty*/;
2713 if (UNTAG_Bool(variable7)) { /*if*/
2714 variable4 = variable6 /*listnode3*/ /*listnode4=*/;
2715 } else { /*if*/
2716 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable6 /*listnode3*/) /*IndexedCollection::append*/;
2717 }
2718 }
2719 variable7 = variable2 /*nodearraylist2*/;
2720 variable8 = TAG_Bool(( variable7 /*listnode5*/==NIT_NULL) || VAL_ISA( variable7 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2721 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction6___action, LOCATE_parser, 941); nit_exit(1);}
2722 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode5*/ == NIT_NULL /*null*/) || (( variable7 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2723 if (UNTAG_Bool(variable8)) { /*if*/
2724 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode6*/) /*AbstractArray::is_empty*/;
2725 if (UNTAG_Bool(variable8)) { /*if*/
2726 variable5 = variable7 /*listnode5*/ /*listnode6=*/;
2727 } else { /*if*/
2728 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode6*/, variable7 /*listnode5*/) /*IndexedCollection::append*/;
2729 }
2730 }
2731 variable9 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode4*/, variable5 /*listnode6*/); /*new AModule*/
2732 variable8 = variable9;
2733 variable1 = variable8 /*pmodulenode1*/ /*node_list=*/;
2734 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2735 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
2736 tracehead = trace.prev;
2737 return;
2738 }
2739 void parser___ReduceAction6___init(val_t self, int* init_table) {
2740 struct trace_t trace = {NULL, NULL, 957, LOCATE_parser___ReduceAction6___init};
2741 trace.prev = tracehead; tracehead = &trace;
2742 trace.file = LOCATE_parser;
2743 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction6].i]) return;
2744 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction6].i] = 1;
2745 tracehead = trace.prev;
2746 return;
2747 }
2748 void parser___ReduceAction7___action(val_t self, val_t param0) {
2749 struct trace_t trace = {NULL, NULL, 961, LOCATE_parser___ReduceAction7___action};
2750 val_t variable0;
2751 val_t variable1;
2752 val_t variable2;
2753 val_t variable3;
2754 val_t variable4;
2755 val_t variable5;
2756 val_t variable6;
2757 val_t variable7;
2758 val_t variable8;
2759 val_t variable9;
2760 val_t variable10;
2761 val_t variable11;
2762 trace.prev = tracehead; tracehead = &trace;
2763 trace.file = LOCATE_parser;
2764 variable0 = param0;
2765 variable1 = NIT_NULL /*null*/;
2766 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2767 variable2 = variable3;
2768 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2769 variable3 = variable4;
2770 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2771 variable4 = variable5;
2772 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2773 variable5 = variable6;
2774 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2775 variable6 = variable7;
2776 variable7 = variable4 /*nodearraylist1*/;
2777 variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
2778 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction7___action, LOCATE_parser, 970); nit_exit(1);}
2779 variable8 = variable3 /*nodearraylist2*/;
2780 variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2781 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction7___action, LOCATE_parser, 972); nit_exit(1);}
2782 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2783 if (UNTAG_Bool(variable9)) { /*if*/
2784 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*AbstractArray::is_empty*/;
2785 if (UNTAG_Bool(variable9)) { /*if*/
2786 variable5 = variable8 /*listnode3*/ /*listnode4=*/;
2787 } else { /*if*/
2788 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable8 /*listnode3*/) /*IndexedCollection::append*/;
2789 }
2790 }
2791 variable9 = variable2 /*nodearraylist3*/;
2792 variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2793 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction7___action, LOCATE_parser, 981); nit_exit(1);}
2794 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2795 if (UNTAG_Bool(variable10)) { /*if*/
2796 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*AbstractArray::is_empty*/;
2797 if (UNTAG_Bool(variable10)) { /*if*/
2798 variable6 = variable9 /*listnode5*/ /*listnode6=*/;
2799 } else { /*if*/
2800 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*IndexedCollection::append*/;
2801 }
2802 }
2803 variable11 = NEW_AModule_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode4*/, variable6 /*listnode6*/); /*new AModule*/
2804 variable10 = variable11;
2805 variable1 = variable10 /*pmodulenode1*/ /*node_list=*/;
2806 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2807 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
2808 tracehead = trace.prev;
2809 return;
2810 }
2811 void parser___ReduceAction7___init(val_t self, int* init_table) {
2812 struct trace_t trace = {NULL, NULL, 997, LOCATE_parser___ReduceAction7___init};
2813 trace.prev = tracehead; tracehead = &trace;
2814 trace.file = LOCATE_parser;
2815 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction7].i]) return;
2816 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction7].i] = 1;
2817 tracehead = trace.prev;
2818 return;
2819 }
2820 void parser___ReduceAction8___action(val_t self, val_t param0) {
2821 struct trace_t trace = {NULL, NULL, 1001, LOCATE_parser___ReduceAction8___action};
2822 val_t variable0;
2823 val_t variable1;
2824 val_t variable2;
2825 val_t variable3;
2826 val_t variable4;
2827 val_t variable5;
2828 val_t variable6;
2829 val_t variable7;
2830 val_t variable8;
2831 val_t variable9;
2832 val_t variable10;
2833 trace.prev = tracehead; tracehead = &trace;
2834 trace.file = LOCATE_parser;
2835 variable0 = param0;
2836 variable1 = NIT_NULL /*null*/;
2837 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2838 variable2 = variable3;
2839 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2840 variable3 = variable4;
2841 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2842 variable4 = variable5;
2843 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2844 variable5 = variable6;
2845 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2846 variable6 = variable7;
2847 variable7 = variable3 /*nodearraylist1*/;
2848 variable8 = TAG_Bool(( variable7 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable7 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
2849 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction8___action, LOCATE_parser, 1010); nit_exit(1);}
2850 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable7 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2851 if (UNTAG_Bool(variable8)) { /*if*/
2852 ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable7 /*ppropdefnode5*/) /*AbstractArray::add*/;
2853 }
2854 variable9 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable6 /*listnode6*/); /*new ATopClassdef*/
2855 variable8 = variable9;
2856 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable8 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2857 if (UNTAG_Bool(variable9)) { /*if*/
2858 ((array___AbstractArray___add_t)CALL( variable5 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode7*/, variable8 /*pclassdefnode4*/) /*AbstractArray::add*/;
2859 }
2860 variable10 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode3*/, variable5 /*listnode7*/); /*new AModule*/
2861 variable9 = variable10;
2862 variable1 = variable9 /*pmodulenode1*/ /*node_list=*/;
2863 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2864 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
2865 tracehead = trace.prev;
2866 return;
2867 }
2868 void parser___ReduceAction8___init(val_t self, int* init_table) {
2869 struct trace_t trace = {NULL, NULL, 1028, LOCATE_parser___ReduceAction8___init};
2870 trace.prev = tracehead; tracehead = &trace;
2871 trace.file = LOCATE_parser;
2872 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction8].i]) return;
2873 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction8].i] = 1;
2874 tracehead = trace.prev;
2875 return;
2876 }
2877 void parser___ReduceAction9___action(val_t self, val_t param0) {
2878 struct trace_t trace = {NULL, NULL, 1032, LOCATE_parser___ReduceAction9___action};
2879 val_t variable0;
2880 val_t variable1;
2881 val_t variable2;
2882 val_t variable3;
2883 val_t variable4;
2884 val_t variable5;
2885 val_t variable6;
2886 val_t variable7;
2887 val_t variable8;
2888 val_t variable9;
2889 val_t variable10;
2890 val_t variable11;
2891 val_t variable12;
2892 trace.prev = tracehead; tracehead = &trace;
2893 trace.file = LOCATE_parser;
2894 variable0 = param0;
2895 variable1 = NIT_NULL /*null*/;
2896 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2897 variable2 = variable3;
2898 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2899 variable3 = variable4;
2900 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2901 variable4 = variable5;
2902 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2903 variable5 = variable6;
2904 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2905 variable6 = variable7;
2906 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2907 variable7 = variable8;
2908 variable8 = variable4 /*nodearraylist1*/;
2909 variable9 = TAG_Bool(( variable8 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable8 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
2910 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction9___action, LOCATE_parser, 1042); nit_exit(1);}
2911 variable9 = variable2 /*nodearraylist3*/;
2912 variable10 = TAG_Bool(( variable9 /*listnode6*/==NIT_NULL) || VAL_ISA( variable9 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
2913 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction9___action, LOCATE_parser, 1044); nit_exit(1);}
2914 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable8 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2915 if (UNTAG_Bool(variable10)) { /*if*/
2916 ((array___AbstractArray___add_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode7*/, variable8 /*ppropdefnode5*/) /*AbstractArray::add*/;
2917 }
2918 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode6*/ == NIT_NULL /*null*/) || (( variable9 /*listnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2919 if (UNTAG_Bool(variable10)) { /*if*/
2920 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode7*/) /*AbstractArray::is_empty*/;
2921 if (UNTAG_Bool(variable10)) { /*if*/
2922 variable7 = variable9 /*listnode6*/ /*listnode7=*/;
2923 } else { /*if*/
2924 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode7*/, variable9 /*listnode6*/) /*IndexedCollection::append*/;
2925 }
2926 }
2927 variable11 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable7 /*listnode7*/); /*new ATopClassdef*/
2928 variable10 = variable11;
2929 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2930 if (UNTAG_Bool(variable11)) { /*if*/
2931 ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode4*/) /*AbstractArray::add*/;
2932 }
2933 variable12 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode3*/, variable6 /*listnode8*/); /*new AModule*/
2934 variable11 = variable12;
2935 variable1 = variable11 /*pmodulenode1*/ /*node_list=*/;
2936 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
2937 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
2938 tracehead = trace.prev;
2939 return;
2940 }
2941 void parser___ReduceAction9___init(val_t self, int* init_table) {
2942 struct trace_t trace = {NULL, NULL, 1069, LOCATE_parser___ReduceAction9___init};
2943 trace.prev = tracehead; tracehead = &trace;
2944 trace.file = LOCATE_parser;
2945 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction9].i]) return;
2946 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction9].i] = 1;
2947 tracehead = trace.prev;
2948 return;
2949 }
2950 void parser___ReduceAction10___action(val_t self, val_t param0) {
2951 struct trace_t trace = {NULL, NULL, 1073, LOCATE_parser___ReduceAction10___action};
2952 val_t variable0;
2953 val_t variable1;
2954 val_t variable2;
2955 val_t variable3;
2956 val_t variable4;
2957 val_t variable5;
2958 val_t variable6;
2959 val_t variable7;
2960 val_t variable8;
2961 val_t variable9;
2962 val_t variable10;
2963 val_t variable11;
2964 val_t variable12;
2965 trace.prev = tracehead; tracehead = &trace;
2966 trace.file = LOCATE_parser;
2967 variable0 = param0;
2968 variable1 = NIT_NULL /*null*/;
2969 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2970 variable2 = variable3;
2971 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2972 variable3 = variable4;
2973 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
2974 variable4 = variable5;
2975 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2976 variable5 = variable6;
2977 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2978 variable6 = variable7;
2979 variable7 = variable4 /*nodearraylist1*/;
2980 variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
2981 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction10___action, LOCATE_parser, 1082); nit_exit(1);}
2982 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
2983 variable8 = variable9;
2984 variable9 = variable3 /*nodearraylist2*/;
2985 variable10 = TAG_Bool(( variable9 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
2986 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction10___action, LOCATE_parser, 1085); nit_exit(1);}
2987 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2988 if (UNTAG_Bool(variable10)) { /*if*/
2989 ((array___AbstractArray___add_t)CALL( variable8 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode6*/, variable9 /*ppropdefnode5*/) /*AbstractArray::add*/;
2990 }
2991 variable11 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode6*/); /*new ATopClassdef*/
2992 variable10 = variable11;
2993 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
2994 if (UNTAG_Bool(variable11)) { /*if*/
2995 ((array___AbstractArray___add_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode7*/, variable10 /*pclassdefnode4*/) /*AbstractArray::add*/;
2996 }
2997 variable12 = NEW_AModule_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode3*/, variable6 /*listnode7*/); /*new AModule*/
2998 variable11 = variable12;
2999 variable1 = variable11 /*pmodulenode1*/ /*node_list=*/;
3000 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3001 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
3002 tracehead = trace.prev;
3003 return;
3004 }
3005 void parser___ReduceAction10___init(val_t self, int* init_table) {
3006 struct trace_t trace = {NULL, NULL, 1103, LOCATE_parser___ReduceAction10___init};
3007 trace.prev = tracehead; tracehead = &trace;
3008 trace.file = LOCATE_parser;
3009 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction10].i]) return;
3010 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction10].i] = 1;
3011 tracehead = trace.prev;
3012 return;
3013 }
3014 void parser___ReduceAction11___action(val_t self, val_t param0) {
3015 struct trace_t trace = {NULL, NULL, 1107, LOCATE_parser___ReduceAction11___action};
3016 val_t variable0;
3017 val_t variable1;
3018 val_t variable2;
3019 val_t variable3;
3020 val_t variable4;
3021 val_t variable5;
3022 val_t variable6;
3023 val_t variable7;
3024 val_t variable8;
3025 val_t variable9;
3026 val_t variable10;
3027 val_t variable11;
3028 val_t variable12;
3029 val_t variable13;
3030 val_t variable14;
3031 trace.prev = tracehead; tracehead = &trace;
3032 trace.file = LOCATE_parser;
3033 variable0 = param0;
3034 variable1 = NIT_NULL /*null*/;
3035 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3036 variable2 = variable3;
3037 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3038 variable3 = variable4;
3039 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3040 variable4 = variable5;
3041 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3042 variable5 = variable6;
3043 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3044 variable6 = variable7;
3045 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3046 variable7 = variable8;
3047 variable8 = variable5 /*nodearraylist1*/;
3048 variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
3049 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction11___action, LOCATE_parser, 1117); nit_exit(1);}
3050 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3051 variable9 = variable10;
3052 variable10 = variable4 /*nodearraylist2*/;
3053 variable11 = TAG_Bool(( variable10 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3054 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction11___action, LOCATE_parser, 1120); nit_exit(1);}
3055 variable11 = variable2 /*nodearraylist4*/;
3056 variable12 = TAG_Bool(( variable11 /*listnode6*/==NIT_NULL) || VAL_ISA( variable11 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3057 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction11___action, LOCATE_parser, 1122); nit_exit(1);}
3058 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3059 if (UNTAG_Bool(variable12)) { /*if*/
3060 ((array___AbstractArray___add_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode7*/, variable10 /*ppropdefnode5*/) /*AbstractArray::add*/;
3061 }
3062 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode6*/ == NIT_NULL /*null*/) || (( variable11 /*listnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3063 if (UNTAG_Bool(variable12)) { /*if*/
3064 variable12 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode7*/) /*AbstractArray::is_empty*/;
3065 if (UNTAG_Bool(variable12)) { /*if*/
3066 variable9 = variable11 /*listnode6*/ /*listnode7=*/;
3067 } else { /*if*/
3068 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode7*/, variable11 /*listnode6*/) /*IndexedCollection::append*/;
3069 }
3070 }
3071 variable13 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode7*/); /*new ATopClassdef*/
3072 variable12 = variable13;
3073 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3074 if (UNTAG_Bool(variable13)) { /*if*/
3075 ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode4*/) /*AbstractArray::add*/;
3076 }
3077 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode3*/, variable7 /*listnode8*/); /*new AModule*/
3078 variable13 = variable14;
3079 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
3080 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3081 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
3082 tracehead = trace.prev;
3083 return;
3084 }
3085 void parser___ReduceAction11___init(val_t self, int* init_table) {
3086 struct trace_t trace = {NULL, NULL, 1147, LOCATE_parser___ReduceAction11___init};
3087 trace.prev = tracehead; tracehead = &trace;
3088 trace.file = LOCATE_parser;
3089 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction11].i]) return;
3090 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction11].i] = 1;
3091 tracehead = trace.prev;
3092 return;
3093 }
3094 void parser___ReduceAction12___action(val_t self, val_t param0) {
3095 struct trace_t trace = {NULL, NULL, 1151, LOCATE_parser___ReduceAction12___action};
3096 val_t variable0;
3097 val_t variable1;
3098 val_t variable2;
3099 val_t variable3;
3100 val_t variable4;
3101 val_t variable5;
3102 val_t variable6;
3103 val_t variable7;
3104 val_t variable8;
3105 val_t variable9;
3106 val_t variable10;
3107 val_t variable11;
3108 val_t variable12;
3109 trace.prev = tracehead; tracehead = &trace;
3110 trace.file = LOCATE_parser;
3111 variable0 = param0;
3112 variable1 = NIT_NULL /*null*/;
3113 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3114 variable2 = variable3;
3115 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3116 variable3 = variable4;
3117 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3118 variable4 = variable5;
3119 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3120 variable5 = variable6;
3121 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3122 variable6 = variable7;
3123 variable7 = variable4 /*nodearraylist1*/;
3124 variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3125 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction12___action, LOCATE_parser, 1160); nit_exit(1);}
3126 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3127 if (UNTAG_Bool(variable8)) { /*if*/
3128 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*AbstractArray::is_empty*/;
3129 if (UNTAG_Bool(variable8)) { /*if*/
3130 variable5 = variable7 /*listnode3*/ /*listnode4=*/;
3131 } else { /*if*/
3132 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable7 /*listnode3*/) /*IndexedCollection::append*/;
3133 }
3134 }
3135 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3136 variable8 = variable9;
3137 variable9 = variable3 /*nodearraylist2*/;
3138 variable10 = TAG_Bool(( variable9 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3139 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction12___action, LOCATE_parser, 1170); nit_exit(1);}
3140 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3141 if (UNTAG_Bool(variable10)) { /*if*/
3142 ((array___AbstractArray___add_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode7*/, variable9 /*ppropdefnode6*/) /*AbstractArray::add*/;
3143 }
3144 variable11 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode7*/); /*new ATopClassdef*/
3145 variable10 = variable11;
3146 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3147 if (UNTAG_Bool(variable11)) { /*if*/
3148 ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode5*/) /*AbstractArray::add*/;
3149 }
3150 variable12 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode4*/, variable6 /*listnode8*/); /*new AModule*/
3151 variable11 = variable12;
3152 variable1 = variable11 /*pmodulenode1*/ /*node_list=*/;
3153 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3154 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
3155 tracehead = trace.prev;
3156 return;
3157 }
3158 void parser___ReduceAction12___init(val_t self, int* init_table) {
3159 struct trace_t trace = {NULL, NULL, 1188, LOCATE_parser___ReduceAction12___init};
3160 trace.prev = tracehead; tracehead = &trace;
3161 trace.file = LOCATE_parser;
3162 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction12].i]) return;
3163 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction12].i] = 1;
3164 tracehead = trace.prev;
3165 return;
3166 }
3167 void parser___ReduceAction13___action(val_t self, val_t param0) {
3168 struct trace_t trace = {NULL, NULL, 1192, LOCATE_parser___ReduceAction13___action};
3169 val_t variable0;
3170 val_t variable1;
3171 val_t variable2;
3172 val_t variable3;
3173 val_t variable4;
3174 val_t variable5;
3175 val_t variable6;
3176 val_t variable7;
3177 val_t variable8;
3178 val_t variable9;
3179 val_t variable10;
3180 val_t variable11;
3181 val_t variable12;
3182 val_t variable13;
3183 val_t variable14;
3184 trace.prev = tracehead; tracehead = &trace;
3185 trace.file = LOCATE_parser;
3186 variable0 = param0;
3187 variable1 = NIT_NULL /*null*/;
3188 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3189 variable2 = variable3;
3190 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3191 variable3 = variable4;
3192 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3193 variable4 = variable5;
3194 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3195 variable5 = variable6;
3196 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3197 variable6 = variable7;
3198 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3199 variable7 = variable8;
3200 variable8 = variable5 /*nodearraylist1*/;
3201 variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3202 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction13___action, LOCATE_parser, 1202); nit_exit(1);}
3203 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3204 if (UNTAG_Bool(variable9)) { /*if*/
3205 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*AbstractArray::is_empty*/;
3206 if (UNTAG_Bool(variable9)) { /*if*/
3207 variable6 = variable8 /*listnode3*/ /*listnode4=*/;
3208 } else { /*if*/
3209 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*IndexedCollection::append*/;
3210 }
3211 }
3212 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3213 variable9 = variable10;
3214 variable10 = variable4 /*nodearraylist2*/;
3215 variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3216 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction13___action, LOCATE_parser, 1212); nit_exit(1);}
3217 variable11 = variable2 /*nodearraylist4*/;
3218 variable12 = TAG_Bool(( variable11 /*listnode7*/==NIT_NULL) || VAL_ISA( variable11 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3219 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction13___action, LOCATE_parser, 1214); nit_exit(1);}
3220 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3221 if (UNTAG_Bool(variable12)) { /*if*/
3222 ((array___AbstractArray___add_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode8*/, variable10 /*ppropdefnode6*/) /*AbstractArray::add*/;
3223 }
3224 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode7*/ == NIT_NULL /*null*/) || (( variable11 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3225 if (UNTAG_Bool(variable12)) { /*if*/
3226 variable12 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode8*/) /*AbstractArray::is_empty*/;
3227 if (UNTAG_Bool(variable12)) { /*if*/
3228 variable9 = variable11 /*listnode7*/ /*listnode8=*/;
3229 } else { /*if*/
3230 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode8*/, variable11 /*listnode7*/) /*IndexedCollection::append*/;
3231 }
3232 }
3233 variable13 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode8*/); /*new ATopClassdef*/
3234 variable12 = variable13;
3235 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3236 if (UNTAG_Bool(variable13)) { /*if*/
3237 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode5*/) /*AbstractArray::add*/;
3238 }
3239 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode4*/, variable7 /*listnode9*/); /*new AModule*/
3240 variable13 = variable14;
3241 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
3242 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3243 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
3244 tracehead = trace.prev;
3245 return;
3246 }
3247 void parser___ReduceAction13___init(val_t self, int* init_table) {
3248 struct trace_t trace = {NULL, NULL, 1239, LOCATE_parser___ReduceAction13___init};
3249 trace.prev = tracehead; tracehead = &trace;
3250 trace.file = LOCATE_parser;
3251 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction13].i]) return;
3252 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction13].i] = 1;
3253 tracehead = trace.prev;
3254 return;
3255 }
3256 void parser___ReduceAction14___action(val_t self, val_t param0) {
3257 struct trace_t trace = {NULL, NULL, 1243, LOCATE_parser___ReduceAction14___action};
3258 val_t variable0;
3259 val_t variable1;
3260 val_t variable2;
3261 val_t variable3;
3262 val_t variable4;
3263 val_t variable5;
3264 val_t variable6;
3265 val_t variable7;
3266 val_t variable8;
3267 val_t variable9;
3268 val_t variable10;
3269 val_t variable11;
3270 val_t variable12;
3271 val_t variable13;
3272 val_t variable14;
3273 trace.prev = tracehead; tracehead = &trace;
3274 trace.file = LOCATE_parser;
3275 variable0 = param0;
3276 variable1 = NIT_NULL /*null*/;
3277 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3278 variable2 = variable3;
3279 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3280 variable3 = variable4;
3281 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3282 variable4 = variable5;
3283 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3284 variable5 = variable6;
3285 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3286 variable6 = variable7;
3287 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3288 variable7 = variable8;
3289 variable8 = variable5 /*nodearraylist1*/;
3290 variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
3291 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction14___action, LOCATE_parser, 1253); nit_exit(1);}
3292 variable9 = variable4 /*nodearraylist2*/;
3293 variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3294 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction14___action, LOCATE_parser, 1255); nit_exit(1);}
3295 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3296 if (UNTAG_Bool(variable10)) { /*if*/
3297 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*AbstractArray::is_empty*/;
3298 if (UNTAG_Bool(variable10)) { /*if*/
3299 variable6 = variable9 /*listnode3*/ /*listnode4=*/;
3300 } else { /*if*/
3301 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable9 /*listnode3*/) /*IndexedCollection::append*/;
3302 }
3303 }
3304 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3305 variable10 = variable11;
3306 variable11 = variable3 /*nodearraylist3*/;
3307 variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3308 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction14___action, LOCATE_parser, 1265); nit_exit(1);}
3309 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3310 if (UNTAG_Bool(variable12)) { /*if*/
3311 ((array___AbstractArray___add_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode7*/, variable11 /*ppropdefnode6*/) /*AbstractArray::add*/;
3312 }
3313 variable13 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode7*/); /*new ATopClassdef*/
3314 variable12 = variable13;
3315 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3316 if (UNTAG_Bool(variable13)) { /*if*/
3317 ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode5*/) /*AbstractArray::add*/;
3318 }
3319 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode4*/, variable7 /*listnode8*/); /*new AModule*/
3320 variable13 = variable14;
3321 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
3322 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3323 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
3324 tracehead = trace.prev;
3325 return;
3326 }
3327 void parser___ReduceAction14___init(val_t self, int* init_table) {
3328 struct trace_t trace = {NULL, NULL, 1283, LOCATE_parser___ReduceAction14___init};
3329 trace.prev = tracehead; tracehead = &trace;
3330 trace.file = LOCATE_parser;
3331 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction14].i]) return;
3332 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction14].i] = 1;
3333 tracehead = trace.prev;
3334 return;
3335 }
3336 void parser___ReduceAction15___action(val_t self, val_t param0) {
3337 struct trace_t trace = {NULL, NULL, 1287, LOCATE_parser___ReduceAction15___action};
3338 val_t variable0;
3339 val_t variable1;
3340 val_t variable2;
3341 val_t variable3;
3342 val_t variable4;
3343 val_t variable5;
3344 val_t variable6;
3345 val_t variable7;
3346 val_t variable8;
3347 val_t variable9;
3348 val_t variable10;
3349 val_t variable11;
3350 val_t variable12;
3351 val_t variable13;
3352 val_t variable14;
3353 val_t variable15;
3354 val_t variable16;
3355 trace.prev = tracehead; tracehead = &trace;
3356 trace.file = LOCATE_parser;
3357 variable0 = param0;
3358 variable1 = NIT_NULL /*null*/;
3359 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3360 variable2 = variable3;
3361 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3362 variable3 = variable4;
3363 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3364 variable4 = variable5;
3365 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3366 variable5 = variable6;
3367 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3368 variable6 = variable7;
3369 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3370 variable7 = variable8;
3371 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3372 variable8 = variable9;
3373 variable9 = variable6 /*nodearraylist1*/;
3374 variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
3375 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction15___action, LOCATE_parser, 1298); nit_exit(1);}
3376 variable10 = variable5 /*nodearraylist2*/;
3377 variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3378 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction15___action, LOCATE_parser, 1300); nit_exit(1);}
3379 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3380 if (UNTAG_Bool(variable11)) { /*if*/
3381 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
3382 if (UNTAG_Bool(variable11)) { /*if*/
3383 variable7 = variable10 /*listnode3*/ /*listnode4=*/;
3384 } else { /*if*/
3385 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable10 /*listnode3*/) /*IndexedCollection::append*/;
3386 }
3387 }
3388 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3389 variable11 = variable12;
3390 variable12 = variable4 /*nodearraylist3*/;
3391 variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3392 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction15___action, LOCATE_parser, 1310); nit_exit(1);}
3393 variable13 = variable2 /*nodearraylist5*/;
3394 variable14 = TAG_Bool(( variable13 /*listnode7*/==NIT_NULL) || VAL_ISA( variable13 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3395 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction15___action, LOCATE_parser, 1312); nit_exit(1);}
3396 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3397 if (UNTAG_Bool(variable14)) { /*if*/
3398 ((array___AbstractArray___add_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode8*/, variable12 /*ppropdefnode6*/) /*AbstractArray::add*/;
3399 }
3400 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode7*/ == NIT_NULL /*null*/) || (( variable13 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3401 if (UNTAG_Bool(variable14)) { /*if*/
3402 variable14 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*AbstractArray::is_empty*/;
3403 if (UNTAG_Bool(variable14)) { /*if*/
3404 variable11 = variable13 /*listnode7*/ /*listnode8=*/;
3405 } else { /*if*/
3406 ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable13 /*listnode7*/) /*IndexedCollection::append*/;
3407 }
3408 }
3409 variable15 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode8*/); /*new ATopClassdef*/
3410 variable14 = variable15;
3411 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3412 if (UNTAG_Bool(variable15)) { /*if*/
3413 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode5*/) /*AbstractArray::add*/;
3414 }
3415 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode4*/, variable8 /*listnode9*/); /*new AModule*/
3416 variable15 = variable16;
3417 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
3418 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3419 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
3420 tracehead = trace.prev;
3421 return;
3422 }
3423 void parser___ReduceAction15___init(val_t self, int* init_table) {
3424 struct trace_t trace = {NULL, NULL, 1337, LOCATE_parser___ReduceAction15___init};
3425 trace.prev = tracehead; tracehead = &trace;
3426 trace.file = LOCATE_parser;
3427 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction15].i]) return;
3428 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction15].i] = 1;
3429 tracehead = trace.prev;
3430 return;
3431 }
3432 void parser___ReduceAction16___action(val_t self, val_t param0) {
3433 struct trace_t trace = {NULL, NULL, 1341, LOCATE_parser___ReduceAction16___action};
3434 val_t variable0;
3435 val_t variable1;
3436 val_t variable2;
3437 val_t variable3;
3438 val_t variable4;
3439 val_t variable5;
3440 val_t variable6;
3441 val_t variable7;
3442 val_t variable8;
3443 val_t variable9;
3444 val_t variable10;
3445 val_t variable11;
3446 val_t variable12;
3447 trace.prev = tracehead; tracehead = &trace;
3448 trace.file = LOCATE_parser;
3449 variable0 = param0;
3450 variable1 = NIT_NULL /*null*/;
3451 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3452 variable2 = variable3;
3453 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3454 variable3 = variable4;
3455 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3456 variable4 = variable5;
3457 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3458 variable5 = variable6;
3459 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3460 variable6 = variable7;
3461 variable7 = variable4 /*nodearraylist1*/;
3462 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3463 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction16___action, LOCATE_parser, 1350); nit_exit(1);}
3464 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3465 variable8 = variable9;
3466 variable9 = variable3 /*nodearraylist2*/;
3467 variable10 = TAG_Bool(( variable9 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3468 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction16___action, LOCATE_parser, 1353); nit_exit(1);}
3469 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3470 if (UNTAG_Bool(variable10)) { /*if*/
3471 ((array___AbstractArray___add_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode7*/, variable9 /*ppropdefnode6*/) /*AbstractArray::add*/;
3472 }
3473 variable11 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode7*/); /*new ATopClassdef*/
3474 variable10 = variable11;
3475 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3476 if (UNTAG_Bool(variable11)) { /*if*/
3477 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode8*/) /*AbstractArray::is_empty*/;
3478 if (UNTAG_Bool(variable11)) { /*if*/
3479 variable6 = variable7 /*listnode4*/ /*listnode8=*/;
3480 } else { /*if*/
3481 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode8*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
3482 }
3483 }
3484 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3485 if (UNTAG_Bool(variable11)) { /*if*/
3486 ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode5*/) /*AbstractArray::add*/;
3487 }
3488 variable12 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode3*/, variable6 /*listnode8*/); /*new AModule*/
3489 variable11 = variable12;
3490 variable1 = variable11 /*pmodulenode1*/ /*node_list=*/;
3491 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3492 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
3493 tracehead = trace.prev;
3494 return;
3495 }
3496 void parser___ReduceAction16___init(val_t self, int* init_table) {
3497 struct trace_t trace = {NULL, NULL, 1378, LOCATE_parser___ReduceAction16___init};
3498 trace.prev = tracehead; tracehead = &trace;
3499 trace.file = LOCATE_parser;
3500 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction16].i]) return;
3501 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction16].i] = 1;
3502 tracehead = trace.prev;
3503 return;
3504 }
3505 void parser___ReduceAction17___action(val_t self, val_t param0) {
3506 struct trace_t trace = {NULL, NULL, 1382, LOCATE_parser___ReduceAction17___action};
3507 val_t variable0;
3508 val_t variable1;
3509 val_t variable2;
3510 val_t variable3;
3511 val_t variable4;
3512 val_t variable5;
3513 val_t variable6;
3514 val_t variable7;
3515 val_t variable8;
3516 val_t variable9;
3517 val_t variable10;
3518 val_t variable11;
3519 val_t variable12;
3520 val_t variable13;
3521 val_t variable14;
3522 trace.prev = tracehead; tracehead = &trace;
3523 trace.file = LOCATE_parser;
3524 variable0 = param0;
3525 variable1 = NIT_NULL /*null*/;
3526 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3527 variable2 = variable3;
3528 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3529 variable3 = variable4;
3530 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3531 variable4 = variable5;
3532 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3533 variable5 = variable6;
3534 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3535 variable6 = variable7;
3536 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3537 variable7 = variable8;
3538 variable8 = variable5 /*nodearraylist1*/;
3539 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3540 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction17___action, LOCATE_parser, 1392); nit_exit(1);}
3541 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3542 variable9 = variable10;
3543 variable10 = variable4 /*nodearraylist2*/;
3544 variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3545 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction17___action, LOCATE_parser, 1395); nit_exit(1);}
3546 variable11 = variable2 /*nodearraylist4*/;
3547 variable12 = TAG_Bool(( variable11 /*listnode7*/==NIT_NULL) || VAL_ISA( variable11 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3548 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction17___action, LOCATE_parser, 1397); nit_exit(1);}
3549 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3550 if (UNTAG_Bool(variable12)) { /*if*/
3551 ((array___AbstractArray___add_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode8*/, variable10 /*ppropdefnode6*/) /*AbstractArray::add*/;
3552 }
3553 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode7*/ == NIT_NULL /*null*/) || (( variable11 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3554 if (UNTAG_Bool(variable12)) { /*if*/
3555 variable12 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode8*/) /*AbstractArray::is_empty*/;
3556 if (UNTAG_Bool(variable12)) { /*if*/
3557 variable9 = variable11 /*listnode7*/ /*listnode8=*/;
3558 } else { /*if*/
3559 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode8*/, variable11 /*listnode7*/) /*IndexedCollection::append*/;
3560 }
3561 }
3562 variable13 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode8*/); /*new ATopClassdef*/
3563 variable12 = variable13;
3564 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3565 if (UNTAG_Bool(variable13)) { /*if*/
3566 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode9*/) /*AbstractArray::is_empty*/;
3567 if (UNTAG_Bool(variable13)) { /*if*/
3568 variable7 = variable8 /*listnode4*/ /*listnode9=*/;
3569 } else { /*if*/
3570 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode9*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
3571 }
3572 }
3573 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3574 if (UNTAG_Bool(variable13)) { /*if*/
3575 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode5*/) /*AbstractArray::add*/;
3576 }
3577 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode3*/, variable7 /*listnode9*/); /*new AModule*/
3578 variable13 = variable14;
3579 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
3580 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3581 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
3582 tracehead = trace.prev;
3583 return;
3584 }
3585 void parser___ReduceAction17___init(val_t self, int* init_table) {
3586 struct trace_t trace = {NULL, NULL, 1429, LOCATE_parser___ReduceAction17___init};
3587 trace.prev = tracehead; tracehead = &trace;
3588 trace.file = LOCATE_parser;
3589 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction17].i]) return;
3590 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction17].i] = 1;
3591 tracehead = trace.prev;
3592 return;
3593 }
3594 void parser___ReduceAction18___action(val_t self, val_t param0) {
3595 struct trace_t trace = {NULL, NULL, 1433, LOCATE_parser___ReduceAction18___action};
3596 val_t variable0;
3597 val_t variable1;
3598 val_t variable2;
3599 val_t variable3;
3600 val_t variable4;
3601 val_t variable5;
3602 val_t variable6;
3603 val_t variable7;
3604 val_t variable8;
3605 val_t variable9;
3606 val_t variable10;
3607 val_t variable11;
3608 val_t variable12;
3609 val_t variable13;
3610 val_t variable14;
3611 trace.prev = tracehead; tracehead = &trace;
3612 trace.file = LOCATE_parser;
3613 variable0 = param0;
3614 variable1 = NIT_NULL /*null*/;
3615 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3616 variable2 = variable3;
3617 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3618 variable3 = variable4;
3619 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3620 variable4 = variable5;
3621 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3622 variable5 = variable6;
3623 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3624 variable6 = variable7;
3625 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3626 variable7 = variable8;
3627 variable8 = variable5 /*nodearraylist1*/;
3628 variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
3629 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction18___action, LOCATE_parser, 1443); nit_exit(1);}
3630 variable9 = variable4 /*nodearraylist2*/;
3631 variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3632 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction18___action, LOCATE_parser, 1445); nit_exit(1);}
3633 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3634 variable10 = variable11;
3635 variable11 = variable3 /*nodearraylist3*/;
3636 variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3637 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction18___action, LOCATE_parser, 1448); nit_exit(1);}
3638 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3639 if (UNTAG_Bool(variable12)) { /*if*/
3640 ((array___AbstractArray___add_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode7*/, variable11 /*ppropdefnode6*/) /*AbstractArray::add*/;
3641 }
3642 variable13 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode7*/); /*new ATopClassdef*/
3643 variable12 = variable13;
3644 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3645 if (UNTAG_Bool(variable13)) { /*if*/
3646 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode8*/) /*AbstractArray::is_empty*/;
3647 if (UNTAG_Bool(variable13)) { /*if*/
3648 variable7 = variable9 /*listnode4*/ /*listnode8=*/;
3649 } else { /*if*/
3650 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode8*/, variable9 /*listnode4*/) /*IndexedCollection::append*/;
3651 }
3652 }
3653 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3654 if (UNTAG_Bool(variable13)) { /*if*/
3655 ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode5*/) /*AbstractArray::add*/;
3656 }
3657 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode3*/, variable7 /*listnode8*/); /*new AModule*/
3658 variable13 = variable14;
3659 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
3660 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3661 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
3662 tracehead = trace.prev;
3663 return;
3664 }
3665 void parser___ReduceAction18___init(val_t self, int* init_table) {
3666 struct trace_t trace = {NULL, NULL, 1473, LOCATE_parser___ReduceAction18___init};
3667 trace.prev = tracehead; tracehead = &trace;
3668 trace.file = LOCATE_parser;
3669 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction18].i]) return;
3670 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction18].i] = 1;
3671 tracehead = trace.prev;
3672 return;
3673 }
3674 void parser___ReduceAction19___action(val_t self, val_t param0) {
3675 struct trace_t trace = {NULL, NULL, 1477, LOCATE_parser___ReduceAction19___action};
3676 val_t variable0;
3677 val_t variable1;
3678 val_t variable2;
3679 val_t variable3;
3680 val_t variable4;
3681 val_t variable5;
3682 val_t variable6;
3683 val_t variable7;
3684 val_t variable8;
3685 val_t variable9;
3686 val_t variable10;
3687 val_t variable11;
3688 val_t variable12;
3689 val_t variable13;
3690 val_t variable14;
3691 val_t variable15;
3692 val_t variable16;
3693 trace.prev = tracehead; tracehead = &trace;
3694 trace.file = LOCATE_parser;
3695 variable0 = param0;
3696 variable1 = NIT_NULL /*null*/;
3697 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3698 variable2 = variable3;
3699 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3700 variable3 = variable4;
3701 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3702 variable4 = variable5;
3703 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3704 variable5 = variable6;
3705 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3706 variable6 = variable7;
3707 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3708 variable7 = variable8;
3709 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3710 variable8 = variable9;
3711 variable9 = variable6 /*nodearraylist1*/;
3712 variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
3713 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction19___action, LOCATE_parser, 1488); nit_exit(1);}
3714 variable10 = variable5 /*nodearraylist2*/;
3715 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3716 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction19___action, LOCATE_parser, 1490); nit_exit(1);}
3717 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3718 variable11 = variable12;
3719 variable12 = variable4 /*nodearraylist3*/;
3720 variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3721 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction19___action, LOCATE_parser, 1493); nit_exit(1);}
3722 variable13 = variable2 /*nodearraylist5*/;
3723 variable14 = TAG_Bool(( variable13 /*listnode7*/==NIT_NULL) || VAL_ISA( variable13 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3724 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction19___action, LOCATE_parser, 1495); nit_exit(1);}
3725 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3726 if (UNTAG_Bool(variable14)) { /*if*/
3727 ((array___AbstractArray___add_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode8*/, variable12 /*ppropdefnode6*/) /*AbstractArray::add*/;
3728 }
3729 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode7*/ == NIT_NULL /*null*/) || (( variable13 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3730 if (UNTAG_Bool(variable14)) { /*if*/
3731 variable14 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*AbstractArray::is_empty*/;
3732 if (UNTAG_Bool(variable14)) { /*if*/
3733 variable11 = variable13 /*listnode7*/ /*listnode8=*/;
3734 } else { /*if*/
3735 ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable13 /*listnode7*/) /*IndexedCollection::append*/;
3736 }
3737 }
3738 variable15 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode8*/); /*new ATopClassdef*/
3739 variable14 = variable15;
3740 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3741 if (UNTAG_Bool(variable15)) { /*if*/
3742 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode9*/) /*AbstractArray::is_empty*/;
3743 if (UNTAG_Bool(variable15)) { /*if*/
3744 variable8 = variable10 /*listnode4*/ /*listnode9=*/;
3745 } else { /*if*/
3746 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode9*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
3747 }
3748 }
3749 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3750 if (UNTAG_Bool(variable15)) { /*if*/
3751 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode5*/) /*AbstractArray::add*/;
3752 }
3753 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode3*/, variable8 /*listnode9*/); /*new AModule*/
3754 variable15 = variable16;
3755 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
3756 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3757 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
3758 tracehead = trace.prev;
3759 return;
3760 }
3761 void parser___ReduceAction19___init(val_t self, int* init_table) {
3762 struct trace_t trace = {NULL, NULL, 1527, LOCATE_parser___ReduceAction19___init};
3763 trace.prev = tracehead; tracehead = &trace;
3764 trace.file = LOCATE_parser;
3765 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction19].i]) return;
3766 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction19].i] = 1;
3767 tracehead = trace.prev;
3768 return;
3769 }
3770 void parser___ReduceAction20___action(val_t self, val_t param0) {
3771 struct trace_t trace = {NULL, NULL, 1531, LOCATE_parser___ReduceAction20___action};
3772 val_t variable0;
3773 val_t variable1;
3774 val_t variable2;
3775 val_t variable3;
3776 val_t variable4;
3777 val_t variable5;
3778 val_t variable6;
3779 val_t variable7;
3780 val_t variable8;
3781 val_t variable9;
3782 val_t variable10;
3783 val_t variable11;
3784 val_t variable12;
3785 val_t variable13;
3786 val_t variable14;
3787 trace.prev = tracehead; tracehead = &trace;
3788 trace.file = LOCATE_parser;
3789 variable0 = param0;
3790 variable1 = NIT_NULL /*null*/;
3791 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3792 variable2 = variable3;
3793 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3794 variable3 = variable4;
3795 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3796 variable4 = variable5;
3797 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3798 variable5 = variable6;
3799 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3800 variable6 = variable7;
3801 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3802 variable7 = variable8;
3803 variable8 = variable5 /*nodearraylist1*/;
3804 variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3805 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction20___action, LOCATE_parser, 1541); nit_exit(1);}
3806 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3807 if (UNTAG_Bool(variable9)) { /*if*/
3808 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*AbstractArray::is_empty*/;
3809 if (UNTAG_Bool(variable9)) { /*if*/
3810 variable6 = variable8 /*listnode3*/ /*listnode4=*/;
3811 } else { /*if*/
3812 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*IndexedCollection::append*/;
3813 }
3814 }
3815 variable9 = variable4 /*nodearraylist2*/;
3816 variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3817 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction20___action, LOCATE_parser, 1550); nit_exit(1);}
3818 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3819 variable10 = variable11;
3820 variable11 = variable3 /*nodearraylist3*/;
3821 variable12 = TAG_Bool(( variable11 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3822 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction20___action, LOCATE_parser, 1553); nit_exit(1);}
3823 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3824 if (UNTAG_Bool(variable12)) { /*if*/
3825 ((array___AbstractArray___add_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode8*/, variable11 /*ppropdefnode7*/) /*AbstractArray::add*/;
3826 }
3827 variable13 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode8*/); /*new ATopClassdef*/
3828 variable12 = variable13;
3829 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3830 if (UNTAG_Bool(variable13)) { /*if*/
3831 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode9*/) /*AbstractArray::is_empty*/;
3832 if (UNTAG_Bool(variable13)) { /*if*/
3833 variable7 = variable9 /*listnode5*/ /*listnode9=*/;
3834 } else { /*if*/
3835 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode9*/, variable9 /*listnode5*/) /*IndexedCollection::append*/;
3836 }
3837 }
3838 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3839 if (UNTAG_Bool(variable13)) { /*if*/
3840 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode6*/) /*AbstractArray::add*/;
3841 }
3842 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode4*/, variable7 /*listnode9*/); /*new AModule*/
3843 variable13 = variable14;
3844 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
3845 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3846 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
3847 tracehead = trace.prev;
3848 return;
3849 }
3850 void parser___ReduceAction20___init(val_t self, int* init_table) {
3851 struct trace_t trace = {NULL, NULL, 1578, LOCATE_parser___ReduceAction20___init};
3852 trace.prev = tracehead; tracehead = &trace;
3853 trace.file = LOCATE_parser;
3854 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction20].i]) return;
3855 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction20].i] = 1;
3856 tracehead = trace.prev;
3857 return;
3858 }
3859 void parser___ReduceAction21___action(val_t self, val_t param0) {
3860 struct trace_t trace = {NULL, NULL, 1582, LOCATE_parser___ReduceAction21___action};
3861 val_t variable0;
3862 val_t variable1;
3863 val_t variable2;
3864 val_t variable3;
3865 val_t variable4;
3866 val_t variable5;
3867 val_t variable6;
3868 val_t variable7;
3869 val_t variable8;
3870 val_t variable9;
3871 val_t variable10;
3872 val_t variable11;
3873 val_t variable12;
3874 val_t variable13;
3875 val_t variable14;
3876 val_t variable15;
3877 val_t variable16;
3878 trace.prev = tracehead; tracehead = &trace;
3879 trace.file = LOCATE_parser;
3880 variable0 = param0;
3881 variable1 = NIT_NULL /*null*/;
3882 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3883 variable2 = variable3;
3884 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3885 variable3 = variable4;
3886 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3887 variable4 = variable5;
3888 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3889 variable5 = variable6;
3890 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3891 variable6 = variable7;
3892 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3893 variable7 = variable8;
3894 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3895 variable8 = variable9;
3896 variable9 = variable6 /*nodearraylist1*/;
3897 variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3898 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction21___action, LOCATE_parser, 1593); nit_exit(1);}
3899 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3900 if (UNTAG_Bool(variable10)) { /*if*/
3901 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
3902 if (UNTAG_Bool(variable10)) { /*if*/
3903 variable7 = variable9 /*listnode3*/ /*listnode4=*/;
3904 } else { /*if*/
3905 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*IndexedCollection::append*/;
3906 }
3907 }
3908 variable10 = variable5 /*nodearraylist2*/;
3909 variable11 = TAG_Bool(( variable10 /*listnode5*/==NIT_NULL) || VAL_ISA( variable10 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3910 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction21___action, LOCATE_parser, 1602); nit_exit(1);}
3911 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3912 variable11 = variable12;
3913 variable12 = variable4 /*nodearraylist3*/;
3914 variable13 = TAG_Bool(( variable12 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
3915 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction21___action, LOCATE_parser, 1605); nit_exit(1);}
3916 variable13 = variable2 /*nodearraylist5*/;
3917 variable14 = TAG_Bool(( variable13 /*listnode8*/==NIT_NULL) || VAL_ISA( variable13 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
3918 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction21___action, LOCATE_parser, 1607); nit_exit(1);}
3919 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3920 if (UNTAG_Bool(variable14)) { /*if*/
3921 ((array___AbstractArray___add_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode9*/, variable12 /*ppropdefnode7*/) /*AbstractArray::add*/;
3922 }
3923 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode8*/ == NIT_NULL /*null*/) || (( variable13 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3924 if (UNTAG_Bool(variable14)) { /*if*/
3925 variable14 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode9*/) /*AbstractArray::is_empty*/;
3926 if (UNTAG_Bool(variable14)) { /*if*/
3927 variable11 = variable13 /*listnode8*/ /*listnode9=*/;
3928 } else { /*if*/
3929 ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode9*/, variable13 /*listnode8*/) /*IndexedCollection::append*/;
3930 }
3931 }
3932 variable15 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode9*/); /*new ATopClassdef*/
3933 variable14 = variable15;
3934 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode5*/ == NIT_NULL /*null*/) || (( variable10 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3935 if (UNTAG_Bool(variable15)) { /*if*/
3936 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode10*/) /*AbstractArray::is_empty*/;
3937 if (UNTAG_Bool(variable15)) { /*if*/
3938 variable8 = variable10 /*listnode5*/ /*listnode10=*/;
3939 } else { /*if*/
3940 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode10*/, variable10 /*listnode5*/) /*IndexedCollection::append*/;
3941 }
3942 }
3943 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
3944 if (UNTAG_Bool(variable15)) { /*if*/
3945 ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode6*/) /*AbstractArray::add*/;
3946 }
3947 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode4*/, variable8 /*listnode10*/); /*new AModule*/
3948 variable15 = variable16;
3949 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
3950 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
3951 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
3952 tracehead = trace.prev;
3953 return;
3954 }
3955 void parser___ReduceAction21___init(val_t self, int* init_table) {
3956 struct trace_t trace = {NULL, NULL, 1639, LOCATE_parser___ReduceAction21___init};
3957 trace.prev = tracehead; tracehead = &trace;
3958 trace.file = LOCATE_parser;
3959 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction21].i]) return;
3960 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction21].i] = 1;
3961 tracehead = trace.prev;
3962 return;
3963 }
3964 void parser___ReduceAction22___action(val_t self, val_t param0) {
3965 struct trace_t trace = {NULL, NULL, 1643, LOCATE_parser___ReduceAction22___action};
3966 val_t variable0;
3967 val_t variable1;
3968 val_t variable2;
3969 val_t variable3;
3970 val_t variable4;
3971 val_t variable5;
3972 val_t variable6;
3973 val_t variable7;
3974 val_t variable8;
3975 val_t variable9;
3976 val_t variable10;
3977 val_t variable11;
3978 val_t variable12;
3979 val_t variable13;
3980 val_t variable14;
3981 val_t variable15;
3982 val_t variable16;
3983 trace.prev = tracehead; tracehead = &trace;
3984 trace.file = LOCATE_parser;
3985 variable0 = param0;
3986 variable1 = NIT_NULL /*null*/;
3987 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3988 variable2 = variable3;
3989 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3990 variable3 = variable4;
3991 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3992 variable4 = variable5;
3993 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3994 variable5 = variable6;
3995 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
3996 variable6 = variable7;
3997 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
3998 variable7 = variable8;
3999 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4000 variable8 = variable9;
4001 variable9 = variable6 /*nodearraylist1*/;
4002 variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4003 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction22___action, LOCATE_parser, 1654); nit_exit(1);}
4004 variable10 = variable5 /*nodearraylist2*/;
4005 variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4006 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction22___action, LOCATE_parser, 1656); nit_exit(1);}
4007 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4008 if (UNTAG_Bool(variable11)) { /*if*/
4009 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
4010 if (UNTAG_Bool(variable11)) { /*if*/
4011 variable7 = variable10 /*listnode3*/ /*listnode4=*/;
4012 } else { /*if*/
4013 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable10 /*listnode3*/) /*IndexedCollection::append*/;
4014 }
4015 }
4016 variable11 = variable4 /*nodearraylist3*/;
4017 variable12 = TAG_Bool(( variable11 /*listnode5*/==NIT_NULL) || VAL_ISA( variable11 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4018 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction22___action, LOCATE_parser, 1665); nit_exit(1);}
4019 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4020 variable12 = variable13;
4021 variable13 = variable3 /*nodearraylist4*/;
4022 variable14 = TAG_Bool(( variable13 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
4023 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction22___action, LOCATE_parser, 1668); nit_exit(1);}
4024 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4025 if (UNTAG_Bool(variable14)) { /*if*/
4026 ((array___AbstractArray___add_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode8*/, variable13 /*ppropdefnode7*/) /*AbstractArray::add*/;
4027 }
4028 variable15 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode8*/); /*new ATopClassdef*/
4029 variable14 = variable15;
4030 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode5*/ == NIT_NULL /*null*/) || (( variable11 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4031 if (UNTAG_Bool(variable15)) { /*if*/
4032 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode9*/) /*AbstractArray::is_empty*/;
4033 if (UNTAG_Bool(variable15)) { /*if*/
4034 variable8 = variable11 /*listnode5*/ /*listnode9=*/;
4035 } else { /*if*/
4036 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode9*/, variable11 /*listnode5*/) /*IndexedCollection::append*/;
4037 }
4038 }
4039 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4040 if (UNTAG_Bool(variable15)) { /*if*/
4041 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode6*/) /*AbstractArray::add*/;
4042 }
4043 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode4*/, variable8 /*listnode9*/); /*new AModule*/
4044 variable15 = variable16;
4045 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
4046 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4047 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
4048 tracehead = trace.prev;
4049 return;
4050 }
4051 void parser___ReduceAction22___init(val_t self, int* init_table) {
4052 struct trace_t trace = {NULL, NULL, 1693, LOCATE_parser___ReduceAction22___init};
4053 trace.prev = tracehead; tracehead = &trace;
4054 trace.file = LOCATE_parser;
4055 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction22].i]) return;
4056 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction22].i] = 1;
4057 tracehead = trace.prev;
4058 return;
4059 }
4060 void parser___ReduceAction23___action(val_t self, val_t param0) {
4061 struct trace_t trace = {NULL, NULL, 1697, LOCATE_parser___ReduceAction23___action};
4062 val_t variable0;
4063 val_t variable1;
4064 val_t variable2;
4065 val_t variable3;
4066 val_t variable4;
4067 val_t variable5;
4068 val_t variable6;
4069 val_t variable7;
4070 val_t variable8;
4071 val_t variable9;
4072 val_t variable10;
4073 val_t variable11;
4074 val_t variable12;
4075 val_t variable13;
4076 val_t variable14;
4077 val_t variable15;
4078 val_t variable16;
4079 val_t variable17;
4080 val_t variable18;
4081 trace.prev = tracehead; tracehead = &trace;
4082 trace.file = LOCATE_parser;
4083 variable0 = param0;
4084 variable1 = NIT_NULL /*null*/;
4085 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4086 variable2 = variable3;
4087 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4088 variable3 = variable4;
4089 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4090 variable4 = variable5;
4091 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4092 variable5 = variable6;
4093 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4094 variable6 = variable7;
4095 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4096 variable7 = variable8;
4097 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4098 variable8 = variable9;
4099 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4100 variable9 = variable10;
4101 variable10 = variable7 /*nodearraylist1*/;
4102 variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4103 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction23___action, LOCATE_parser, 1709); nit_exit(1);}
4104 variable11 = variable6 /*nodearraylist2*/;
4105 variable12 = TAG_Bool(( variable11 /*listnode3*/==NIT_NULL) || VAL_ISA( variable11 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4106 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction23___action, LOCATE_parser, 1711); nit_exit(1);}
4107 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode3*/ == NIT_NULL /*null*/) || (( variable11 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4108 if (UNTAG_Bool(variable12)) { /*if*/
4109 variable12 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*AbstractArray::is_empty*/;
4110 if (UNTAG_Bool(variable12)) { /*if*/
4111 variable8 = variable11 /*listnode3*/ /*listnode4=*/;
4112 } else { /*if*/
4113 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable11 /*listnode3*/) /*IndexedCollection::append*/;
4114 }
4115 }
4116 variable12 = variable5 /*nodearraylist3*/;
4117 variable13 = TAG_Bool(( variable12 /*listnode5*/==NIT_NULL) || VAL_ISA( variable12 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4118 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction23___action, LOCATE_parser, 1720); nit_exit(1);}
4119 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4120 variable13 = variable14;
4121 variable14 = variable4 /*nodearraylist4*/;
4122 variable15 = TAG_Bool(( variable14 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
4123 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction23___action, LOCATE_parser, 1723); nit_exit(1);}
4124 variable15 = variable2 /*nodearraylist6*/;
4125 variable16 = TAG_Bool(( variable15 /*listnode8*/==NIT_NULL) || VAL_ISA( variable15 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4126 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction23___action, LOCATE_parser, 1725); nit_exit(1);}
4127 variable16 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable14 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4128 if (UNTAG_Bool(variable16)) { /*if*/
4129 ((array___AbstractArray___add_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode9*/, variable14 /*ppropdefnode7*/) /*AbstractArray::add*/;
4130 }
4131 variable16 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*listnode8*/ == NIT_NULL /*null*/) || (( variable15 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable15 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4132 if (UNTAG_Bool(variable16)) { /*if*/
4133 variable16 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode9*/) /*AbstractArray::is_empty*/;
4134 if (UNTAG_Bool(variable16)) { /*if*/
4135 variable13 = variable15 /*listnode8*/ /*listnode9=*/;
4136 } else { /*if*/
4137 ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode9*/, variable15 /*listnode8*/) /*IndexedCollection::append*/;
4138 }
4139 }
4140 variable17 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable13 /*listnode9*/); /*new ATopClassdef*/
4141 variable16 = variable17;
4142 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode5*/ == NIT_NULL /*null*/) || (( variable12 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4143 if (UNTAG_Bool(variable17)) { /*if*/
4144 variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode10*/) /*AbstractArray::is_empty*/;
4145 if (UNTAG_Bool(variable17)) { /*if*/
4146 variable9 = variable12 /*listnode5*/ /*listnode10=*/;
4147 } else { /*if*/
4148 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode10*/, variable12 /*listnode5*/) /*IndexedCollection::append*/;
4149 }
4150 }
4151 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4152 if (UNTAG_Bool(variable17)) { /*if*/
4153 ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode6*/) /*AbstractArray::add*/;
4154 }
4155 variable18 = NEW_AModule_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode4*/, variable9 /*listnode10*/); /*new AModule*/
4156 variable17 = variable18;
4157 variable1 = variable17 /*pmodulenode1*/ /*node_list=*/;
4158 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4159 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
4160 tracehead = trace.prev;
4161 return;
4162 }
4163 void parser___ReduceAction23___init(val_t self, int* init_table) {
4164 struct trace_t trace = {NULL, NULL, 1757, LOCATE_parser___ReduceAction23___init};
4165 trace.prev = tracehead; tracehead = &trace;
4166 trace.file = LOCATE_parser;
4167 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction23].i]) return;
4168 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction23].i] = 1;
4169 tracehead = trace.prev;
4170 return;
4171 }
4172 void parser___ReduceAction24___action(val_t self, val_t param0) {
4173 struct trace_t trace = {NULL, NULL, 1761, LOCATE_parser___ReduceAction24___action};
4174 val_t variable0;
4175 val_t variable1;
4176 val_t variable2;
4177 val_t variable3;
4178 val_t variable4;
4179 val_t variable5;
4180 val_t variable6;
4181 val_t variable7;
4182 trace.prev = tracehead; tracehead = &trace;
4183 trace.file = LOCATE_parser;
4184 variable0 = param0;
4185 variable1 = NIT_NULL /*null*/;
4186 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4187 variable2 = variable3;
4188 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4189 variable3 = variable4;
4190 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4191 variable4 = variable5;
4192 variable5 = variable2 /*nodearraylist1*/;
4193 variable6 = TAG_Bool(( variable5 /*pclassdefnode4*/==NIT_NULL) || VAL_ISA( variable5 /*pclassdefnode4*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4194 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction24___action, LOCATE_parser, 1768); nit_exit(1);}
4195 variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable5 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable5 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4196 if (UNTAG_Bool(variable6)) { /*if*/
4197 ((array___AbstractArray___add_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode5*/, variable5 /*pclassdefnode4*/) /*AbstractArray::add*/;
4198 }
4199 variable7 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable3 /*listnode3*/, variable4 /*listnode5*/); /*new AModule*/
4200 variable6 = variable7;
4201 variable1 = variable6 /*pmodulenode1*/ /*node_list=*/;
4202 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4203 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
4204 tracehead = trace.prev;
4205 return;
4206 }
4207 void parser___ReduceAction24___init(val_t self, int* init_table) {
4208 struct trace_t trace = {NULL, NULL, 1780, LOCATE_parser___ReduceAction24___init};
4209 trace.prev = tracehead; tracehead = &trace;
4210 trace.file = LOCATE_parser;
4211 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction24].i]) return;
4212 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction24].i] = 1;
4213 tracehead = trace.prev;
4214 return;
4215 }
4216 void parser___ReduceAction25___action(val_t self, val_t param0) {
4217 struct trace_t trace = {NULL, NULL, 1784, LOCATE_parser___ReduceAction25___action};
4218 val_t variable0;
4219 val_t variable1;
4220 val_t variable2;
4221 val_t variable3;
4222 val_t variable4;
4223 val_t variable5;
4224 val_t variable6;
4225 val_t variable7;
4226 val_t variable8;
4227 val_t variable9;
4228 trace.prev = tracehead; tracehead = &trace;
4229 trace.file = LOCATE_parser;
4230 variable0 = param0;
4231 variable1 = NIT_NULL /*null*/;
4232 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4233 variable2 = variable3;
4234 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4235 variable3 = variable4;
4236 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4237 variable4 = variable5;
4238 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4239 variable5 = variable6;
4240 variable6 = variable3 /*nodearraylist1*/;
4241 variable7 = TAG_Bool(( variable6 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4242 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction25___action, LOCATE_parser, 1792); nit_exit(1);}
4243 variable7 = variable2 /*nodearraylist2*/;
4244 variable8 = TAG_Bool(( variable7 /*pclassdefnode4*/==NIT_NULL) || VAL_ISA( variable7 /*pclassdefnode4*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4245 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction25___action, LOCATE_parser, 1794); nit_exit(1);}
4246 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable7 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4247 if (UNTAG_Bool(variable8)) { /*if*/
4248 ((array___AbstractArray___add_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode5*/, variable7 /*pclassdefnode4*/) /*AbstractArray::add*/;
4249 }
4250 variable9 = NEW_AModule_parser_prod___AModule___init_amodule( variable6 /*ppackagedeclnode2*/, variable4 /*listnode3*/, variable5 /*listnode5*/); /*new AModule*/
4251 variable8 = variable9;
4252 variable1 = variable8 /*pmodulenode1*/ /*node_list=*/;
4253 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4254 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
4255 tracehead = trace.prev;
4256 return;
4257 }
4258 void parser___ReduceAction25___init(val_t self, int* init_table) {
4259 struct trace_t trace = {NULL, NULL, 1806, LOCATE_parser___ReduceAction25___init};
4260 trace.prev = tracehead; tracehead = &trace;
4261 trace.file = LOCATE_parser;
4262 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction25].i]) return;
4263 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction25].i] = 1;
4264 tracehead = trace.prev;
4265 return;
4266 }
4267 void parser___ReduceAction26___action(val_t self, val_t param0) {
4268 struct trace_t trace = {NULL, NULL, 1810, LOCATE_parser___ReduceAction26___action};
4269 val_t variable0;
4270 val_t variable1;
4271 val_t variable2;
4272 val_t variable3;
4273 val_t variable4;
4274 val_t variable5;
4275 val_t variable6;
4276 val_t variable7;
4277 val_t variable8;
4278 val_t variable9;
4279 trace.prev = tracehead; tracehead = &trace;
4280 trace.file = LOCATE_parser;
4281 variable0 = param0;
4282 variable1 = NIT_NULL /*null*/;
4283 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4284 variable2 = variable3;
4285 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4286 variable3 = variable4;
4287 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4288 variable4 = variable5;
4289 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4290 variable5 = variable6;
4291 variable6 = variable3 /*nodearraylist1*/;
4292 variable7 = TAG_Bool(( variable6 /*listnode3*/==NIT_NULL) || VAL_ISA( variable6 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4293 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction26___action, LOCATE_parser, 1818); nit_exit(1);}
4294 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode3*/ == NIT_NULL /*null*/) || (( variable6 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4295 if (UNTAG_Bool(variable7)) { /*if*/
4296 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*AbstractArray::is_empty*/;
4297 if (UNTAG_Bool(variable7)) { /*if*/
4298 variable4 = variable6 /*listnode3*/ /*listnode4=*/;
4299 } else { /*if*/
4300 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable6 /*listnode3*/) /*IndexedCollection::append*/;
4301 }
4302 }
4303 variable7 = variable2 /*nodearraylist2*/;
4304 variable8 = TAG_Bool(( variable7 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable7 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4305 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction26___action, LOCATE_parser, 1827); nit_exit(1);}
4306 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable7 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4307 if (UNTAG_Bool(variable8)) { /*if*/
4308 ((array___AbstractArray___add_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode6*/, variable7 /*pclassdefnode5*/) /*AbstractArray::add*/;
4309 }
4310 variable9 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode4*/, variable5 /*listnode6*/); /*new AModule*/
4311 variable8 = variable9;
4312 variable1 = variable8 /*pmodulenode1*/ /*node_list=*/;
4313 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4314 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
4315 tracehead = trace.prev;
4316 return;
4317 }
4318 void parser___ReduceAction26___init(val_t self, int* init_table) {
4319 struct trace_t trace = {NULL, NULL, 1839, LOCATE_parser___ReduceAction26___init};
4320 trace.prev = tracehead; tracehead = &trace;
4321 trace.file = LOCATE_parser;
4322 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction26].i]) return;
4323 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction26].i] = 1;
4324 tracehead = trace.prev;
4325 return;
4326 }
4327 void parser___ReduceAction27___action(val_t self, val_t param0) {
4328 struct trace_t trace = {NULL, NULL, 1843, LOCATE_parser___ReduceAction27___action};
4329 val_t variable0;
4330 val_t variable1;
4331 val_t variable2;
4332 val_t variable3;
4333 val_t variable4;
4334 val_t variable5;
4335 val_t variable6;
4336 val_t variable7;
4337 val_t variable8;
4338 val_t variable9;
4339 val_t variable10;
4340 val_t variable11;
4341 trace.prev = tracehead; tracehead = &trace;
4342 trace.file = LOCATE_parser;
4343 variable0 = param0;
4344 variable1 = NIT_NULL /*null*/;
4345 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4346 variable2 = variable3;
4347 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4348 variable3 = variable4;
4349 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4350 variable4 = variable5;
4351 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4352 variable5 = variable6;
4353 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4354 variable6 = variable7;
4355 variable7 = variable4 /*nodearraylist1*/;
4356 variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4357 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction27___action, LOCATE_parser, 1852); nit_exit(1);}
4358 variable8 = variable3 /*nodearraylist2*/;
4359 variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4360 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction27___action, LOCATE_parser, 1854); nit_exit(1);}
4361 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4362 if (UNTAG_Bool(variable9)) { /*if*/
4363 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*AbstractArray::is_empty*/;
4364 if (UNTAG_Bool(variable9)) { /*if*/
4365 variable5 = variable8 /*listnode3*/ /*listnode4=*/;
4366 } else { /*if*/
4367 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable8 /*listnode3*/) /*IndexedCollection::append*/;
4368 }
4369 }
4370 variable9 = variable2 /*nodearraylist3*/;
4371 variable10 = TAG_Bool(( variable9 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4372 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction27___action, LOCATE_parser, 1863); nit_exit(1);}
4373 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4374 if (UNTAG_Bool(variable10)) { /*if*/
4375 ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable9 /*pclassdefnode5*/) /*AbstractArray::add*/;
4376 }
4377 variable11 = NEW_AModule_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode4*/, variable6 /*listnode6*/); /*new AModule*/
4378 variable10 = variable11;
4379 variable1 = variable10 /*pmodulenode1*/ /*node_list=*/;
4380 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4381 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
4382 tracehead = trace.prev;
4383 return;
4384 }
4385 void parser___ReduceAction27___init(val_t self, int* init_table) {
4386 struct trace_t trace = {NULL, NULL, 1875, LOCATE_parser___ReduceAction27___init};
4387 trace.prev = tracehead; tracehead = &trace;
4388 trace.file = LOCATE_parser;
4389 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction27].i]) return;
4390 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction27].i] = 1;
4391 tracehead = trace.prev;
4392 return;
4393 }
4394 void parser___ReduceAction28___action(val_t self, val_t param0) {
4395 struct trace_t trace = {NULL, NULL, 1879, LOCATE_parser___ReduceAction28___action};
4396 val_t variable0;
4397 val_t variable1;
4398 val_t variable2;
4399 val_t variable3;
4400 val_t variable4;
4401 val_t variable5;
4402 val_t variable6;
4403 val_t variable7;
4404 val_t variable8;
4405 val_t variable9;
4406 trace.prev = tracehead; tracehead = &trace;
4407 trace.file = LOCATE_parser;
4408 variable0 = param0;
4409 variable1 = NIT_NULL /*null*/;
4410 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4411 variable2 = variable3;
4412 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4413 variable3 = variable4;
4414 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4415 variable4 = variable5;
4416 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4417 variable5 = variable6;
4418 variable6 = variable3 /*nodearraylist1*/;
4419 variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4420 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction28___action, LOCATE_parser, 1887); nit_exit(1);}
4421 variable7 = variable2 /*nodearraylist2*/;
4422 variable8 = TAG_Bool(( variable7 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable7 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4423 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction28___action, LOCATE_parser, 1889); nit_exit(1);}
4424 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4425 if (UNTAG_Bool(variable8)) { /*if*/
4426 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode6*/) /*AbstractArray::is_empty*/;
4427 if (UNTAG_Bool(variable8)) { /*if*/
4428 variable5 = variable6 /*listnode4*/ /*listnode6=*/;
4429 } else { /*if*/
4430 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode6*/, variable6 /*listnode4*/) /*IndexedCollection::append*/;
4431 }
4432 }
4433 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable7 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable7 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4434 if (UNTAG_Bool(variable8)) { /*if*/
4435 ((array___AbstractArray___add_t)CALL( variable5 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode6*/, variable7 /*pclassdefnode5*/) /*AbstractArray::add*/;
4436 }
4437 variable9 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable4 /*listnode3*/, variable5 /*listnode6*/); /*new AModule*/
4438 variable8 = variable9;
4439 variable1 = variable8 /*pmodulenode1*/ /*node_list=*/;
4440 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4441 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
4442 tracehead = trace.prev;
4443 return;
4444 }
4445 void parser___ReduceAction28___init(val_t self, int* init_table) {
4446 struct trace_t trace = {NULL, NULL, 1908, LOCATE_parser___ReduceAction28___init};
4447 trace.prev = tracehead; tracehead = &trace;
4448 trace.file = LOCATE_parser;
4449 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction28].i]) return;
4450 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction28].i] = 1;
4451 tracehead = trace.prev;
4452 return;
4453 }
4454 void parser___ReduceAction29___action(val_t self, val_t param0) {
4455 struct trace_t trace = {NULL, NULL, 1912, LOCATE_parser___ReduceAction29___action};
4456 val_t variable0;
4457 val_t variable1;
4458 val_t variable2;
4459 val_t variable3;
4460 val_t variable4;
4461 val_t variable5;
4462 val_t variable6;
4463 val_t variable7;
4464 val_t variable8;
4465 val_t variable9;
4466 val_t variable10;
4467 val_t variable11;
4468 trace.prev = tracehead; tracehead = &trace;
4469 trace.file = LOCATE_parser;
4470 variable0 = param0;
4471 variable1 = NIT_NULL /*null*/;
4472 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4473 variable2 = variable3;
4474 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4475 variable3 = variable4;
4476 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4477 variable4 = variable5;
4478 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4479 variable5 = variable6;
4480 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4481 variable6 = variable7;
4482 variable7 = variable4 /*nodearraylist1*/;
4483 variable8 = TAG_Bool(( variable7 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable7 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4484 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction29___action, LOCATE_parser, 1921); nit_exit(1);}
4485 variable8 = variable3 /*nodearraylist2*/;
4486 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4487 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction29___action, LOCATE_parser, 1923); nit_exit(1);}
4488 variable9 = variable2 /*nodearraylist3*/;
4489 variable10 = TAG_Bool(( variable9 /*pclassdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*pclassdefnode5*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4490 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction29___action, LOCATE_parser, 1925); nit_exit(1);}
4491 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4492 if (UNTAG_Bool(variable10)) { /*if*/
4493 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*AbstractArray::is_empty*/;
4494 if (UNTAG_Bool(variable10)) { /*if*/
4495 variable6 = variable8 /*listnode4*/ /*listnode6=*/;
4496 } else { /*if*/
4497 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
4498 }
4499 }
4500 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4501 if (UNTAG_Bool(variable10)) { /*if*/
4502 ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable9 /*pclassdefnode5*/) /*AbstractArray::add*/;
4503 }
4504 variable11 = NEW_AModule_parser_prod___AModule___init_amodule( variable7 /*ppackagedeclnode2*/, variable5 /*listnode3*/, variable6 /*listnode6*/); /*new AModule*/
4505 variable10 = variable11;
4506 variable1 = variable10 /*pmodulenode1*/ /*node_list=*/;
4507 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4508 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
4509 tracehead = trace.prev;
4510 return;
4511 }
4512 void parser___ReduceAction29___init(val_t self, int* init_table) {
4513 struct trace_t trace = {NULL, NULL, 1944, LOCATE_parser___ReduceAction29___init};
4514 trace.prev = tracehead; tracehead = &trace;
4515 trace.file = LOCATE_parser;
4516 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction29].i]) return;
4517 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction29].i] = 1;
4518 tracehead = trace.prev;
4519 return;
4520 }
4521 void parser___ReduceAction30___action(val_t self, val_t param0) {
4522 struct trace_t trace = {NULL, NULL, 1948, LOCATE_parser___ReduceAction30___action};
4523 val_t variable0;
4524 val_t variable1;
4525 val_t variable2;
4526 val_t variable3;
4527 val_t variable4;
4528 val_t variable5;
4529 val_t variable6;
4530 val_t variable7;
4531 val_t variable8;
4532 val_t variable9;
4533 val_t variable10;
4534 val_t variable11;
4535 trace.prev = tracehead; tracehead = &trace;
4536 trace.file = LOCATE_parser;
4537 variable0 = param0;
4538 variable1 = NIT_NULL /*null*/;
4539 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4540 variable2 = variable3;
4541 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4542 variable3 = variable4;
4543 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4544 variable4 = variable5;
4545 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4546 variable5 = variable6;
4547 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4548 variable6 = variable7;
4549 variable7 = variable4 /*nodearraylist1*/;
4550 variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4551 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction30___action, LOCATE_parser, 1957); nit_exit(1);}
4552 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4553 if (UNTAG_Bool(variable8)) { /*if*/
4554 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode4*/) /*AbstractArray::is_empty*/;
4555 if (UNTAG_Bool(variable8)) { /*if*/
4556 variable5 = variable7 /*listnode3*/ /*listnode4=*/;
4557 } else { /*if*/
4558 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode4*/, variable7 /*listnode3*/) /*IndexedCollection::append*/;
4559 }
4560 }
4561 variable8 = variable3 /*nodearraylist2*/;
4562 variable9 = TAG_Bool(( variable8 /*listnode5*/==NIT_NULL) || VAL_ISA( variable8 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4563 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction30___action, LOCATE_parser, 1966); nit_exit(1);}
4564 variable9 = variable2 /*nodearraylist3*/;
4565 variable10 = TAG_Bool(( variable9 /*pclassdefnode6*/==NIT_NULL) || VAL_ISA( variable9 /*pclassdefnode6*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4566 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction30___action, LOCATE_parser, 1968); nit_exit(1);}
4567 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode5*/ == NIT_NULL /*null*/) || (( variable8 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4568 if (UNTAG_Bool(variable10)) { /*if*/
4569 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode7*/) /*AbstractArray::is_empty*/;
4570 if (UNTAG_Bool(variable10)) { /*if*/
4571 variable6 = variable8 /*listnode5*/ /*listnode7=*/;
4572 } else { /*if*/
4573 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode7*/, variable8 /*listnode5*/) /*IndexedCollection::append*/;
4574 }
4575 }
4576 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4577 if (UNTAG_Bool(variable10)) { /*if*/
4578 ((array___AbstractArray___add_t)CALL( variable6 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode7*/, variable9 /*pclassdefnode6*/) /*AbstractArray::add*/;
4579 }
4580 variable11 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode4*/, variable6 /*listnode7*/); /*new AModule*/
4581 variable10 = variable11;
4582 variable1 = variable10 /*pmodulenode1*/ /*node_list=*/;
4583 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4584 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
4585 tracehead = trace.prev;
4586 return;
4587 }
4588 void parser___ReduceAction30___init(val_t self, int* init_table) {
4589 struct trace_t trace = {NULL, NULL, 1987, LOCATE_parser___ReduceAction30___init};
4590 trace.prev = tracehead; tracehead = &trace;
4591 trace.file = LOCATE_parser;
4592 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction30].i]) return;
4593 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction30].i] = 1;
4594 tracehead = trace.prev;
4595 return;
4596 }
4597 void parser___ReduceAction31___action(val_t self, val_t param0) {
4598 struct trace_t trace = {NULL, NULL, 1991, LOCATE_parser___ReduceAction31___action};
4599 val_t variable0;
4600 val_t variable1;
4601 val_t variable2;
4602 val_t variable3;
4603 val_t variable4;
4604 val_t variable5;
4605 val_t variable6;
4606 val_t variable7;
4607 val_t variable8;
4608 val_t variable9;
4609 val_t variable10;
4610 val_t variable11;
4611 val_t variable12;
4612 val_t variable13;
4613 trace.prev = tracehead; tracehead = &trace;
4614 trace.file = LOCATE_parser;
4615 variable0 = param0;
4616 variable1 = NIT_NULL /*null*/;
4617 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4618 variable2 = variable3;
4619 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4620 variable3 = variable4;
4621 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4622 variable4 = variable5;
4623 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4624 variable5 = variable6;
4625 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4626 variable6 = variable7;
4627 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4628 variable7 = variable8;
4629 variable8 = variable5 /*nodearraylist1*/;
4630 variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4631 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction31___action, LOCATE_parser, 2001); nit_exit(1);}
4632 variable9 = variable4 /*nodearraylist2*/;
4633 variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4634 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction31___action, LOCATE_parser, 2003); nit_exit(1);}
4635 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4636 if (UNTAG_Bool(variable10)) { /*if*/
4637 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*AbstractArray::is_empty*/;
4638 if (UNTAG_Bool(variable10)) { /*if*/
4639 variable6 = variable9 /*listnode3*/ /*listnode4=*/;
4640 } else { /*if*/
4641 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable9 /*listnode3*/) /*IndexedCollection::append*/;
4642 }
4643 }
4644 variable10 = variable3 /*nodearraylist3*/;
4645 variable11 = TAG_Bool(( variable10 /*listnode5*/==NIT_NULL) || VAL_ISA( variable10 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4646 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction31___action, LOCATE_parser, 2012); nit_exit(1);}
4647 variable11 = variable2 /*nodearraylist4*/;
4648 variable12 = TAG_Bool(( variable11 /*pclassdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*pclassdefnode6*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4649 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction31___action, LOCATE_parser, 2014); nit_exit(1);}
4650 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode5*/ == NIT_NULL /*null*/) || (( variable10 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4651 if (UNTAG_Bool(variable12)) { /*if*/
4652 variable12 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode7*/) /*AbstractArray::is_empty*/;
4653 if (UNTAG_Bool(variable12)) { /*if*/
4654 variable7 = variable10 /*listnode5*/ /*listnode7=*/;
4655 } else { /*if*/
4656 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode7*/, variable10 /*listnode5*/) /*IndexedCollection::append*/;
4657 }
4658 }
4659 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4660 if (UNTAG_Bool(variable12)) { /*if*/
4661 ((array___AbstractArray___add_t)CALL( variable7 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode7*/, variable11 /*pclassdefnode6*/) /*AbstractArray::add*/;
4662 }
4663 variable13 = NEW_AModule_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode4*/, variable7 /*listnode7*/); /*new AModule*/
4664 variable12 = variable13;
4665 variable1 = variable12 /*pmodulenode1*/ /*node_list=*/;
4666 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4667 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
4668 tracehead = trace.prev;
4669 return;
4670 }
4671 void parser___ReduceAction31___init(val_t self, int* init_table) {
4672 struct trace_t trace = {NULL, NULL, 2033, LOCATE_parser___ReduceAction31___init};
4673 trace.prev = tracehead; tracehead = &trace;
4674 trace.file = LOCATE_parser;
4675 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction31].i]) return;
4676 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction31].i] = 1;
4677 tracehead = trace.prev;
4678 return;
4679 }
4680 void parser___ReduceAction32___action(val_t self, val_t param0) {
4681 struct trace_t trace = {NULL, NULL, 2037, LOCATE_parser___ReduceAction32___action};
4682 val_t variable0;
4683 val_t variable1;
4684 val_t variable2;
4685 val_t variable3;
4686 val_t variable4;
4687 val_t variable5;
4688 val_t variable6;
4689 val_t variable7;
4690 val_t variable8;
4691 val_t variable9;
4692 val_t variable10;
4693 val_t variable11;
4694 val_t variable12;
4695 trace.prev = tracehead; tracehead = &trace;
4696 trace.file = LOCATE_parser;
4697 variable0 = param0;
4698 variable1 = NIT_NULL /*null*/;
4699 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4700 variable2 = variable3;
4701 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4702 variable3 = variable4;
4703 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4704 variable4 = variable5;
4705 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4706 variable5 = variable6;
4707 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4708 variable6 = variable7;
4709 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4710 variable7 = variable8;
4711 variable8 = variable4 /*nodearraylist1*/;
4712 variable9 = TAG_Bool(( variable8 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable8 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
4713 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction32___action, LOCATE_parser, 2047); nit_exit(1);}
4714 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable8 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4715 if (UNTAG_Bool(variable9)) { /*if*/
4716 ((array___AbstractArray___add_t)CALL( variable7 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode6*/, variable8 /*ppropdefnode5*/) /*AbstractArray::add*/;
4717 }
4718 variable10 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable7 /*listnode6*/); /*new ATopClassdef*/
4719 variable9 = variable10;
4720 variable10 = variable2 /*nodearraylist3*/;
4721 variable11 = TAG_Bool(( variable10 /*pclassdefnode7*/==NIT_NULL) || VAL_ISA( variable10 /*pclassdefnode7*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4722 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction32___action, LOCATE_parser, 2055); nit_exit(1);}
4723 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable9 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4724 if (UNTAG_Bool(variable11)) { /*if*/
4725 ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable9 /*pclassdefnode4*/) /*AbstractArray::add*/;
4726 }
4727 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*pclassdefnode7*/ == NIT_NULL /*null*/) || (( variable10 /*pclassdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*pclassdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))( variable10 /*pclassdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4728 if (UNTAG_Bool(variable11)) { /*if*/
4729 ((array___AbstractArray___add_t)CALL( variable6 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode8*/, variable10 /*pclassdefnode7*/) /*AbstractArray::add*/;
4730 }
4731 variable12 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable5 /*listnode3*/, variable6 /*listnode8*/); /*new AModule*/
4732 variable11 = variable12;
4733 variable1 = variable11 /*pmodulenode1*/ /*node_list=*/;
4734 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4735 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
4736 tracehead = trace.prev;
4737 return;
4738 }
4739 void parser___ReduceAction32___init(val_t self, int* init_table) {
4740 struct trace_t trace = {NULL, NULL, 2070, LOCATE_parser___ReduceAction32___init};
4741 trace.prev = tracehead; tracehead = &trace;
4742 trace.file = LOCATE_parser;
4743 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction32].i]) return;
4744 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction32].i] = 1;
4745 tracehead = trace.prev;
4746 return;
4747 }
4748 void parser___ReduceAction33___action(val_t self, val_t param0) {
4749 struct trace_t trace = {NULL, NULL, 2074, LOCATE_parser___ReduceAction33___action};
4750 val_t variable0;
4751 val_t variable1;
4752 val_t variable2;
4753 val_t variable3;
4754 val_t variable4;
4755 val_t variable5;
4756 val_t variable6;
4757 val_t variable7;
4758 val_t variable8;
4759 val_t variable9;
4760 val_t variable10;
4761 val_t variable11;
4762 val_t variable12;
4763 val_t variable13;
4764 val_t variable14;
4765 trace.prev = tracehead; tracehead = &trace;
4766 trace.file = LOCATE_parser;
4767 variable0 = param0;
4768 variable1 = NIT_NULL /*null*/;
4769 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4770 variable2 = variable3;
4771 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4772 variable3 = variable4;
4773 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4774 variable4 = variable5;
4775 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4776 variable5 = variable6;
4777 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4778 variable6 = variable7;
4779 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4780 variable7 = variable8;
4781 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4782 variable8 = variable9;
4783 variable9 = variable5 /*nodearraylist1*/;
4784 variable10 = TAG_Bool(( variable9 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
4785 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction33___action, LOCATE_parser, 2085); nit_exit(1);}
4786 variable10 = variable3 /*nodearraylist3*/;
4787 variable11 = TAG_Bool(( variable10 /*listnode6*/==NIT_NULL) || VAL_ISA( variable10 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4788 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction33___action, LOCATE_parser, 2087); nit_exit(1);}
4789 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable9 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4790 if (UNTAG_Bool(variable11)) { /*if*/
4791 ((array___AbstractArray___add_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode7*/, variable9 /*ppropdefnode5*/) /*AbstractArray::add*/;
4792 }
4793 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode6*/ == NIT_NULL /*null*/) || (( variable10 /*listnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4794 if (UNTAG_Bool(variable11)) { /*if*/
4795 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode7*/) /*AbstractArray::is_empty*/;
4796 if (UNTAG_Bool(variable11)) { /*if*/
4797 variable8 = variable10 /*listnode6*/ /*listnode7=*/;
4798 } else { /*if*/
4799 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode7*/, variable10 /*listnode6*/) /*IndexedCollection::append*/;
4800 }
4801 }
4802 variable12 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable8 /*listnode7*/); /*new ATopClassdef*/
4803 variable11 = variable12;
4804 variable12 = variable2 /*nodearraylist4*/;
4805 variable13 = TAG_Bool(( variable12 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4806 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction33___action, LOCATE_parser, 2102); nit_exit(1);}
4807 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4808 if (UNTAG_Bool(variable13)) { /*if*/
4809 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable11 /*pclassdefnode4*/) /*AbstractArray::add*/;
4810 }
4811 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4812 if (UNTAG_Bool(variable13)) { /*if*/
4813 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode8*/) /*AbstractArray::add*/;
4814 }
4815 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode3*/, variable7 /*listnode9*/); /*new AModule*/
4816 variable13 = variable14;
4817 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
4818 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4819 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
4820 tracehead = trace.prev;
4821 return;
4822 }
4823 void parser___ReduceAction33___init(val_t self, int* init_table) {
4824 struct trace_t trace = {NULL, NULL, 2117, LOCATE_parser___ReduceAction33___init};
4825 trace.prev = tracehead; tracehead = &trace;
4826 trace.file = LOCATE_parser;
4827 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction33].i]) return;
4828 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction33].i] = 1;
4829 tracehead = trace.prev;
4830 return;
4831 }
4832 void parser___ReduceAction34___action(val_t self, val_t param0) {
4833 struct trace_t trace = {NULL, NULL, 2121, LOCATE_parser___ReduceAction34___action};
4834 val_t variable0;
4835 val_t variable1;
4836 val_t variable2;
4837 val_t variable3;
4838 val_t variable4;
4839 val_t variable5;
4840 val_t variable6;
4841 val_t variable7;
4842 val_t variable8;
4843 val_t variable9;
4844 val_t variable10;
4845 val_t variable11;
4846 val_t variable12;
4847 val_t variable13;
4848 val_t variable14;
4849 trace.prev = tracehead; tracehead = &trace;
4850 trace.file = LOCATE_parser;
4851 variable0 = param0;
4852 variable1 = NIT_NULL /*null*/;
4853 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4854 variable2 = variable3;
4855 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4856 variable3 = variable4;
4857 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4858 variable4 = variable5;
4859 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4860 variable5 = variable6;
4861 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4862 variable6 = variable7;
4863 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4864 variable7 = variable8;
4865 variable8 = variable5 /*nodearraylist1*/;
4866 variable9 = TAG_Bool(( variable8 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable8 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4867 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction34___action, LOCATE_parser, 2131); nit_exit(1);}
4868 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4869 variable9 = variable10;
4870 variable10 = variable4 /*nodearraylist2*/;
4871 variable11 = TAG_Bool(( variable10 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
4872 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction34___action, LOCATE_parser, 2134); nit_exit(1);}
4873 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4874 if (UNTAG_Bool(variable11)) { /*if*/
4875 ((array___AbstractArray___add_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode6*/, variable10 /*ppropdefnode5*/) /*AbstractArray::add*/;
4876 }
4877 variable12 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode6*/); /*new ATopClassdef*/
4878 variable11 = variable12;
4879 variable12 = variable2 /*nodearraylist4*/;
4880 variable13 = TAG_Bool(( variable12 /*pclassdefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode7*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4881 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction34___action, LOCATE_parser, 2142); nit_exit(1);}
4882 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4883 if (UNTAG_Bool(variable13)) { /*if*/
4884 ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable11 /*pclassdefnode4*/) /*AbstractArray::add*/;
4885 }
4886 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode7*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4887 if (UNTAG_Bool(variable13)) { /*if*/
4888 ((array___AbstractArray___add_t)CALL( variable7 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode8*/, variable12 /*pclassdefnode7*/) /*AbstractArray::add*/;
4889 }
4890 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( variable8 /*ppackagedeclnode2*/, variable6 /*listnode3*/, variable7 /*listnode8*/); /*new AModule*/
4891 variable13 = variable14;
4892 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
4893 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4894 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
4895 tracehead = trace.prev;
4896 return;
4897 }
4898 void parser___ReduceAction34___init(val_t self, int* init_table) {
4899 struct trace_t trace = {NULL, NULL, 2157, LOCATE_parser___ReduceAction34___init};
4900 trace.prev = tracehead; tracehead = &trace;
4901 trace.file = LOCATE_parser;
4902 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction34].i]) return;
4903 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction34].i] = 1;
4904 tracehead = trace.prev;
4905 return;
4906 }
4907 void parser___ReduceAction35___action(val_t self, val_t param0) {
4908 struct trace_t trace = {NULL, NULL, 2161, LOCATE_parser___ReduceAction35___action};
4909 val_t variable0;
4910 val_t variable1;
4911 val_t variable2;
4912 val_t variable3;
4913 val_t variable4;
4914 val_t variable5;
4915 val_t variable6;
4916 val_t variable7;
4917 val_t variable8;
4918 val_t variable9;
4919 val_t variable10;
4920 val_t variable11;
4921 val_t variable12;
4922 val_t variable13;
4923 val_t variable14;
4924 val_t variable15;
4925 val_t variable16;
4926 trace.prev = tracehead; tracehead = &trace;
4927 trace.file = LOCATE_parser;
4928 variable0 = param0;
4929 variable1 = NIT_NULL /*null*/;
4930 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4931 variable2 = variable3;
4932 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4933 variable3 = variable4;
4934 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4935 variable4 = variable5;
4936 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4937 variable5 = variable6;
4938 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
4939 variable6 = variable7;
4940 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4941 variable7 = variable8;
4942 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4943 variable8 = variable9;
4944 variable9 = variable6 /*nodearraylist1*/;
4945 variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
4946 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction35___action, LOCATE_parser, 2172); nit_exit(1);}
4947 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
4948 variable10 = variable11;
4949 variable11 = variable5 /*nodearraylist2*/;
4950 variable12 = TAG_Bool(( variable11 /*ppropdefnode5*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode5*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
4951 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction35___action, LOCATE_parser, 2175); nit_exit(1);}
4952 variable12 = variable3 /*nodearraylist4*/;
4953 variable13 = TAG_Bool(( variable12 /*listnode6*/==NIT_NULL) || VAL_ISA( variable12 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
4954 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction35___action, LOCATE_parser, 2177); nit_exit(1);}
4955 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode5*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4956 if (UNTAG_Bool(variable13)) { /*if*/
4957 ((array___AbstractArray___add_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode7*/, variable11 /*ppropdefnode5*/) /*AbstractArray::add*/;
4958 }
4959 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode6*/ == NIT_NULL /*null*/) || (( variable12 /*listnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4960 if (UNTAG_Bool(variable13)) { /*if*/
4961 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode7*/) /*AbstractArray::is_empty*/;
4962 if (UNTAG_Bool(variable13)) { /*if*/
4963 variable10 = variable12 /*listnode6*/ /*listnode7=*/;
4964 } else { /*if*/
4965 ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode7*/, variable12 /*listnode6*/) /*IndexedCollection::append*/;
4966 }
4967 }
4968 variable14 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode7*/); /*new ATopClassdef*/
4969 variable13 = variable14;
4970 variable14 = variable2 /*nodearraylist5*/;
4971 variable15 = TAG_Bool(( variable14 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
4972 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction35___action, LOCATE_parser, 2192); nit_exit(1);}
4973 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode4*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode4*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4974 if (UNTAG_Bool(variable15)) { /*if*/
4975 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable13 /*pclassdefnode4*/) /*AbstractArray::add*/;
4976 }
4977 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
4978 if (UNTAG_Bool(variable15)) { /*if*/
4979 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode8*/) /*AbstractArray::add*/;
4980 }
4981 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode3*/, variable8 /*listnode9*/); /*new AModule*/
4982 variable15 = variable16;
4983 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
4984 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
4985 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
4986 tracehead = trace.prev;
4987 return;
4988 }
4989 void parser___ReduceAction35___init(val_t self, int* init_table) {
4990 struct trace_t trace = {NULL, NULL, 2207, LOCATE_parser___ReduceAction35___init};
4991 trace.prev = tracehead; tracehead = &trace;
4992 trace.file = LOCATE_parser;
4993 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction35].i]) return;
4994 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction35].i] = 1;
4995 tracehead = trace.prev;
4996 return;
4997 }
4998 void parser___ReduceAction36___action(val_t self, val_t param0) {
4999 struct trace_t trace = {NULL, NULL, 2211, LOCATE_parser___ReduceAction36___action};
5000 val_t variable0;
5001 val_t variable1;
5002 val_t variable2;
5003 val_t variable3;
5004 val_t variable4;
5005 val_t variable5;
5006 val_t variable6;
5007 val_t variable7;
5008 val_t variable8;
5009 val_t variable9;
5010 val_t variable10;
5011 val_t variable11;
5012 val_t variable12;
5013 val_t variable13;
5014 val_t variable14;
5015 trace.prev = tracehead; tracehead = &trace;
5016 trace.file = LOCATE_parser;
5017 variable0 = param0;
5018 variable1 = NIT_NULL /*null*/;
5019 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5020 variable2 = variable3;
5021 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5022 variable3 = variable4;
5023 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5024 variable4 = variable5;
5025 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5026 variable5 = variable6;
5027 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5028 variable6 = variable7;
5029 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5030 variable7 = variable8;
5031 variable8 = variable5 /*nodearraylist1*/;
5032 variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5033 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction36___action, LOCATE_parser, 2221); nit_exit(1);}
5034 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5035 if (UNTAG_Bool(variable9)) { /*if*/
5036 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*AbstractArray::is_empty*/;
5037 if (UNTAG_Bool(variable9)) { /*if*/
5038 variable6 = variable8 /*listnode3*/ /*listnode4=*/;
5039 } else { /*if*/
5040 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*IndexedCollection::append*/;
5041 }
5042 }
5043 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5044 variable9 = variable10;
5045 variable10 = variable4 /*nodearraylist2*/;
5046 variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5047 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction36___action, LOCATE_parser, 2231); nit_exit(1);}
5048 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5049 if (UNTAG_Bool(variable11)) { /*if*/
5050 ((array___AbstractArray___add_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode7*/, variable10 /*ppropdefnode6*/) /*AbstractArray::add*/;
5051 }
5052 variable12 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode7*/); /*new ATopClassdef*/
5053 variable11 = variable12;
5054 variable12 = variable2 /*nodearraylist4*/;
5055 variable13 = TAG_Bool(( variable12 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5056 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction36___action, LOCATE_parser, 2239); nit_exit(1);}
5057 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5058 if (UNTAG_Bool(variable13)) { /*if*/
5059 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable11 /*pclassdefnode5*/) /*AbstractArray::add*/;
5060 }
5061 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5062 if (UNTAG_Bool(variable13)) { /*if*/
5063 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode8*/) /*AbstractArray::add*/;
5064 }
5065 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode4*/, variable7 /*listnode9*/); /*new AModule*/
5066 variable13 = variable14;
5067 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
5068 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5069 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
5070 tracehead = trace.prev;
5071 return;
5072 }
5073 void parser___ReduceAction36___init(val_t self, int* init_table) {
5074 struct trace_t trace = {NULL, NULL, 2254, LOCATE_parser___ReduceAction36___init};
5075 trace.prev = tracehead; tracehead = &trace;
5076 trace.file = LOCATE_parser;
5077 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction36].i]) return;
5078 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction36].i] = 1;
5079 tracehead = trace.prev;
5080 return;
5081 }
5082 void parser___ReduceAction37___action(val_t self, val_t param0) {
5083 struct trace_t trace = {NULL, NULL, 2258, LOCATE_parser___ReduceAction37___action};
5084 val_t variable0;
5085 val_t variable1;
5086 val_t variable2;
5087 val_t variable3;
5088 val_t variable4;
5089 val_t variable5;
5090 val_t variable6;
5091 val_t variable7;
5092 val_t variable8;
5093 val_t variable9;
5094 val_t variable10;
5095 val_t variable11;
5096 val_t variable12;
5097 val_t variable13;
5098 val_t variable14;
5099 val_t variable15;
5100 val_t variable16;
5101 trace.prev = tracehead; tracehead = &trace;
5102 trace.file = LOCATE_parser;
5103 variable0 = param0;
5104 variable1 = NIT_NULL /*null*/;
5105 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5106 variable2 = variable3;
5107 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5108 variable3 = variable4;
5109 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5110 variable4 = variable5;
5111 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5112 variable5 = variable6;
5113 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5114 variable6 = variable7;
5115 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5116 variable7 = variable8;
5117 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5118 variable8 = variable9;
5119 variable9 = variable6 /*nodearraylist1*/;
5120 variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5121 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction37___action, LOCATE_parser, 2269); nit_exit(1);}
5122 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5123 if (UNTAG_Bool(variable10)) { /*if*/
5124 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
5125 if (UNTAG_Bool(variable10)) { /*if*/
5126 variable7 = variable9 /*listnode3*/ /*listnode4=*/;
5127 } else { /*if*/
5128 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*IndexedCollection::append*/;
5129 }
5130 }
5131 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5132 variable10 = variable11;
5133 variable11 = variable5 /*nodearraylist2*/;
5134 variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5135 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction37___action, LOCATE_parser, 2279); nit_exit(1);}
5136 variable12 = variable3 /*nodearraylist4*/;
5137 variable13 = TAG_Bool(( variable12 /*listnode7*/==NIT_NULL) || VAL_ISA( variable12 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5138 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction37___action, LOCATE_parser, 2281); nit_exit(1);}
5139 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5140 if (UNTAG_Bool(variable13)) { /*if*/
5141 ((array___AbstractArray___add_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode8*/, variable11 /*ppropdefnode6*/) /*AbstractArray::add*/;
5142 }
5143 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode7*/ == NIT_NULL /*null*/) || (( variable12 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5144 if (UNTAG_Bool(variable13)) { /*if*/
5145 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode8*/) /*AbstractArray::is_empty*/;
5146 if (UNTAG_Bool(variable13)) { /*if*/
5147 variable10 = variable12 /*listnode7*/ /*listnode8=*/;
5148 } else { /*if*/
5149 ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode8*/, variable12 /*listnode7*/) /*IndexedCollection::append*/;
5150 }
5151 }
5152 variable14 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode8*/); /*new ATopClassdef*/
5153 variable13 = variable14;
5154 variable14 = variable2 /*nodearraylist5*/;
5155 variable15 = TAG_Bool(( variable14 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5156 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction37___action, LOCATE_parser, 2296); nit_exit(1);}
5157 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5158 if (UNTAG_Bool(variable15)) { /*if*/
5159 ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable13 /*pclassdefnode5*/) /*AbstractArray::add*/;
5160 }
5161 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5162 if (UNTAG_Bool(variable15)) { /*if*/
5163 ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode9*/) /*AbstractArray::add*/;
5164 }
5165 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode4*/, variable8 /*listnode10*/); /*new AModule*/
5166 variable15 = variable16;
5167 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
5168 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5169 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
5170 tracehead = trace.prev;
5171 return;
5172 }
5173 void parser___ReduceAction37___init(val_t self, int* init_table) {
5174 struct trace_t trace = {NULL, NULL, 2311, LOCATE_parser___ReduceAction37___init};
5175 trace.prev = tracehead; tracehead = &trace;
5176 trace.file = LOCATE_parser;
5177 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction37].i]) return;
5178 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction37].i] = 1;
5179 tracehead = trace.prev;
5180 return;
5181 }
5182 void parser___ReduceAction38___action(val_t self, val_t param0) {
5183 struct trace_t trace = {NULL, NULL, 2315, LOCATE_parser___ReduceAction38___action};
5184 val_t variable0;
5185 val_t variable1;
5186 val_t variable2;
5187 val_t variable3;
5188 val_t variable4;
5189 val_t variable5;
5190 val_t variable6;
5191 val_t variable7;
5192 val_t variable8;
5193 val_t variable9;
5194 val_t variable10;
5195 val_t variable11;
5196 val_t variable12;
5197 val_t variable13;
5198 val_t variable14;
5199 val_t variable15;
5200 val_t variable16;
5201 trace.prev = tracehead; tracehead = &trace;
5202 trace.file = LOCATE_parser;
5203 variable0 = param0;
5204 variable1 = NIT_NULL /*null*/;
5205 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5206 variable2 = variable3;
5207 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5208 variable3 = variable4;
5209 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5210 variable4 = variable5;
5211 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5212 variable5 = variable6;
5213 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5214 variable6 = variable7;
5215 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5216 variable7 = variable8;
5217 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5218 variable8 = variable9;
5219 variable9 = variable6 /*nodearraylist1*/;
5220 variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
5221 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction38___action, LOCATE_parser, 2326); nit_exit(1);}
5222 variable10 = variable5 /*nodearraylist2*/;
5223 variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5224 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction38___action, LOCATE_parser, 2328); nit_exit(1);}
5225 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5226 if (UNTAG_Bool(variable11)) { /*if*/
5227 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
5228 if (UNTAG_Bool(variable11)) { /*if*/
5229 variable7 = variable10 /*listnode3*/ /*listnode4=*/;
5230 } else { /*if*/
5231 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable10 /*listnode3*/) /*IndexedCollection::append*/;
5232 }
5233 }
5234 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5235 variable11 = variable12;
5236 variable12 = variable4 /*nodearraylist3*/;
5237 variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5238 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction38___action, LOCATE_parser, 2338); nit_exit(1);}
5239 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5240 if (UNTAG_Bool(variable13)) { /*if*/
5241 ((array___AbstractArray___add_t)CALL( variable11 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode7*/, variable12 /*ppropdefnode6*/) /*AbstractArray::add*/;
5242 }
5243 variable14 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode7*/); /*new ATopClassdef*/
5244 variable13 = variable14;
5245 variable14 = variable2 /*nodearraylist5*/;
5246 variable15 = TAG_Bool(( variable14 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5247 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction38___action, LOCATE_parser, 2346); nit_exit(1);}
5248 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5249 if (UNTAG_Bool(variable15)) { /*if*/
5250 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable13 /*pclassdefnode5*/) /*AbstractArray::add*/;
5251 }
5252 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5253 if (UNTAG_Bool(variable15)) { /*if*/
5254 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode8*/) /*AbstractArray::add*/;
5255 }
5256 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode4*/, variable8 /*listnode9*/); /*new AModule*/
5257 variable15 = variable16;
5258 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
5259 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5260 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
5261 tracehead = trace.prev;
5262 return;
5263 }
5264 void parser___ReduceAction38___init(val_t self, int* init_table) {
5265 struct trace_t trace = {NULL, NULL, 2361, LOCATE_parser___ReduceAction38___init};
5266 trace.prev = tracehead; tracehead = &trace;
5267 trace.file = LOCATE_parser;
5268 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction38].i]) return;
5269 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction38].i] = 1;
5270 tracehead = trace.prev;
5271 return;
5272 }
5273 void parser___ReduceAction39___action(val_t self, val_t param0) {
5274 struct trace_t trace = {NULL, NULL, 2365, LOCATE_parser___ReduceAction39___action};
5275 val_t variable0;
5276 val_t variable1;
5277 val_t variable2;
5278 val_t variable3;
5279 val_t variable4;
5280 val_t variable5;
5281 val_t variable6;
5282 val_t variable7;
5283 val_t variable8;
5284 val_t variable9;
5285 val_t variable10;
5286 val_t variable11;
5287 val_t variable12;
5288 val_t variable13;
5289 val_t variable14;
5290 val_t variable15;
5291 val_t variable16;
5292 val_t variable17;
5293 val_t variable18;
5294 trace.prev = tracehead; tracehead = &trace;
5295 trace.file = LOCATE_parser;
5296 variable0 = param0;
5297 variable1 = NIT_NULL /*null*/;
5298 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5299 variable2 = variable3;
5300 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5301 variable3 = variable4;
5302 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5303 variable4 = variable5;
5304 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5305 variable5 = variable6;
5306 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5307 variable6 = variable7;
5308 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5309 variable7 = variable8;
5310 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5311 variable8 = variable9;
5312 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5313 variable9 = variable10;
5314 variable10 = variable7 /*nodearraylist1*/;
5315 variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
5316 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction39___action, LOCATE_parser, 2377); nit_exit(1);}
5317 variable11 = variable6 /*nodearraylist2*/;
5318 variable12 = TAG_Bool(( variable11 /*listnode3*/==NIT_NULL) || VAL_ISA( variable11 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5319 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction39___action, LOCATE_parser, 2379); nit_exit(1);}
5320 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode3*/ == NIT_NULL /*null*/) || (( variable11 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5321 if (UNTAG_Bool(variable12)) { /*if*/
5322 variable12 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*AbstractArray::is_empty*/;
5323 if (UNTAG_Bool(variable12)) { /*if*/
5324 variable8 = variable11 /*listnode3*/ /*listnode4=*/;
5325 } else { /*if*/
5326 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable11 /*listnode3*/) /*IndexedCollection::append*/;
5327 }
5328 }
5329 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5330 variable12 = variable13;
5331 variable13 = variable5 /*nodearraylist3*/;
5332 variable14 = TAG_Bool(( variable13 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5333 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction39___action, LOCATE_parser, 2389); nit_exit(1);}
5334 variable14 = variable3 /*nodearraylist5*/;
5335 variable15 = TAG_Bool(( variable14 /*listnode7*/==NIT_NULL) || VAL_ISA( variable14 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5336 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction39___action, LOCATE_parser, 2391); nit_exit(1);}
5337 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5338 if (UNTAG_Bool(variable15)) { /*if*/
5339 ((array___AbstractArray___add_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode8*/, variable13 /*ppropdefnode6*/) /*AbstractArray::add*/;
5340 }
5341 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*listnode7*/ == NIT_NULL /*null*/) || (( variable14 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5342 if (UNTAG_Bool(variable15)) { /*if*/
5343 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*AbstractArray::is_empty*/;
5344 if (UNTAG_Bool(variable15)) { /*if*/
5345 variable12 = variable14 /*listnode7*/ /*listnode8=*/;
5346 } else { /*if*/
5347 ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable14 /*listnode7*/) /*IndexedCollection::append*/;
5348 }
5349 }
5350 variable16 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode8*/); /*new ATopClassdef*/
5351 variable15 = variable16;
5352 variable16 = variable2 /*nodearraylist6*/;
5353 variable17 = TAG_Bool(( variable16 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5354 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction39___action, LOCATE_parser, 2406); nit_exit(1);}
5355 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5356 if (UNTAG_Bool(variable17)) { /*if*/
5357 ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable15 /*pclassdefnode5*/) /*AbstractArray::add*/;
5358 }
5359 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5360 if (UNTAG_Bool(variable17)) { /*if*/
5361 ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode9*/) /*AbstractArray::add*/;
5362 }
5363 variable18 = NEW_AModule_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode4*/, variable9 /*listnode10*/); /*new AModule*/
5364 variable17 = variable18;
5365 variable1 = variable17 /*pmodulenode1*/ /*node_list=*/;
5366 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5367 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
5368 tracehead = trace.prev;
5369 return;
5370 }
5371 void parser___ReduceAction39___init(val_t self, int* init_table) {
5372 struct trace_t trace = {NULL, NULL, 2421, LOCATE_parser___ReduceAction39___init};
5373 trace.prev = tracehead; tracehead = &trace;
5374 trace.file = LOCATE_parser;
5375 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction39].i]) return;
5376 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction39].i] = 1;
5377 tracehead = trace.prev;
5378 return;
5379 }
5380 void parser___ReduceAction40___action(val_t self, val_t param0) {
5381 struct trace_t trace = {NULL, NULL, 2425, LOCATE_parser___ReduceAction40___action};
5382 val_t variable0;
5383 val_t variable1;
5384 val_t variable2;
5385 val_t variable3;
5386 val_t variable4;
5387 val_t variable5;
5388 val_t variable6;
5389 val_t variable7;
5390 val_t variable8;
5391 val_t variable9;
5392 val_t variable10;
5393 val_t variable11;
5394 val_t variable12;
5395 val_t variable13;
5396 val_t variable14;
5397 trace.prev = tracehead; tracehead = &trace;
5398 trace.file = LOCATE_parser;
5399 variable0 = param0;
5400 variable1 = NIT_NULL /*null*/;
5401 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5402 variable2 = variable3;
5403 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5404 variable3 = variable4;
5405 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5406 variable4 = variable5;
5407 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5408 variable5 = variable6;
5409 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5410 variable6 = variable7;
5411 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5412 variable7 = variable8;
5413 variable8 = variable5 /*nodearraylist1*/;
5414 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5415 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction40___action, LOCATE_parser, 2435); nit_exit(1);}
5416 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5417 variable9 = variable10;
5418 variable10 = variable4 /*nodearraylist2*/;
5419 variable11 = TAG_Bool(( variable10 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable10 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5420 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction40___action, LOCATE_parser, 2438); nit_exit(1);}
5421 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable10 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable10 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5422 if (UNTAG_Bool(variable11)) { /*if*/
5423 ((array___AbstractArray___add_t)CALL( variable9 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode7*/, variable10 /*ppropdefnode6*/) /*AbstractArray::add*/;
5424 }
5425 variable12 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable9 /*listnode7*/); /*new ATopClassdef*/
5426 variable11 = variable12;
5427 variable12 = variable2 /*nodearraylist4*/;
5428 variable13 = TAG_Bool(( variable12 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable12 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5429 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction40___action, LOCATE_parser, 2446); nit_exit(1);}
5430 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5431 if (UNTAG_Bool(variable13)) { /*if*/
5432 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode9*/) /*AbstractArray::is_empty*/;
5433 if (UNTAG_Bool(variable13)) { /*if*/
5434 variable7 = variable8 /*listnode4*/ /*listnode9=*/;
5435 } else { /*if*/
5436 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode9*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
5437 }
5438 }
5439 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable11 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5440 if (UNTAG_Bool(variable13)) { /*if*/
5441 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable11 /*pclassdefnode5*/) /*AbstractArray::add*/;
5442 }
5443 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable12 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable12 /*pclassdefnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5444 if (UNTAG_Bool(variable13)) { /*if*/
5445 ((array___AbstractArray___add_t)CALL( variable7 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode9*/, variable12 /*pclassdefnode8*/) /*AbstractArray::add*/;
5446 }
5447 variable14 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable6 /*listnode3*/, variable7 /*listnode9*/); /*new AModule*/
5448 variable13 = variable14;
5449 variable1 = variable13 /*pmodulenode1*/ /*node_list=*/;
5450 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5451 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
5452 tracehead = trace.prev;
5453 return;
5454 }
5455 void parser___ReduceAction40___init(val_t self, int* init_table) {
5456 struct trace_t trace = {NULL, NULL, 2468, LOCATE_parser___ReduceAction40___init};
5457 trace.prev = tracehead; tracehead = &trace;
5458 trace.file = LOCATE_parser;
5459 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction40].i]) return;
5460 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction40].i] = 1;
5461 tracehead = trace.prev;
5462 return;
5463 }
5464 void parser___ReduceAction41___action(val_t self, val_t param0) {
5465 struct trace_t trace = {NULL, NULL, 2472, LOCATE_parser___ReduceAction41___action};
5466 val_t variable0;
5467 val_t variable1;
5468 val_t variable2;
5469 val_t variable3;
5470 val_t variable4;
5471 val_t variable5;
5472 val_t variable6;
5473 val_t variable7;
5474 val_t variable8;
5475 val_t variable9;
5476 val_t variable10;
5477 val_t variable11;
5478 val_t variable12;
5479 val_t variable13;
5480 val_t variable14;
5481 val_t variable15;
5482 val_t variable16;
5483 trace.prev = tracehead; tracehead = &trace;
5484 trace.file = LOCATE_parser;
5485 variable0 = param0;
5486 variable1 = NIT_NULL /*null*/;
5487 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5488 variable2 = variable3;
5489 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5490 variable3 = variable4;
5491 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5492 variable4 = variable5;
5493 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5494 variable5 = variable6;
5495 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5496 variable6 = variable7;
5497 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5498 variable7 = variable8;
5499 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5500 variable8 = variable9;
5501 variable9 = variable6 /*nodearraylist1*/;
5502 variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5503 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction41___action, LOCATE_parser, 2483); nit_exit(1);}
5504 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5505 variable10 = variable11;
5506 variable11 = variable5 /*nodearraylist2*/;
5507 variable12 = TAG_Bool(( variable11 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable11 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5508 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction41___action, LOCATE_parser, 2486); nit_exit(1);}
5509 variable12 = variable3 /*nodearraylist4*/;
5510 variable13 = TAG_Bool(( variable12 /*listnode7*/==NIT_NULL) || VAL_ISA( variable12 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5511 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction41___action, LOCATE_parser, 2488); nit_exit(1);}
5512 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable11 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable11 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5513 if (UNTAG_Bool(variable13)) { /*if*/
5514 ((array___AbstractArray___add_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode8*/, variable11 /*ppropdefnode6*/) /*AbstractArray::add*/;
5515 }
5516 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode7*/ == NIT_NULL /*null*/) || (( variable12 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5517 if (UNTAG_Bool(variable13)) { /*if*/
5518 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode8*/) /*AbstractArray::is_empty*/;
5519 if (UNTAG_Bool(variable13)) { /*if*/
5520 variable10 = variable12 /*listnode7*/ /*listnode8=*/;
5521 } else { /*if*/
5522 ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode8*/, variable12 /*listnode7*/) /*IndexedCollection::append*/;
5523 }
5524 }
5525 variable14 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable10 /*listnode8*/); /*new ATopClassdef*/
5526 variable13 = variable14;
5527 variable14 = variable2 /*nodearraylist5*/;
5528 variable15 = TAG_Bool(( variable14 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5529 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction41___action, LOCATE_parser, 2503); nit_exit(1);}
5530 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5531 if (UNTAG_Bool(variable15)) { /*if*/
5532 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode10*/) /*AbstractArray::is_empty*/;
5533 if (UNTAG_Bool(variable15)) { /*if*/
5534 variable8 = variable9 /*listnode4*/ /*listnode10=*/;
5535 } else { /*if*/
5536 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode10*/, variable9 /*listnode4*/) /*IndexedCollection::append*/;
5537 }
5538 }
5539 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5540 if (UNTAG_Bool(variable15)) { /*if*/
5541 ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable13 /*pclassdefnode5*/) /*AbstractArray::add*/;
5542 }
5543 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5544 if (UNTAG_Bool(variable15)) { /*if*/
5545 ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode9*/) /*AbstractArray::add*/;
5546 }
5547 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode3*/, variable8 /*listnode10*/); /*new AModule*/
5548 variable15 = variable16;
5549 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
5550 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5551 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
5552 tracehead = trace.prev;
5553 return;
5554 }
5555 void parser___ReduceAction41___init(val_t self, int* init_table) {
5556 struct trace_t trace = {NULL, NULL, 2525, LOCATE_parser___ReduceAction41___init};
5557 trace.prev = tracehead; tracehead = &trace;
5558 trace.file = LOCATE_parser;
5559 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction41].i]) return;
5560 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction41].i] = 1;
5561 tracehead = trace.prev;
5562 return;
5563 }
5564 void parser___ReduceAction42___action(val_t self, val_t param0) {
5565 struct trace_t trace = {NULL, NULL, 2529, LOCATE_parser___ReduceAction42___action};
5566 val_t variable0;
5567 val_t variable1;
5568 val_t variable2;
5569 val_t variable3;
5570 val_t variable4;
5571 val_t variable5;
5572 val_t variable6;
5573 val_t variable7;
5574 val_t variable8;
5575 val_t variable9;
5576 val_t variable10;
5577 val_t variable11;
5578 val_t variable12;
5579 val_t variable13;
5580 val_t variable14;
5581 val_t variable15;
5582 val_t variable16;
5583 trace.prev = tracehead; tracehead = &trace;
5584 trace.file = LOCATE_parser;
5585 variable0 = param0;
5586 variable1 = NIT_NULL /*null*/;
5587 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5588 variable2 = variable3;
5589 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5590 variable3 = variable4;
5591 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5592 variable4 = variable5;
5593 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5594 variable5 = variable6;
5595 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5596 variable6 = variable7;
5597 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5598 variable7 = variable8;
5599 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5600 variable8 = variable9;
5601 variable9 = variable6 /*nodearraylist1*/;
5602 variable10 = TAG_Bool(( variable9 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable9 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
5603 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction42___action, LOCATE_parser, 2540); nit_exit(1);}
5604 variable10 = variable5 /*nodearraylist2*/;
5605 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5606 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction42___action, LOCATE_parser, 2542); nit_exit(1);}
5607 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5608 variable11 = variable12;
5609 variable12 = variable4 /*nodearraylist3*/;
5610 variable13 = TAG_Bool(( variable12 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5611 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction42___action, LOCATE_parser, 2545); nit_exit(1);}
5612 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5613 if (UNTAG_Bool(variable13)) { /*if*/
5614 ((array___AbstractArray___add_t)CALL( variable11 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode7*/, variable12 /*ppropdefnode6*/) /*AbstractArray::add*/;
5615 }
5616 variable14 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode7*/); /*new ATopClassdef*/
5617 variable13 = variable14;
5618 variable14 = variable2 /*nodearraylist5*/;
5619 variable15 = TAG_Bool(( variable14 /*pclassdefnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode8*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5620 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction42___action, LOCATE_parser, 2553); nit_exit(1);}
5621 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5622 if (UNTAG_Bool(variable15)) { /*if*/
5623 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode9*/) /*AbstractArray::is_empty*/;
5624 if (UNTAG_Bool(variable15)) { /*if*/
5625 variable8 = variable10 /*listnode4*/ /*listnode9=*/;
5626 } else { /*if*/
5627 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode9*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
5628 }
5629 }
5630 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5631 if (UNTAG_Bool(variable15)) { /*if*/
5632 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable13 /*pclassdefnode5*/) /*AbstractArray::add*/;
5633 }
5634 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode8*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5635 if (UNTAG_Bool(variable15)) { /*if*/
5636 ((array___AbstractArray___add_t)CALL( variable8 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode9*/, variable14 /*pclassdefnode8*/) /*AbstractArray::add*/;
5637 }
5638 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( variable9 /*ppackagedeclnode2*/, variable7 /*listnode3*/, variable8 /*listnode9*/); /*new AModule*/
5639 variable15 = variable16;
5640 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
5641 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5642 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
5643 tracehead = trace.prev;
5644 return;
5645 }
5646 void parser___ReduceAction42___init(val_t self, int* init_table) {
5647 struct trace_t trace = {NULL, NULL, 2575, LOCATE_parser___ReduceAction42___init};
5648 trace.prev = tracehead; tracehead = &trace;
5649 trace.file = LOCATE_parser;
5650 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction42].i]) return;
5651 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction42].i] = 1;
5652 tracehead = trace.prev;
5653 return;
5654 }
5655 void parser___ReduceAction43___action(val_t self, val_t param0) {
5656 struct trace_t trace = {NULL, NULL, 2579, LOCATE_parser___ReduceAction43___action};
5657 val_t variable0;
5658 val_t variable1;
5659 val_t variable2;
5660 val_t variable3;
5661 val_t variable4;
5662 val_t variable5;
5663 val_t variable6;
5664 val_t variable7;
5665 val_t variable8;
5666 val_t variable9;
5667 val_t variable10;
5668 val_t variable11;
5669 val_t variable12;
5670 val_t variable13;
5671 val_t variable14;
5672 val_t variable15;
5673 val_t variable16;
5674 val_t variable17;
5675 val_t variable18;
5676 trace.prev = tracehead; tracehead = &trace;
5677 trace.file = LOCATE_parser;
5678 variable0 = param0;
5679 variable1 = NIT_NULL /*null*/;
5680 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5681 variable2 = variable3;
5682 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5683 variable3 = variable4;
5684 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5685 variable4 = variable5;
5686 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5687 variable5 = variable6;
5688 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5689 variable6 = variable7;
5690 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5691 variable7 = variable8;
5692 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5693 variable8 = variable9;
5694 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5695 variable9 = variable10;
5696 variable10 = variable7 /*nodearraylist1*/;
5697 variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
5698 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction43___action, LOCATE_parser, 2591); nit_exit(1);}
5699 variable11 = variable6 /*nodearraylist2*/;
5700 variable12 = TAG_Bool(( variable11 /*listnode4*/==NIT_NULL) || VAL_ISA( variable11 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5701 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction43___action, LOCATE_parser, 2593); nit_exit(1);}
5702 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5703 variable12 = variable13;
5704 variable13 = variable5 /*nodearraylist3*/;
5705 variable14 = TAG_Bool(( variable13 /*ppropdefnode6*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode6*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5706 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction43___action, LOCATE_parser, 2596); nit_exit(1);}
5707 variable14 = variable3 /*nodearraylist5*/;
5708 variable15 = TAG_Bool(( variable14 /*listnode7*/==NIT_NULL) || VAL_ISA( variable14 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5709 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction43___action, LOCATE_parser, 2598); nit_exit(1);}
5710 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode6*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode6*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5711 if (UNTAG_Bool(variable15)) { /*if*/
5712 ((array___AbstractArray___add_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode8*/, variable13 /*ppropdefnode6*/) /*AbstractArray::add*/;
5713 }
5714 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*listnode7*/ == NIT_NULL /*null*/) || (( variable14 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5715 if (UNTAG_Bool(variable15)) { /*if*/
5716 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*AbstractArray::is_empty*/;
5717 if (UNTAG_Bool(variable15)) { /*if*/
5718 variable12 = variable14 /*listnode7*/ /*listnode8=*/;
5719 } else { /*if*/
5720 ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable14 /*listnode7*/) /*IndexedCollection::append*/;
5721 }
5722 }
5723 variable16 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode8*/); /*new ATopClassdef*/
5724 variable15 = variable16;
5725 variable16 = variable2 /*nodearraylist6*/;
5726 variable17 = TAG_Bool(( variable16 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5727 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction43___action, LOCATE_parser, 2613); nit_exit(1);}
5728 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode4*/ == NIT_NULL /*null*/) || (( variable11 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5729 if (UNTAG_Bool(variable17)) { /*if*/
5730 variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode10*/) /*AbstractArray::is_empty*/;
5731 if (UNTAG_Bool(variable17)) { /*if*/
5732 variable9 = variable11 /*listnode4*/ /*listnode10=*/;
5733 } else { /*if*/
5734 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode10*/, variable11 /*listnode4*/) /*IndexedCollection::append*/;
5735 }
5736 }
5737 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode5*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode5*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5738 if (UNTAG_Bool(variable17)) { /*if*/
5739 ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable15 /*pclassdefnode5*/) /*AbstractArray::add*/;
5740 }
5741 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5742 if (UNTAG_Bool(variable17)) { /*if*/
5743 ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode9*/) /*AbstractArray::add*/;
5744 }
5745 variable18 = NEW_AModule_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode3*/, variable9 /*listnode10*/); /*new AModule*/
5746 variable17 = variable18;
5747 variable1 = variable17 /*pmodulenode1*/ /*node_list=*/;
5748 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5749 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
5750 tracehead = trace.prev;
5751 return;
5752 }
5753 void parser___ReduceAction43___init(val_t self, int* init_table) {
5754 struct trace_t trace = {NULL, NULL, 2635, LOCATE_parser___ReduceAction43___init};
5755 trace.prev = tracehead; tracehead = &trace;
5756 trace.file = LOCATE_parser;
5757 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction43].i]) return;
5758 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction43].i] = 1;
5759 tracehead = trace.prev;
5760 return;
5761 }
5762 void parser___ReduceAction44___action(val_t self, val_t param0) {
5763 struct trace_t trace = {NULL, NULL, 2639, LOCATE_parser___ReduceAction44___action};
5764 val_t variable0;
5765 val_t variable1;
5766 val_t variable2;
5767 val_t variable3;
5768 val_t variable4;
5769 val_t variable5;
5770 val_t variable6;
5771 val_t variable7;
5772 val_t variable8;
5773 val_t variable9;
5774 val_t variable10;
5775 val_t variable11;
5776 val_t variable12;
5777 val_t variable13;
5778 val_t variable14;
5779 val_t variable15;
5780 val_t variable16;
5781 trace.prev = tracehead; tracehead = &trace;
5782 trace.file = LOCATE_parser;
5783 variable0 = param0;
5784 variable1 = NIT_NULL /*null*/;
5785 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5786 variable2 = variable3;
5787 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5788 variable3 = variable4;
5789 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5790 variable4 = variable5;
5791 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5792 variable5 = variable6;
5793 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5794 variable6 = variable7;
5795 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5796 variable7 = variable8;
5797 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5798 variable8 = variable9;
5799 variable9 = variable6 /*nodearraylist1*/;
5800 variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5801 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction44___action, LOCATE_parser, 2650); nit_exit(1);}
5802 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5803 if (UNTAG_Bool(variable10)) { /*if*/
5804 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
5805 if (UNTAG_Bool(variable10)) { /*if*/
5806 variable7 = variable9 /*listnode3*/ /*listnode4=*/;
5807 } else { /*if*/
5808 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*IndexedCollection::append*/;
5809 }
5810 }
5811 variable10 = variable5 /*nodearraylist2*/;
5812 variable11 = TAG_Bool(( variable10 /*listnode5*/==NIT_NULL) || VAL_ISA( variable10 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5813 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction44___action, LOCATE_parser, 2659); nit_exit(1);}
5814 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5815 variable11 = variable12;
5816 variable12 = variable4 /*nodearraylist3*/;
5817 variable13 = TAG_Bool(( variable12 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5818 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction44___action, LOCATE_parser, 2662); nit_exit(1);}
5819 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable12 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable12 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5820 if (UNTAG_Bool(variable13)) { /*if*/
5821 ((array___AbstractArray___add_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable11 /*listnode8*/, variable12 /*ppropdefnode7*/) /*AbstractArray::add*/;
5822 }
5823 variable14 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable11 /*listnode8*/); /*new ATopClassdef*/
5824 variable13 = variable14;
5825 variable14 = variable2 /*nodearraylist5*/;
5826 variable15 = TAG_Bool(( variable14 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5827 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction44___action, LOCATE_parser, 2670); nit_exit(1);}
5828 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode5*/ == NIT_NULL /*null*/) || (( variable10 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5829 if (UNTAG_Bool(variable15)) { /*if*/
5830 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode10*/) /*AbstractArray::is_empty*/;
5831 if (UNTAG_Bool(variable15)) { /*if*/
5832 variable8 = variable10 /*listnode5*/ /*listnode10=*/;
5833 } else { /*if*/
5834 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode10*/, variable10 /*listnode5*/) /*IndexedCollection::append*/;
5835 }
5836 }
5837 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable13 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable13 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5838 if (UNTAG_Bool(variable15)) { /*if*/
5839 ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable13 /*pclassdefnode6*/) /*AbstractArray::add*/;
5840 }
5841 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable14 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable14 /*pclassdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5842 if (UNTAG_Bool(variable15)) { /*if*/
5843 ((array___AbstractArray___add_t)CALL( variable8 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode10*/, variable14 /*pclassdefnode9*/) /*AbstractArray::add*/;
5844 }
5845 variable16 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable7 /*listnode4*/, variable8 /*listnode10*/); /*new AModule*/
5846 variable15 = variable16;
5847 variable1 = variable15 /*pmodulenode1*/ /*node_list=*/;
5848 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5849 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
5850 tracehead = trace.prev;
5851 return;
5852 }
5853 void parser___ReduceAction44___init(val_t self, int* init_table) {
5854 struct trace_t trace = {NULL, NULL, 2692, LOCATE_parser___ReduceAction44___init};
5855 trace.prev = tracehead; tracehead = &trace;
5856 trace.file = LOCATE_parser;
5857 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction44].i]) return;
5858 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction44].i] = 1;
5859 tracehead = trace.prev;
5860 return;
5861 }
5862 void parser___ReduceAction45___action(val_t self, val_t param0) {
5863 struct trace_t trace = {NULL, NULL, 2696, LOCATE_parser___ReduceAction45___action};
5864 val_t variable0;
5865 val_t variable1;
5866 val_t variable2;
5867 val_t variable3;
5868 val_t variable4;
5869 val_t variable5;
5870 val_t variable6;
5871 val_t variable7;
5872 val_t variable8;
5873 val_t variable9;
5874 val_t variable10;
5875 val_t variable11;
5876 val_t variable12;
5877 val_t variable13;
5878 val_t variable14;
5879 val_t variable15;
5880 val_t variable16;
5881 val_t variable17;
5882 val_t variable18;
5883 trace.prev = tracehead; tracehead = &trace;
5884 trace.file = LOCATE_parser;
5885 variable0 = param0;
5886 variable1 = NIT_NULL /*null*/;
5887 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5888 variable2 = variable3;
5889 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5890 variable3 = variable4;
5891 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5892 variable4 = variable5;
5893 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5894 variable5 = variable6;
5895 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5896 variable6 = variable7;
5897 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
5898 variable7 = variable8;
5899 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5900 variable8 = variable9;
5901 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5902 variable9 = variable10;
5903 variable10 = variable7 /*nodearraylist1*/;
5904 variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5905 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction45___action, LOCATE_parser, 2708); nit_exit(1);}
5906 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5907 if (UNTAG_Bool(variable11)) { /*if*/
5908 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*AbstractArray::is_empty*/;
5909 if (UNTAG_Bool(variable11)) { /*if*/
5910 variable8 = variable10 /*listnode3*/ /*listnode4=*/;
5911 } else { /*if*/
5912 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable10 /*listnode3*/) /*IndexedCollection::append*/;
5913 }
5914 }
5915 variable11 = variable6 /*nodearraylist2*/;
5916 variable12 = TAG_Bool(( variable11 /*listnode5*/==NIT_NULL) || VAL_ISA( variable11 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5917 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction45___action, LOCATE_parser, 2717); nit_exit(1);}
5918 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
5919 variable12 = variable13;
5920 variable13 = variable5 /*nodearraylist3*/;
5921 variable14 = TAG_Bool(( variable13 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
5922 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction45___action, LOCATE_parser, 2720); nit_exit(1);}
5923 variable14 = variable3 /*nodearraylist5*/;
5924 variable15 = TAG_Bool(( variable14 /*listnode8*/==NIT_NULL) || VAL_ISA( variable14 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
5925 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction45___action, LOCATE_parser, 2722); nit_exit(1);}
5926 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable13 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable13 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5927 if (UNTAG_Bool(variable15)) { /*if*/
5928 ((array___AbstractArray___add_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable12 /*listnode9*/, variable13 /*ppropdefnode7*/) /*AbstractArray::add*/;
5929 }
5930 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*listnode8*/ == NIT_NULL /*null*/) || (( variable14 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable14 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5931 if (UNTAG_Bool(variable15)) { /*if*/
5932 variable15 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode9*/) /*AbstractArray::is_empty*/;
5933 if (UNTAG_Bool(variable15)) { /*if*/
5934 variable12 = variable14 /*listnode8*/ /*listnode9=*/;
5935 } else { /*if*/
5936 ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode9*/, variable14 /*listnode8*/) /*IndexedCollection::append*/;
5937 }
5938 }
5939 variable16 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable12 /*listnode9*/); /*new ATopClassdef*/
5940 variable15 = variable16;
5941 variable16 = variable2 /*nodearraylist6*/;
5942 variable17 = TAG_Bool(( variable16 /*pclassdefnode10*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode10*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
5943 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction45___action, LOCATE_parser, 2737); nit_exit(1);}
5944 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode5*/ == NIT_NULL /*null*/) || (( variable11 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5945 if (UNTAG_Bool(variable17)) { /*if*/
5946 variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode11*/) /*AbstractArray::is_empty*/;
5947 if (UNTAG_Bool(variable17)) { /*if*/
5948 variable9 = variable11 /*listnode5*/ /*listnode11=*/;
5949 } else { /*if*/
5950 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode11*/, variable11 /*listnode5*/) /*IndexedCollection::append*/;
5951 }
5952 }
5953 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5954 if (UNTAG_Bool(variable17)) { /*if*/
5955 ((array___AbstractArray___add_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode11*/, variable15 /*pclassdefnode6*/) /*AbstractArray::add*/;
5956 }
5957 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode10*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
5958 if (UNTAG_Bool(variable17)) { /*if*/
5959 ((array___AbstractArray___add_t)CALL( variable9 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode11*/, variable16 /*pclassdefnode10*/) /*AbstractArray::add*/;
5960 }
5961 variable18 = NEW_AModule_parser_prod___AModule___init_amodule( NIT_NULL /*null*/, variable8 /*listnode4*/, variable9 /*listnode11*/); /*new AModule*/
5962 variable17 = variable18;
5963 variable1 = variable17 /*pmodulenode1*/ /*node_list=*/;
5964 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
5965 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
5966 tracehead = trace.prev;
5967 return;
5968 }
5969 void parser___ReduceAction45___init(val_t self, int* init_table) {
5970 struct trace_t trace = {NULL, NULL, 2759, LOCATE_parser___ReduceAction45___init};
5971 trace.prev = tracehead; tracehead = &trace;
5972 trace.file = LOCATE_parser;
5973 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction45].i]) return;
5974 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction45].i] = 1;
5975 tracehead = trace.prev;
5976 return;
5977 }
5978 void parser___ReduceAction46___action(val_t self, val_t param0) {
5979 struct trace_t trace = {NULL, NULL, 2763, LOCATE_parser___ReduceAction46___action};
5980 val_t variable0;
5981 val_t variable1;
5982 val_t variable2;
5983 val_t variable3;
5984 val_t variable4;
5985 val_t variable5;
5986 val_t variable6;
5987 val_t variable7;
5988 val_t variable8;
5989 val_t variable9;
5990 val_t variable10;
5991 val_t variable11;
5992 val_t variable12;
5993 val_t variable13;
5994 val_t variable14;
5995 val_t variable15;
5996 val_t variable16;
5997 val_t variable17;
5998 val_t variable18;
5999 trace.prev = tracehead; tracehead = &trace;
6000 trace.file = LOCATE_parser;
6001 variable0 = param0;
6002 variable1 = NIT_NULL /*null*/;
6003 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6004 variable2 = variable3;
6005 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6006 variable3 = variable4;
6007 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6008 variable4 = variable5;
6009 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6010 variable5 = variable6;
6011 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6012 variable6 = variable7;
6013 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6014 variable7 = variable8;
6015 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6016 variable8 = variable9;
6017 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6018 variable9 = variable10;
6019 variable10 = variable7 /*nodearraylist1*/;
6020 variable11 = TAG_Bool(( variable10 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable10 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
6021 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction46___action, LOCATE_parser, 2775); nit_exit(1);}
6022 variable11 = variable6 /*nodearraylist2*/;
6023 variable12 = TAG_Bool(( variable11 /*listnode3*/==NIT_NULL) || VAL_ISA( variable11 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6024 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction46___action, LOCATE_parser, 2777); nit_exit(1);}
6025 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*listnode3*/ == NIT_NULL /*null*/) || (( variable11 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable11 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6026 if (UNTAG_Bool(variable12)) { /*if*/
6027 variable12 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*AbstractArray::is_empty*/;
6028 if (UNTAG_Bool(variable12)) { /*if*/
6029 variable8 = variable11 /*listnode3*/ /*listnode4=*/;
6030 } else { /*if*/
6031 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable11 /*listnode3*/) /*IndexedCollection::append*/;
6032 }
6033 }
6034 variable12 = variable5 /*nodearraylist3*/;
6035 variable13 = TAG_Bool(( variable12 /*listnode5*/==NIT_NULL) || VAL_ISA( variable12 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6036 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction46___action, LOCATE_parser, 2786); nit_exit(1);}
6037 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6038 variable13 = variable14;
6039 variable14 = variable4 /*nodearraylist4*/;
6040 variable15 = TAG_Bool(( variable14 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
6041 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction46___action, LOCATE_parser, 2789); nit_exit(1);}
6042 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable14 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable14 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6043 if (UNTAG_Bool(variable15)) { /*if*/
6044 ((array___AbstractArray___add_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode8*/, variable14 /*ppropdefnode7*/) /*AbstractArray::add*/;
6045 }
6046 variable16 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable13 /*listnode8*/); /*new ATopClassdef*/
6047 variable15 = variable16;
6048 variable16 = variable2 /*nodearraylist6*/;
6049 variable17 = TAG_Bool(( variable16 /*pclassdefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*pclassdefnode9*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
6050 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction46___action, LOCATE_parser, 2797); nit_exit(1);}
6051 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode5*/ == NIT_NULL /*null*/) || (( variable12 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6052 if (UNTAG_Bool(variable17)) { /*if*/
6053 variable17 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode10*/) /*AbstractArray::is_empty*/;
6054 if (UNTAG_Bool(variable17)) { /*if*/
6055 variable9 = variable12 /*listnode5*/ /*listnode10=*/;
6056 } else { /*if*/
6057 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode10*/, variable12 /*listnode5*/) /*IndexedCollection::append*/;
6058 }
6059 }
6060 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable15 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable15 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6061 if (UNTAG_Bool(variable17)) { /*if*/
6062 ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable15 /*pclassdefnode6*/) /*AbstractArray::add*/;
6063 }
6064 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*pclassdefnode9*/ == NIT_NULL /*null*/) || (( variable16 /*pclassdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*pclassdefnode9*/,COLOR_kernel___Object_____eqeq))( variable16 /*pclassdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6065 if (UNTAG_Bool(variable17)) { /*if*/
6066 ((array___AbstractArray___add_t)CALL( variable9 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable9 /*listnode10*/, variable16 /*pclassdefnode9*/) /*AbstractArray::add*/;
6067 }
6068 variable18 = NEW_AModule_parser_prod___AModule___init_amodule( variable10 /*ppackagedeclnode2*/, variable8 /*listnode4*/, variable9 /*listnode10*/); /*new AModule*/
6069 variable17 = variable18;
6070 variable1 = variable17 /*pmodulenode1*/ /*node_list=*/;
6071 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
6072 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
6073 tracehead = trace.prev;
6074 return;
6075 }
6076 void parser___ReduceAction46___init(val_t self, int* init_table) {
6077 struct trace_t trace = {NULL, NULL, 2819, LOCATE_parser___ReduceAction46___init};
6078 trace.prev = tracehead; tracehead = &trace;
6079 trace.file = LOCATE_parser;
6080 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction46].i]) return;
6081 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction46].i] = 1;
6082 tracehead = trace.prev;
6083 return;
6084 }
6085 void parser___ReduceAction47___action(val_t self, val_t param0) {
6086 struct trace_t trace = {NULL, NULL, 2823, LOCATE_parser___ReduceAction47___action};
6087 val_t variable0;
6088 val_t variable1;
6089 val_t variable2;
6090 val_t variable3;
6091 val_t variable4;
6092 val_t variable5;
6093 val_t variable6;
6094 val_t variable7;
6095 val_t variable8;
6096 val_t variable9;
6097 val_t variable10;
6098 val_t variable11;
6099 val_t variable12;
6100 val_t variable13;
6101 val_t variable14;
6102 val_t variable15;
6103 val_t variable16;
6104 val_t variable17;
6105 val_t variable18;
6106 val_t variable19;
6107 val_t variable20;
6108 trace.prev = tracehead; tracehead = &trace;
6109 trace.file = LOCATE_parser;
6110 variable0 = param0;
6111 variable1 = NIT_NULL /*null*/;
6112 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6113 variable2 = variable3;
6114 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6115 variable3 = variable4;
6116 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6117 variable4 = variable5;
6118 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6119 variable5 = variable6;
6120 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6121 variable6 = variable7;
6122 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6123 variable7 = variable8;
6124 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6125 variable8 = variable9;
6126 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6127 variable9 = variable10;
6128 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6129 variable10 = variable11;
6130 variable11 = variable8 /*nodearraylist1*/;
6131 variable12 = TAG_Bool(( variable11 /*ppackagedeclnode2*/==NIT_NULL) || VAL_ISA( variable11 /*ppackagedeclnode2*/, COLOR_PPackagedecl, ID_PPackagedecl)) /*cast PPackagedecl*/;
6132 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction47___action, LOCATE_parser, 2836); nit_exit(1);}
6133 variable12 = variable7 /*nodearraylist2*/;
6134 variable13 = TAG_Bool(( variable12 /*listnode3*/==NIT_NULL) || VAL_ISA( variable12 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6135 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction47___action, LOCATE_parser, 2838); nit_exit(1);}
6136 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode3*/ == NIT_NULL /*null*/) || (( variable12 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6137 if (UNTAG_Bool(variable13)) { /*if*/
6138 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode4*/) /*AbstractArray::is_empty*/;
6139 if (UNTAG_Bool(variable13)) { /*if*/
6140 variable9 = variable12 /*listnode3*/ /*listnode4=*/;
6141 } else { /*if*/
6142 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode4*/, variable12 /*listnode3*/) /*IndexedCollection::append*/;
6143 }
6144 }
6145 variable13 = variable6 /*nodearraylist3*/;
6146 variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6147 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction47___action, LOCATE_parser, 2847); nit_exit(1);}
6148 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6149 variable14 = variable15;
6150 variable15 = variable5 /*nodearraylist4*/;
6151 variable16 = TAG_Bool(( variable15 /*ppropdefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*ppropdefnode7*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
6152 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction47___action, LOCATE_parser, 2850); nit_exit(1);}
6153 variable16 = variable3 /*nodearraylist6*/;
6154 variable17 = TAG_Bool(( variable16 /*listnode8*/==NIT_NULL) || VAL_ISA( variable16 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6155 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction47___action, LOCATE_parser, 2852); nit_exit(1);}
6156 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*ppropdefnode7*/ == NIT_NULL /*null*/) || (( variable15 /*ppropdefnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*ppropdefnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*ppropdefnode7*/,COLOR_kernel___Object_____eqeq))( variable15 /*ppropdefnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6157 if (UNTAG_Bool(variable17)) { /*if*/
6158 ((array___AbstractArray___add_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode9*/, variable15 /*ppropdefnode7*/) /*AbstractArray::add*/;
6159 }
6160 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*listnode8*/ == NIT_NULL /*null*/) || (( variable16 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable16 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6161 if (UNTAG_Bool(variable17)) { /*if*/
6162 variable17 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode9*/) /*AbstractArray::is_empty*/;
6163 if (UNTAG_Bool(variable17)) { /*if*/
6164 variable14 = variable16 /*listnode8*/ /*listnode9=*/;
6165 } else { /*if*/
6166 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode9*/, variable16 /*listnode8*/) /*IndexedCollection::append*/;
6167 }
6168 }
6169 variable18 = NEW_ATopClassdef_parser_prod___ATopClassdef___init_atopclassdef( variable14 /*listnode9*/); /*new ATopClassdef*/
6170 variable17 = variable18;
6171 variable18 = variable2 /*nodearraylist7*/;
6172 variable19 = TAG_Bool(( variable18 /*pclassdefnode10*/==NIT_NULL) || VAL_ISA( variable18 /*pclassdefnode10*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
6173 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction47___action, LOCATE_parser, 2867); nit_exit(1);}
6174 variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6175 if (UNTAG_Bool(variable19)) { /*if*/
6176 variable19 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode11*/) /*AbstractArray::is_empty*/;
6177 if (UNTAG_Bool(variable19)) { /*if*/
6178 variable10 = variable13 /*listnode5*/ /*listnode11=*/;
6179 } else { /*if*/
6180 ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode11*/, variable13 /*listnode5*/) /*IndexedCollection::append*/;
6181 }
6182 }
6183 variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable17 /*pclassdefnode6*/ == NIT_NULL /*null*/) || (( variable17 /*pclassdefnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable17 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable17 /*pclassdefnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable17 /*pclassdefnode6*/,COLOR_kernel___Object_____eqeq))( variable17 /*pclassdefnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6184 if (UNTAG_Bool(variable19)) { /*if*/
6185 ((array___AbstractArray___add_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode11*/, variable17 /*pclassdefnode6*/) /*AbstractArray::add*/;
6186 }
6187 variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable18 /*pclassdefnode10*/ == NIT_NULL /*null*/) || (( variable18 /*pclassdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable18 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable18 /*pclassdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable18 /*pclassdefnode10*/,COLOR_kernel___Object_____eqeq))( variable18 /*pclassdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6188 if (UNTAG_Bool(variable19)) { /*if*/
6189 ((array___AbstractArray___add_t)CALL( variable10 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable10 /*listnode11*/, variable18 /*pclassdefnode10*/) /*AbstractArray::add*/;
6190 }
6191 variable20 = NEW_AModule_parser_prod___AModule___init_amodule( variable11 /*ppackagedeclnode2*/, variable9 /*listnode4*/, variable10 /*listnode11*/); /*new AModule*/
6192 variable19 = variable20;
6193 variable1 = variable19 /*pmodulenode1*/ /*node_list=*/;
6194 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(0)) /*Parser::go_to*/;
6195 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
6196 tracehead = trace.prev;
6197 return;
6198 }
6199 void parser___ReduceAction47___init(val_t self, int* init_table) {
6200 struct trace_t trace = {NULL, NULL, 2889, LOCATE_parser___ReduceAction47___init};
6201 trace.prev = tracehead; tracehead = &trace;
6202 trace.file = LOCATE_parser;
6203 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction47].i]) return;
6204 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction47].i] = 1;
6205 tracehead = trace.prev;
6206 return;
6207 }
6208 void parser___ReduceAction48___action(val_t self, val_t param0) {
6209 struct trace_t trace = {NULL, NULL, 2893, LOCATE_parser___ReduceAction48___action};
6210 val_t variable0;
6211 val_t variable1;
6212 val_t variable2;
6213 val_t variable3;
6214 val_t variable4;
6215 val_t variable5;
6216 val_t variable6;
6217 val_t variable7;
6218 val_t variable8;
6219 val_t variable9;
6220 val_t variable10;
6221 val_t variable11;
6222 trace.prev = tracehead; tracehead = &trace;
6223 trace.file = LOCATE_parser;
6224 variable0 = param0;
6225 variable1 = NIT_NULL /*null*/;
6226 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6227 variable2 = variable3;
6228 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6229 variable3 = variable4;
6230 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6231 variable4 = variable5;
6232 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6233 variable5 = variable6;
6234 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6235 variable6 = variable7;
6236 variable7 = variable6 /*nodearraylist1*/;
6237 variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
6238 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction48___action, LOCATE_parser, 2902); nit_exit(1);}
6239 variable8 = variable5 /*nodearraylist2*/;
6240 variable9 = TAG_Bool(( variable8 /*tkwpackagenode3*/==NIT_NULL) || VAL_ISA( variable8 /*tkwpackagenode3*/, COLOR_TKwpackage, ID_TKwpackage)) /*cast TKwpackage*/;
6241 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction48___action, LOCATE_parser, 2904); nit_exit(1);}
6242 variable9 = variable3 /*nodearraylist4*/;
6243 variable10 = TAG_Bool(( variable9 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/;
6244 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction48___action, LOCATE_parser, 2906); nit_exit(1);}
6245 variable11 = NEW_APackagedecl_parser_prod___APackagedecl___init_apackagedecl( variable7 /*pdocnode2*/, variable8 /*tkwpackagenode3*/, variable9 /*tidnode4*/); /*new APackagedecl*/
6246 variable10 = variable11;
6247 variable1 = variable10 /*ppackagedeclnode1*/ /*node_list=*/;
6248 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(1)) /*Parser::go_to*/;
6249 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
6250 tracehead = trace.prev;
6251 return;
6252 }
6253 void parser___ReduceAction48___init(val_t self, int* init_table) {
6254 struct trace_t trace = {NULL, NULL, 2915, LOCATE_parser___ReduceAction48___init};
6255 trace.prev = tracehead; tracehead = &trace;
6256 trace.file = LOCATE_parser;
6257 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction48].i]) return;
6258 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction48].i] = 1;
6259 tracehead = trace.prev;
6260 return;
6261 }
6262 void parser___ReduceAction49___action(val_t self, val_t param0) {
6263 struct trace_t trace = {NULL, NULL, 2919, LOCATE_parser___ReduceAction49___action};
6264 val_t variable0;
6265 val_t variable1;
6266 val_t variable2;
6267 val_t variable3;
6268 val_t variable4;
6269 val_t variable5;
6270 val_t variable6;
6271 val_t variable7;
6272 val_t variable8;
6273 val_t variable9;
6274 val_t variable10;
6275 val_t variable11;
6276 val_t variable12;
6277 trace.prev = tracehead; tracehead = &trace;
6278 trace.file = LOCATE_parser;
6279 variable0 = param0;
6280 variable1 = NIT_NULL /*null*/;
6281 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6282 variable2 = variable3;
6283 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6284 variable3 = variable4;
6285 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6286 variable4 = variable5;
6287 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6288 variable5 = variable6;
6289 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6290 variable6 = variable7;
6291 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6292 variable7 = variable8;
6293 variable8 = variable6 /*nodearraylist2*/;
6294 variable9 = TAG_Bool(( variable8 /*pvisibilitynode2*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode2*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
6295 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction49___action, LOCATE_parser, 2929); nit_exit(1);}
6296 variable9 = variable5 /*nodearraylist3*/;
6297 variable10 = TAG_Bool(( variable9 /*tkwimportnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwimportnode3*/, COLOR_TKwimport, ID_TKwimport)) /*cast TKwimport*/;
6298 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction49___action, LOCATE_parser, 2931); nit_exit(1);}
6299 variable10 = variable3 /*nodearraylist5*/;
6300 variable11 = TAG_Bool(( variable10 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/;
6301 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction49___action, LOCATE_parser, 2933); nit_exit(1);}
6302 variable12 = NEW_AImport_parser_prod___AImport___init_aimport( variable8 /*pvisibilitynode2*/, variable9 /*tkwimportnode3*/, variable10 /*tidnode4*/); /*new AImport*/
6303 variable11 = variable12;
6304 variable1 = variable11 /*pimportnode1*/ /*node_list=*/;
6305 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(2)) /*Parser::go_to*/;
6306 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
6307 tracehead = trace.prev;
6308 return;
6309 }
6310 void parser___ReduceAction49___init(val_t self, int* init_table) {
6311 struct trace_t trace = {NULL, NULL, 2942, LOCATE_parser___ReduceAction49___init};
6312 trace.prev = tracehead; tracehead = &trace;
6313 trace.file = LOCATE_parser;
6314 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction49].i]) return;
6315 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction49].i] = 1;
6316 tracehead = trace.prev;
6317 return;
6318 }
6319 void parser___ReduceAction50___action(val_t self, val_t param0) {
6320 struct trace_t trace = {NULL, NULL, 2946, LOCATE_parser___ReduceAction50___action};
6321 val_t variable0;
6322 val_t variable1;
6323 val_t variable2;
6324 val_t variable3;
6325 val_t variable4;
6326 val_t variable5;
6327 val_t variable6;
6328 val_t variable7;
6329 val_t variable8;
6330 val_t variable9;
6331 val_t variable10;
6332 val_t variable11;
6333 val_t variable12;
6334 trace.prev = tracehead; tracehead = &trace;
6335 trace.file = LOCATE_parser;
6336 variable0 = param0;
6337 variable1 = NIT_NULL /*null*/;
6338 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6339 variable2 = variable3;
6340 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6341 variable3 = variable4;
6342 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6343 variable4 = variable5;
6344 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6345 variable5 = variable6;
6346 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6347 variable6 = variable7;
6348 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6349 variable7 = variable8;
6350 variable8 = variable6 /*nodearraylist2*/;
6351 variable9 = TAG_Bool(( variable8 /*pvisibilitynode2*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode2*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
6352 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction50___action, LOCATE_parser, 2956); nit_exit(1);}
6353 variable9 = variable5 /*nodearraylist3*/;
6354 variable10 = TAG_Bool(( variable9 /*tkwimportnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwimportnode3*/, COLOR_TKwimport, ID_TKwimport)) /*cast TKwimport*/;
6355 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction50___action, LOCATE_parser, 2958); nit_exit(1);}
6356 variable10 = variable3 /*nodearraylist5*/;
6357 variable11 = TAG_Bool(( variable10 /*tkwendnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwendnode4*/, COLOR_TKwend, ID_TKwend)) /*cast TKwend*/;
6358 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction50___action, LOCATE_parser, 2960); nit_exit(1);}
6359 variable12 = NEW_ANoImport_parser_prod___ANoImport___init_anoimport( variable8 /*pvisibilitynode2*/, variable9 /*tkwimportnode3*/, variable10 /*tkwendnode4*/); /*new ANoImport*/
6360 variable11 = variable12;
6361 variable1 = variable11 /*pimportnode1*/ /*node_list=*/;
6362 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(2)) /*Parser::go_to*/;
6363 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
6364 tracehead = trace.prev;
6365 return;
6366 }
6367 void parser___ReduceAction50___init(val_t self, int* init_table) {
6368 struct trace_t trace = {NULL, NULL, 2969, LOCATE_parser___ReduceAction50___init};
6369 trace.prev = tracehead; tracehead = &trace;
6370 trace.file = LOCATE_parser;
6371 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction50].i]) return;
6372 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction50].i] = 1;
6373 tracehead = trace.prev;
6374 return;
6375 }
6376 void parser___ReduceAction51___action(val_t self, val_t param0) {
6377 struct trace_t trace = {NULL, NULL, 2973, LOCATE_parser___ReduceAction51___action};
6378 val_t variable0;
6379 val_t variable1;
6380 val_t variable2;
6381 val_t variable3;
6382 val_t variable4;
6383 val_t variable5;
6384 val_t variable6;
6385 trace.prev = tracehead; tracehead = &trace;
6386 trace.file = LOCATE_parser;
6387 variable0 = param0;
6388 variable1 = NIT_NULL /*null*/;
6389 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6390 variable2 = variable3;
6391 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6392 variable3 = variable4;
6393 variable4 = variable2 /*nodearraylist1*/;
6394 variable5 = TAG_Bool(( variable4 /*ppropdefnode2*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode2*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
6395 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction51___action, LOCATE_parser, 2979); nit_exit(1);}
6396 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ppropdefnode2*/ == NIT_NULL /*null*/) || (( variable4 /*ppropdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ppropdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*ppropdefnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6397 if (UNTAG_Bool(variable5)) { /*if*/
6398 ((array___AbstractArray___add_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode3*/, variable4 /*ppropdefnode2*/) /*AbstractArray::add*/;
6399 }
6400 variable6 = NEW_AMainClassdef_parser_prod___AMainClassdef___init_amainclassdef( variable3 /*listnode3*/); /*new AMainClassdef*/
6401 variable5 = variable6;
6402 variable1 = variable5 /*pclassdefnode1*/ /*node_list=*/;
6403 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(3)) /*Parser::go_to*/;
6404 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
6405 tracehead = trace.prev;
6406 return;
6407 }
6408 void parser___ReduceAction51___init(val_t self, int* init_table) {
6409 struct trace_t trace = {NULL, NULL, 2989, LOCATE_parser___ReduceAction51___init};
6410 trace.prev = tracehead; tracehead = &trace;
6411 trace.file = LOCATE_parser;
6412 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction51].i]) return;
6413 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction51].i] = 1;
6414 tracehead = trace.prev;
6415 return;
6416 }
6417 void parser___ReduceAction52___action(val_t self, val_t param0) {
6418 struct trace_t trace = {NULL, NULL, 2993, LOCATE_parser___ReduceAction52___action};
6419 val_t variable0;
6420 val_t variable1;
6421 val_t variable2;
6422 val_t variable3;
6423 trace.prev = tracehead; tracehead = &trace;
6424 trace.file = LOCATE_parser;
6425 variable0 = param0;
6426 variable1 = NIT_NULL /*null*/;
6427 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6428 variable2 = variable3;
6429 variable1 = NIT_NULL /*null*/ /*node_list=*/;
6430 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(3)) /*Parser::go_to*/;
6431 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
6432 tracehead = trace.prev;
6433 return;
6434 }
6435 void parser___ReduceAction52___init(val_t self, int* init_table) {
6436 struct trace_t trace = {NULL, NULL, 3000, LOCATE_parser___ReduceAction52___init};
6437 trace.prev = tracehead; tracehead = &trace;
6438 trace.file = LOCATE_parser;
6439 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction52].i]) return;
6440 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction52].i] = 1;
6441 tracehead = trace.prev;
6442 return;
6443 }
6444 void parser___ReduceAction53___action(val_t self, val_t param0) {
6445 struct trace_t trace = {NULL, NULL, 3004, LOCATE_parser___ReduceAction53___action};
6446 val_t variable0;
6447 val_t variable1;
6448 val_t variable2;
6449 val_t variable3;
6450 val_t variable4;
6451 val_t variable5;
6452 val_t variable6;
6453 val_t variable7;
6454 val_t variable8;
6455 val_t variable9;
6456 trace.prev = tracehead; tracehead = &trace;
6457 trace.file = LOCATE_parser;
6458 variable0 = param0;
6459 variable1 = NIT_NULL /*null*/;
6460 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6461 variable2 = variable3;
6462 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6463 variable3 = variable4;
6464 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6465 variable4 = variable5;
6466 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6467 variable5 = variable6;
6468 variable6 = variable3 /*nodearraylist2*/;
6469 variable7 = TAG_Bool(( variable6 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
6470 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction53___action, LOCATE_parser, 3012); nit_exit(1);}
6471 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode4*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6472 if (UNTAG_Bool(variable7)) { /*if*/
6473 ((array___AbstractArray___add_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode5*/, variable6 /*pexprnode4*/) /*AbstractArray::add*/;
6474 }
6475 variable8 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable5 /*listnode5*/); /*new ABlockExpr*/
6476 variable7 = variable8;
6477 variable9 = NEW_AMainMethPropdef_parser_prod___AMainMethPropdef___init_amainmethpropdef( NIT_NULL /*null*/, variable7 /*pexprnode3*/); /*new AMainMethPropdef*/
6478 variable8 = variable9;
6479 variable1 = variable8 /*ppropdefnode1*/ /*node_list=*/;
6480 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(4)) /*Parser::go_to*/;
6481 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
6482 tracehead = trace.prev;
6483 return;
6484 }
6485 void parser___ReduceAction53___init(val_t self, int* init_table) {
6486 struct trace_t trace = {NULL, NULL, 3026, LOCATE_parser___ReduceAction53___init};
6487 trace.prev = tracehead; tracehead = &trace;
6488 trace.file = LOCATE_parser;
6489 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction53].i]) return;
6490 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction53].i] = 1;
6491 tracehead = trace.prev;
6492 return;
6493 }
6494 void parser___ReduceAction54___action(val_t self, val_t param0) {
6495 struct trace_t trace = {NULL, NULL, 3030, LOCATE_parser___ReduceAction54___action};
6496 val_t variable0;
6497 val_t variable1;
6498 val_t variable2;
6499 val_t variable3;
6500 val_t variable4;
6501 val_t variable5;
6502 val_t variable6;
6503 val_t variable7;
6504 val_t variable8;
6505 val_t variable9;
6506 val_t variable10;
6507 val_t variable11;
6508 trace.prev = tracehead; tracehead = &trace;
6509 trace.file = LOCATE_parser;
6510 variable0 = param0;
6511 variable1 = NIT_NULL /*null*/;
6512 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6513 variable2 = variable3;
6514 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6515 variable3 = variable4;
6516 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6517 variable4 = variable5;
6518 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6519 variable5 = variable6;
6520 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6521 variable6 = variable7;
6522 variable7 = variable4 /*nodearraylist2*/;
6523 variable8 = TAG_Bool(( variable7 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
6524 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction54___action, LOCATE_parser, 3039); nit_exit(1);}
6525 variable8 = variable3 /*nodearraylist3*/;
6526 variable9 = TAG_Bool(( variable8 /*listnode5*/==NIT_NULL) || VAL_ISA( variable8 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6527 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction54___action, LOCATE_parser, 3041); nit_exit(1);}
6528 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode4*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6529 if (UNTAG_Bool(variable9)) { /*if*/
6530 ((array___AbstractArray___add_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode6*/, variable7 /*pexprnode4*/) /*AbstractArray::add*/;
6531 }
6532 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode5*/ == NIT_NULL /*null*/) || (( variable8 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6533 if (UNTAG_Bool(variable9)) { /*if*/
6534 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*AbstractArray::is_empty*/;
6535 if (UNTAG_Bool(variable9)) { /*if*/
6536 variable6 = variable8 /*listnode5*/ /*listnode6=*/;
6537 } else { /*if*/
6538 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable8 /*listnode5*/) /*IndexedCollection::append*/;
6539 }
6540 }
6541 variable10 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable6 /*listnode6*/); /*new ABlockExpr*/
6542 variable9 = variable10;
6543 variable11 = NEW_AMainMethPropdef_parser_prod___AMainMethPropdef___init_amainmethpropdef( NIT_NULL /*null*/, variable9 /*pexprnode3*/); /*new AMainMethPropdef*/
6544 variable10 = variable11;
6545 variable1 = variable10 /*ppropdefnode1*/ /*node_list=*/;
6546 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(4)) /*Parser::go_to*/;
6547 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
6548 tracehead = trace.prev;
6549 return;
6550 }
6551 void parser___ReduceAction54___init(val_t self, int* init_table) {
6552 struct trace_t trace = {NULL, NULL, 3062, LOCATE_parser___ReduceAction54___init};
6553 trace.prev = tracehead; tracehead = &trace;
6554 trace.file = LOCATE_parser;
6555 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction54].i]) return;
6556 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction54].i] = 1;
6557 tracehead = trace.prev;
6558 return;
6559 }
6560 void parser___ReduceAction55___action(val_t self, val_t param0) {
6561 struct trace_t trace = {NULL, NULL, 3066, LOCATE_parser___ReduceAction55___action};
6562 val_t variable0;
6563 val_t variable1;
6564 val_t variable2;
6565 val_t variable3;
6566 val_t variable4;
6567 val_t variable5;
6568 val_t variable6;
6569 val_t variable7;
6570 val_t variable8;
6571 val_t variable9;
6572 val_t variable10;
6573 val_t variable11;
6574 val_t variable12;
6575 val_t variable13;
6576 val_t variable14;
6577 val_t variable15;
6578 val_t variable16;
6579 val_t variable17;
6580 trace.prev = tracehead; tracehead = &trace;
6581 trace.file = LOCATE_parser;
6582 variable0 = param0;
6583 variable1 = NIT_NULL /*null*/;
6584 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6585 variable2 = variable3;
6586 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6587 variable3 = variable4;
6588 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6589 variable4 = variable5;
6590 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6591 variable5 = variable6;
6592 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6593 variable6 = variable7;
6594 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6595 variable7 = variable8;
6596 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6597 variable8 = variable9;
6598 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6599 variable9 = variable10;
6600 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6601 variable10 = variable11;
6602 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6603 variable11 = variable12;
6604 variable12 = variable8 /*nodearraylist1*/;
6605 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
6606 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction55___action, LOCATE_parser, 3080); nit_exit(1);}
6607 variable13 = variable7 /*nodearraylist2*/;
6608 variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
6609 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction55___action, LOCATE_parser, 3082); nit_exit(1);}
6610 variable14 = variable6 /*nodearraylist3*/;
6611 variable15 = TAG_Bool(( variable14 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable14 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
6612 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction55___action, LOCATE_parser, 3084); nit_exit(1);}
6613 variable15 = variable4 /*nodearraylist5*/;
6614 variable16 = TAG_Bool(( variable15 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
6615 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction55___action, LOCATE_parser, 3086); nit_exit(1);}
6616 variable17 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode4*/, variable14 /*pclasskindnode5*/, variable15 /*tclassidnode6*/, variable9 /*listnode7*/, variable10 /*listnode8*/, variable11 /*listnode9*/); /*new AClassdef*/
6617 variable16 = variable17;
6618 variable1 = variable16 /*pclassdefnode1*/ /*node_list=*/;
6619 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
6620 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
6621 tracehead = trace.prev;
6622 return;
6623 }
6624 void parser___ReduceAction55___init(val_t self, int* init_table) {
6625 struct trace_t trace = {NULL, NULL, 3100, LOCATE_parser___ReduceAction55___init};
6626 trace.prev = tracehead; tracehead = &trace;
6627 trace.file = LOCATE_parser;
6628 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction55].i]) return;
6629 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction55].i] = 1;
6630 tracehead = trace.prev;
6631 return;
6632 }
6633 void parser___ReduceAction56___action(val_t self, val_t param0) {
6634 struct trace_t trace = {NULL, NULL, 3104, LOCATE_parser___ReduceAction56___action};
6635 val_t variable0;
6636 val_t variable1;
6637 val_t variable2;
6638 val_t variable3;
6639 val_t variable4;
6640 val_t variable5;
6641 val_t variable6;
6642 val_t variable7;
6643 val_t variable8;
6644 val_t variable9;
6645 val_t variable10;
6646 val_t variable11;
6647 val_t variable12;
6648 val_t variable13;
6649 val_t variable14;
6650 val_t variable15;
6651 val_t variable16;
6652 val_t variable17;
6653 val_t variable18;
6654 val_t variable19;
6655 trace.prev = tracehead; tracehead = &trace;
6656 trace.file = LOCATE_parser;
6657 variable0 = param0;
6658 variable1 = NIT_NULL /*null*/;
6659 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6660 variable2 = variable3;
6661 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6662 variable3 = variable4;
6663 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6664 variable4 = variable5;
6665 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6666 variable5 = variable6;
6667 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6668 variable6 = variable7;
6669 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6670 variable7 = variable8;
6671 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6672 variable8 = variable9;
6673 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6674 variable9 = variable10;
6675 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6676 variable10 = variable11;
6677 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6678 variable11 = variable12;
6679 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6680 variable12 = variable13;
6681 variable13 = variable9 /*nodearraylist1*/;
6682 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
6683 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction56___action, LOCATE_parser, 3119); nit_exit(1);}
6684 variable14 = variable8 /*nodearraylist2*/;
6685 variable15 = TAG_Bool(( variable14 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
6686 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction56___action, LOCATE_parser, 3121); nit_exit(1);}
6687 variable15 = variable7 /*nodearraylist3*/;
6688 variable16 = TAG_Bool(( variable15 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
6689 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction56___action, LOCATE_parser, 3123); nit_exit(1);}
6690 variable16 = variable6 /*nodearraylist4*/;
6691 variable17 = TAG_Bool(( variable16 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
6692 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction56___action, LOCATE_parser, 3125); nit_exit(1);}
6693 variable17 = variable4 /*nodearraylist6*/;
6694 variable18 = TAG_Bool(( variable17 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable17 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
6695 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction56___action, LOCATE_parser, 3127); nit_exit(1);}
6696 variable19 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable13 /*pdocnode2*/, variable14 /*tkwredefnode3*/, variable15 /*pvisibilitynode4*/, variable16 /*pclasskindnode5*/, variable17 /*tclassidnode6*/, variable10 /*listnode7*/, variable11 /*listnode8*/, variable12 /*listnode9*/); /*new AClassdef*/
6697 variable18 = variable19;
6698 variable1 = variable18 /*pclassdefnode1*/ /*node_list=*/;
6699 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
6700 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
6701 tracehead = trace.prev;
6702 return;
6703 }
6704 void parser___ReduceAction56___init(val_t self, int* init_table) {
6705 struct trace_t trace = {NULL, NULL, 3141, LOCATE_parser___ReduceAction56___init};
6706 trace.prev = tracehead; tracehead = &trace;
6707 trace.file = LOCATE_parser;
6708 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction56].i]) return;
6709 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction56].i] = 1;
6710 tracehead = trace.prev;
6711 return;
6712 }
6713 void parser___ReduceAction57___action(val_t self, val_t param0) {
6714 struct trace_t trace = {NULL, NULL, 3145, LOCATE_parser___ReduceAction57___action};
6715 val_t variable0;
6716 val_t variable1;
6717 val_t variable2;
6718 val_t variable3;
6719 val_t variable4;
6720 val_t variable5;
6721 val_t variable6;
6722 val_t variable7;
6723 val_t variable8;
6724 val_t variable9;
6725 val_t variable10;
6726 val_t variable11;
6727 val_t variable12;
6728 val_t variable13;
6729 val_t variable14;
6730 val_t variable15;
6731 val_t variable16;
6732 val_t variable17;
6733 val_t variable18;
6734 val_t variable19;
6735 trace.prev = tracehead; tracehead = &trace;
6736 trace.file = LOCATE_parser;
6737 variable0 = param0;
6738 variable1 = NIT_NULL /*null*/;
6739 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6740 variable2 = variable3;
6741 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6742 variable3 = variable4;
6743 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6744 variable4 = variable5;
6745 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6746 variable5 = variable6;
6747 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6748 variable6 = variable7;
6749 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6750 variable7 = variable8;
6751 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6752 variable8 = variable9;
6753 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6754 variable9 = variable10;
6755 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6756 variable10 = variable11;
6757 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6758 variable11 = variable12;
6759 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6760 variable12 = variable13;
6761 variable13 = variable9 /*nodearraylist1*/;
6762 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
6763 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction57___action, LOCATE_parser, 3160); nit_exit(1);}
6764 variable14 = variable8 /*nodearraylist2*/;
6765 variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
6766 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction57___action, LOCATE_parser, 3162); nit_exit(1);}
6767 variable15 = variable7 /*nodearraylist3*/;
6768 variable16 = TAG_Bool(( variable15 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable15 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
6769 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction57___action, LOCATE_parser, 3164); nit_exit(1);}
6770 variable16 = variable5 /*nodearraylist5*/;
6771 variable17 = TAG_Bool(( variable16 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
6772 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction57___action, LOCATE_parser, 3166); nit_exit(1);}
6773 variable17 = variable4 /*nodearraylist6*/;
6774 variable18 = TAG_Bool(( variable17 /*listnode7*/==NIT_NULL) || VAL_ISA( variable17 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6775 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction57___action, LOCATE_parser, 3168); nit_exit(1);}
6776 variable18 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable17 /*listnode7*/ == NIT_NULL /*null*/) || (( variable17 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable17 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable17 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable17 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable17 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6777 if (UNTAG_Bool(variable18)) { /*if*/
6778 variable18 = ((array___AbstractArray___is_empty_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable10 /*listnode8*/) /*AbstractArray::is_empty*/;
6779 if (UNTAG_Bool(variable18)) { /*if*/
6780 variable10 = variable17 /*listnode7*/ /*listnode8=*/;
6781 } else { /*if*/
6782 ((abstract_collection___IndexedCollection___append_t)CALL( variable10 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable10 /*listnode8*/, variable17 /*listnode7*/) /*IndexedCollection::append*/;
6783 }
6784 }
6785 variable19 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable13 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode4*/, variable15 /*pclasskindnode5*/, variable16 /*tclassidnode6*/, variable10 /*listnode8*/, variable11 /*listnode9*/, variable12 /*listnode10*/); /*new AClassdef*/
6786 variable18 = variable19;
6787 variable1 = variable18 /*pclassdefnode1*/ /*node_list=*/;
6788 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
6789 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
6790 tracehead = trace.prev;
6791 return;
6792 }
6793 void parser___ReduceAction57___init(val_t self, int* init_table) {
6794 struct trace_t trace = {NULL, NULL, 3189, LOCATE_parser___ReduceAction57___init};
6795 trace.prev = tracehead; tracehead = &trace;
6796 trace.file = LOCATE_parser;
6797 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction57].i]) return;
6798 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction57].i] = 1;
6799 tracehead = trace.prev;
6800 return;
6801 }
6802 void parser___ReduceAction58___action(val_t self, val_t param0) {
6803 struct trace_t trace = {NULL, NULL, 3193, LOCATE_parser___ReduceAction58___action};
6804 val_t variable0;
6805 val_t variable1;
6806 val_t variable2;
6807 val_t variable3;
6808 val_t variable4;
6809 val_t variable5;
6810 val_t variable6;
6811 val_t variable7;
6812 val_t variable8;
6813 val_t variable9;
6814 val_t variable10;
6815 val_t variable11;
6816 val_t variable12;
6817 val_t variable13;
6818 val_t variable14;
6819 val_t variable15;
6820 val_t variable16;
6821 val_t variable17;
6822 val_t variable18;
6823 val_t variable19;
6824 val_t variable20;
6825 val_t variable21;
6826 trace.prev = tracehead; tracehead = &trace;
6827 trace.file = LOCATE_parser;
6828 variable0 = param0;
6829 variable1 = NIT_NULL /*null*/;
6830 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6831 variable2 = variable3;
6832 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6833 variable3 = variable4;
6834 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6835 variable4 = variable5;
6836 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6837 variable5 = variable6;
6838 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6839 variable6 = variable7;
6840 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6841 variable7 = variable8;
6842 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6843 variable8 = variable9;
6844 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6845 variable9 = variable10;
6846 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6847 variable10 = variable11;
6848 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6849 variable11 = variable12;
6850 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6851 variable12 = variable13;
6852 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6853 variable13 = variable14;
6854 variable14 = variable10 /*nodearraylist1*/;
6855 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
6856 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction58___action, LOCATE_parser, 3209); nit_exit(1);}
6857 variable15 = variable9 /*nodearraylist2*/;
6858 variable16 = TAG_Bool(( variable15 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
6859 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction58___action, LOCATE_parser, 3211); nit_exit(1);}
6860 variable16 = variable8 /*nodearraylist3*/;
6861 variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
6862 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction58___action, LOCATE_parser, 3213); nit_exit(1);}
6863 variable17 = variable7 /*nodearraylist4*/;
6864 variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
6865 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction58___action, LOCATE_parser, 3215); nit_exit(1);}
6866 variable18 = variable5 /*nodearraylist6*/;
6867 variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
6868 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction58___action, LOCATE_parser, 3217); nit_exit(1);}
6869 variable19 = variable4 /*nodearraylist7*/;
6870 variable20 = TAG_Bool(( variable19 /*listnode7*/==NIT_NULL) || VAL_ISA( variable19 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6871 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction58___action, LOCATE_parser, 3219); nit_exit(1);}
6872 variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode7*/ == NIT_NULL /*null*/) || (( variable19 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable19 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable19 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable19 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6873 if (UNTAG_Bool(variable20)) { /*if*/
6874 variable20 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*AbstractArray::is_empty*/;
6875 if (UNTAG_Bool(variable20)) { /*if*/
6876 variable11 = variable19 /*listnode7*/ /*listnode8=*/;
6877 } else { /*if*/
6878 ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable19 /*listnode7*/) /*IndexedCollection::append*/;
6879 }
6880 }
6881 variable21 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, variable15 /*tkwredefnode3*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable11 /*listnode8*/, variable12 /*listnode9*/, variable13 /*listnode10*/); /*new AClassdef*/
6882 variable20 = variable21;
6883 variable1 = variable20 /*pclassdefnode1*/ /*node_list=*/;
6884 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
6885 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
6886 tracehead = trace.prev;
6887 return;
6888 }
6889 void parser___ReduceAction58___init(val_t self, int* init_table) {
6890 struct trace_t trace = {NULL, NULL, 3240, LOCATE_parser___ReduceAction58___init};
6891 trace.prev = tracehead; tracehead = &trace;
6892 trace.file = LOCATE_parser;
6893 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction58].i]) return;
6894 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction58].i] = 1;
6895 tracehead = trace.prev;
6896 return;
6897 }
6898 void parser___ReduceAction59___action(val_t self, val_t param0) {
6899 struct trace_t trace = {NULL, NULL, 3244, LOCATE_parser___ReduceAction59___action};
6900 val_t variable0;
6901 val_t variable1;
6902 val_t variable2;
6903 val_t variable3;
6904 val_t variable4;
6905 val_t variable5;
6906 val_t variable6;
6907 val_t variable7;
6908 val_t variable8;
6909 val_t variable9;
6910 val_t variable10;
6911 val_t variable11;
6912 val_t variable12;
6913 val_t variable13;
6914 val_t variable14;
6915 val_t variable15;
6916 val_t variable16;
6917 val_t variable17;
6918 val_t variable18;
6919 val_t variable19;
6920 trace.prev = tracehead; tracehead = &trace;
6921 trace.file = LOCATE_parser;
6922 variable0 = param0;
6923 variable1 = NIT_NULL /*null*/;
6924 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6925 variable2 = variable3;
6926 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6927 variable3 = variable4;
6928 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6929 variable4 = variable5;
6930 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6931 variable5 = variable6;
6932 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6933 variable6 = variable7;
6934 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6935 variable7 = variable8;
6936 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6937 variable8 = variable9;
6938 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
6939 variable9 = variable10;
6940 variable11 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6941 variable10 = variable11;
6942 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6943 variable11 = variable12;
6944 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
6945 variable12 = variable13;
6946 variable13 = variable9 /*nodearraylist1*/;
6947 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
6948 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction59___action, LOCATE_parser, 3259); nit_exit(1);}
6949 variable14 = variable8 /*nodearraylist2*/;
6950 variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
6951 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction59___action, LOCATE_parser, 3261); nit_exit(1);}
6952 variable15 = variable7 /*nodearraylist3*/;
6953 variable16 = TAG_Bool(( variable15 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable15 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
6954 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction59___action, LOCATE_parser, 3263); nit_exit(1);}
6955 variable16 = variable5 /*nodearraylist5*/;
6956 variable17 = TAG_Bool(( variable16 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
6957 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction59___action, LOCATE_parser, 3265); nit_exit(1);}
6958 variable17 = variable4 /*nodearraylist6*/;
6959 variable18 = TAG_Bool(( variable17 /*listnode8*/==NIT_NULL) || VAL_ISA( variable17 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
6960 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction59___action, LOCATE_parser, 3267); nit_exit(1);}
6961 variable18 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable17 /*listnode8*/ == NIT_NULL /*null*/) || (( variable17 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable17 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable17 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable17 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable17 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
6962 if (UNTAG_Bool(variable18)) { /*if*/
6963 variable18 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode9*/) /*AbstractArray::is_empty*/;
6964 if (UNTAG_Bool(variable18)) { /*if*/
6965 variable11 = variable17 /*listnode8*/ /*listnode9=*/;
6966 } else { /*if*/
6967 ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode9*/, variable17 /*listnode8*/) /*IndexedCollection::append*/;
6968 }
6969 }
6970 variable19 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable13 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode4*/, variable15 /*pclasskindnode5*/, variable16 /*tclassidnode6*/, variable10 /*listnode7*/, variable11 /*listnode9*/, variable12 /*listnode10*/); /*new AClassdef*/
6971 variable18 = variable19;
6972 variable1 = variable18 /*pclassdefnode1*/ /*node_list=*/;
6973 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
6974 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
6975 tracehead = trace.prev;
6976 return;
6977 }
6978 void parser___ReduceAction59___init(val_t self, int* init_table) {
6979 struct trace_t trace = {NULL, NULL, 3288, LOCATE_parser___ReduceAction59___init};
6980 trace.prev = tracehead; tracehead = &trace;
6981 trace.file = LOCATE_parser;
6982 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction59].i]) return;
6983 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction59].i] = 1;
6984 tracehead = trace.prev;
6985 return;
6986 }
6987 void parser___ReduceAction60___action(val_t self, val_t param0) {
6988 struct trace_t trace = {NULL, NULL, 3292, LOCATE_parser___ReduceAction60___action};
6989 val_t variable0;
6990 val_t variable1;
6991 val_t variable2;
6992 val_t variable3;
6993 val_t variable4;
6994 val_t variable5;
6995 val_t variable6;
6996 val_t variable7;
6997 val_t variable8;
6998 val_t variable9;
6999 val_t variable10;
7000 val_t variable11;
7001 val_t variable12;
7002 val_t variable13;
7003 val_t variable14;
7004 val_t variable15;
7005 val_t variable16;
7006 val_t variable17;
7007 val_t variable18;
7008 val_t variable19;
7009 val_t variable20;
7010 val_t variable21;
7011 trace.prev = tracehead; tracehead = &trace;
7012 trace.file = LOCATE_parser;
7013 variable0 = param0;
7014 variable1 = NIT_NULL /*null*/;
7015 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7016 variable2 = variable3;
7017 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7018 variable3 = variable4;
7019 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7020 variable4 = variable5;
7021 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7022 variable5 = variable6;
7023 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7024 variable6 = variable7;
7025 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7026 variable7 = variable8;
7027 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7028 variable8 = variable9;
7029 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7030 variable9 = variable10;
7031 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7032 variable10 = variable11;
7033 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7034 variable11 = variable12;
7035 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7036 variable12 = variable13;
7037 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7038 variable13 = variable14;
7039 variable14 = variable10 /*nodearraylist1*/;
7040 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7041 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction60___action, LOCATE_parser, 3308); nit_exit(1);}
7042 variable15 = variable9 /*nodearraylist2*/;
7043 variable16 = TAG_Bool(( variable15 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
7044 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction60___action, LOCATE_parser, 3310); nit_exit(1);}
7045 variable16 = variable8 /*nodearraylist3*/;
7046 variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7047 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction60___action, LOCATE_parser, 3312); nit_exit(1);}
7048 variable17 = variable7 /*nodearraylist4*/;
7049 variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7050 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction60___action, LOCATE_parser, 3314); nit_exit(1);}
7051 variable18 = variable5 /*nodearraylist6*/;
7052 variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7053 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction60___action, LOCATE_parser, 3316); nit_exit(1);}
7054 variable19 = variable4 /*nodearraylist7*/;
7055 variable20 = TAG_Bool(( variable19 /*listnode8*/==NIT_NULL) || VAL_ISA( variable19 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7056 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction60___action, LOCATE_parser, 3318); nit_exit(1);}
7057 variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode8*/ == NIT_NULL /*null*/) || (( variable19 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable19 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable19 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable19 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7058 if (UNTAG_Bool(variable20)) { /*if*/
7059 variable20 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode9*/) /*AbstractArray::is_empty*/;
7060 if (UNTAG_Bool(variable20)) { /*if*/
7061 variable12 = variable19 /*listnode8*/ /*listnode9=*/;
7062 } else { /*if*/
7063 ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode9*/, variable19 /*listnode8*/) /*IndexedCollection::append*/;
7064 }
7065 }
7066 variable21 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, variable15 /*tkwredefnode3*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable11 /*listnode7*/, variable12 /*listnode9*/, variable13 /*listnode10*/); /*new AClassdef*/
7067 variable20 = variable21;
7068 variable1 = variable20 /*pclassdefnode1*/ /*node_list=*/;
7069 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7070 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
7071 tracehead = trace.prev;
7072 return;
7073 }
7074 void parser___ReduceAction60___init(val_t self, int* init_table) {
7075 struct trace_t trace = {NULL, NULL, 3339, LOCATE_parser___ReduceAction60___init};
7076 trace.prev = tracehead; tracehead = &trace;
7077 trace.file = LOCATE_parser;
7078 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction60].i]) return;
7079 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction60].i] = 1;
7080 tracehead = trace.prev;
7081 return;
7082 }
7083 void parser___ReduceAction61___action(val_t self, val_t param0) {
7084 struct trace_t trace = {NULL, NULL, 3343, LOCATE_parser___ReduceAction61___action};
7085 val_t variable0;
7086 val_t variable1;
7087 val_t variable2;
7088 val_t variable3;
7089 val_t variable4;
7090 val_t variable5;
7091 val_t variable6;
7092 val_t variable7;
7093 val_t variable8;
7094 val_t variable9;
7095 val_t variable10;
7096 val_t variable11;
7097 val_t variable12;
7098 val_t variable13;
7099 val_t variable14;
7100 val_t variable15;
7101 val_t variable16;
7102 val_t variable17;
7103 val_t variable18;
7104 val_t variable19;
7105 val_t variable20;
7106 val_t variable21;
7107 trace.prev = tracehead; tracehead = &trace;
7108 trace.file = LOCATE_parser;
7109 variable0 = param0;
7110 variable1 = NIT_NULL /*null*/;
7111 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7112 variable2 = variable3;
7113 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7114 variable3 = variable4;
7115 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7116 variable4 = variable5;
7117 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7118 variable5 = variable6;
7119 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7120 variable6 = variable7;
7121 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7122 variable7 = variable8;
7123 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7124 variable8 = variable9;
7125 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7126 variable9 = variable10;
7127 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7128 variable10 = variable11;
7129 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7130 variable11 = variable12;
7131 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7132 variable12 = variable13;
7133 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7134 variable13 = variable14;
7135 variable14 = variable10 /*nodearraylist1*/;
7136 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7137 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction61___action, LOCATE_parser, 3359); nit_exit(1);}
7138 variable15 = variable9 /*nodearraylist2*/;
7139 variable16 = TAG_Bool(( variable15 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7140 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction61___action, LOCATE_parser, 3361); nit_exit(1);}
7141 variable16 = variable8 /*nodearraylist3*/;
7142 variable17 = TAG_Bool(( variable16 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7143 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction61___action, LOCATE_parser, 3363); nit_exit(1);}
7144 variable17 = variable6 /*nodearraylist5*/;
7145 variable18 = TAG_Bool(( variable17 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable17 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7146 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction61___action, LOCATE_parser, 3365); nit_exit(1);}
7147 variable18 = variable5 /*nodearraylist6*/;
7148 variable19 = TAG_Bool(( variable18 /*listnode7*/==NIT_NULL) || VAL_ISA( variable18 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7149 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction61___action, LOCATE_parser, 3367); nit_exit(1);}
7150 variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable18 /*listnode7*/ == NIT_NULL /*null*/) || (( variable18 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable18 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable18 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable18 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable18 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7151 if (UNTAG_Bool(variable19)) { /*if*/
7152 variable19 = ((array___AbstractArray___is_empty_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable11 /*listnode8*/) /*AbstractArray::is_empty*/;
7153 if (UNTAG_Bool(variable19)) { /*if*/
7154 variable11 = variable18 /*listnode7*/ /*listnode8=*/;
7155 } else { /*if*/
7156 ((abstract_collection___IndexedCollection___append_t)CALL( variable11 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable11 /*listnode8*/, variable18 /*listnode7*/) /*IndexedCollection::append*/;
7157 }
7158 }
7159 variable19 = variable4 /*nodearraylist7*/;
7160 variable20 = TAG_Bool(( variable19 /*listnode9*/==NIT_NULL) || VAL_ISA( variable19 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7161 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction61___action, LOCATE_parser, 3376); nit_exit(1);}
7162 variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode9*/ == NIT_NULL /*null*/) || (( variable19 /*listnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable19 /*listnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable19 /*listnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable19 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7163 if (UNTAG_Bool(variable20)) { /*if*/
7164 variable20 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode10*/) /*AbstractArray::is_empty*/;
7165 if (UNTAG_Bool(variable20)) { /*if*/
7166 variable12 = variable19 /*listnode9*/ /*listnode10=*/;
7167 } else { /*if*/
7168 ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode10*/, variable19 /*listnode9*/) /*IndexedCollection::append*/;
7169 }
7170 }
7171 variable21 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode4*/, variable16 /*pclasskindnode5*/, variable17 /*tclassidnode6*/, variable11 /*listnode8*/, variable12 /*listnode10*/, variable13 /*listnode11*/); /*new AClassdef*/
7172 variable20 = variable21;
7173 variable1 = variable20 /*pclassdefnode1*/ /*node_list=*/;
7174 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7175 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
7176 tracehead = trace.prev;
7177 return;
7178 }
7179 void parser___ReduceAction61___init(val_t self, int* init_table) {
7180 struct trace_t trace = {NULL, NULL, 3397, LOCATE_parser___ReduceAction61___init};
7181 trace.prev = tracehead; tracehead = &trace;
7182 trace.file = LOCATE_parser;
7183 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction61].i]) return;
7184 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction61].i] = 1;
7185 tracehead = trace.prev;
7186 return;
7187 }
7188 void parser___ReduceAction62___action(val_t self, val_t param0) {
7189 struct trace_t trace = {NULL, NULL, 3401, LOCATE_parser___ReduceAction62___action};
7190 val_t variable0;
7191 val_t variable1;
7192 val_t variable2;
7193 val_t variable3;
7194 val_t variable4;
7195 val_t variable5;
7196 val_t variable6;
7197 val_t variable7;
7198 val_t variable8;
7199 val_t variable9;
7200 val_t variable10;
7201 val_t variable11;
7202 val_t variable12;
7203 val_t variable13;
7204 val_t variable14;
7205 val_t variable15;
7206 val_t variable16;
7207 val_t variable17;
7208 val_t variable18;
7209 val_t variable19;
7210 val_t variable20;
7211 val_t variable21;
7212 val_t variable22;
7213 val_t variable23;
7214 trace.prev = tracehead; tracehead = &trace;
7215 trace.file = LOCATE_parser;
7216 variable0 = param0;
7217 variable1 = NIT_NULL /*null*/;
7218 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7219 variable2 = variable3;
7220 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7221 variable3 = variable4;
7222 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7223 variable4 = variable5;
7224 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7225 variable5 = variable6;
7226 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7227 variable6 = variable7;
7228 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7229 variable7 = variable8;
7230 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7231 variable8 = variable9;
7232 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7233 variable9 = variable10;
7234 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7235 variable10 = variable11;
7236 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7237 variable11 = variable12;
7238 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7239 variable12 = variable13;
7240 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7241 variable13 = variable14;
7242 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7243 variable14 = variable15;
7244 variable15 = variable11 /*nodearraylist1*/;
7245 variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7246 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction62___action, LOCATE_parser, 3418); nit_exit(1);}
7247 variable16 = variable10 /*nodearraylist2*/;
7248 variable17 = TAG_Bool(( variable16 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
7249 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction62___action, LOCATE_parser, 3420); nit_exit(1);}
7250 variable17 = variable9 /*nodearraylist3*/;
7251 variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7252 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction62___action, LOCATE_parser, 3422); nit_exit(1);}
7253 variable18 = variable8 /*nodearraylist4*/;
7254 variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7255 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction62___action, LOCATE_parser, 3424); nit_exit(1);}
7256 variable19 = variable6 /*nodearraylist6*/;
7257 variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7258 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction62___action, LOCATE_parser, 3426); nit_exit(1);}
7259 variable20 = variable5 /*nodearraylist7*/;
7260 variable21 = TAG_Bool(( variable20 /*listnode7*/==NIT_NULL) || VAL_ISA( variable20 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7261 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction62___action, LOCATE_parser, 3428); nit_exit(1);}
7262 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode7*/ == NIT_NULL /*null*/) || (( variable20 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7263 if (UNTAG_Bool(variable21)) { /*if*/
7264 variable21 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*AbstractArray::is_empty*/;
7265 if (UNTAG_Bool(variable21)) { /*if*/
7266 variable12 = variable20 /*listnode7*/ /*listnode8=*/;
7267 } else { /*if*/
7268 ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable20 /*listnode7*/) /*IndexedCollection::append*/;
7269 }
7270 }
7271 variable21 = variable4 /*nodearraylist8*/;
7272 variable22 = TAG_Bool(( variable21 /*listnode9*/==NIT_NULL) || VAL_ISA( variable21 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7273 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction62___action, LOCATE_parser, 3437); nit_exit(1);}
7274 variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode9*/ == NIT_NULL /*null*/) || (( variable21 /*listnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*listnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*listnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7275 if (UNTAG_Bool(variable22)) { /*if*/
7276 variable22 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode10*/) /*AbstractArray::is_empty*/;
7277 if (UNTAG_Bool(variable22)) { /*if*/
7278 variable13 = variable21 /*listnode9*/ /*listnode10=*/;
7279 } else { /*if*/
7280 ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode10*/, variable21 /*listnode9*/) /*IndexedCollection::append*/;
7281 }
7282 }
7283 variable23 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, variable16 /*tkwredefnode3*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable12 /*listnode8*/, variable13 /*listnode10*/, variable14 /*listnode11*/); /*new AClassdef*/
7284 variable22 = variable23;
7285 variable1 = variable22 /*pclassdefnode1*/ /*node_list=*/;
7286 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7287 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
7288 tracehead = trace.prev;
7289 return;
7290 }
7291 void parser___ReduceAction62___init(val_t self, int* init_table) {
7292 struct trace_t trace = {NULL, NULL, 3458, LOCATE_parser___ReduceAction62___init};
7293 trace.prev = tracehead; tracehead = &trace;
7294 trace.file = LOCATE_parser;
7295 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction62].i]) return;
7296 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction62].i] = 1;
7297 tracehead = trace.prev;
7298 return;
7299 }
7300 void parser___ReduceAction63___action(val_t self, val_t param0) {
7301 struct trace_t trace = {NULL, NULL, 3462, LOCATE_parser___ReduceAction63___action};
7302 val_t variable0;
7303 val_t variable1;
7304 val_t variable2;
7305 val_t variable3;
7306 val_t variable4;
7307 val_t variable5;
7308 val_t variable6;
7309 val_t variable7;
7310 val_t variable8;
7311 val_t variable9;
7312 val_t variable10;
7313 val_t variable11;
7314 val_t variable12;
7315 val_t variable13;
7316 val_t variable14;
7317 val_t variable15;
7318 val_t variable16;
7319 val_t variable17;
7320 val_t variable18;
7321 val_t variable19;
7322 val_t variable20;
7323 trace.prev = tracehead; tracehead = &trace;
7324 trace.file = LOCATE_parser;
7325 variable0 = param0;
7326 variable1 = NIT_NULL /*null*/;
7327 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7328 variable2 = variable3;
7329 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7330 variable3 = variable4;
7331 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7332 variable4 = variable5;
7333 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7334 variable5 = variable6;
7335 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7336 variable6 = variable7;
7337 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7338 variable7 = variable8;
7339 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7340 variable8 = variable9;
7341 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7342 variable9 = variable10;
7343 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7344 variable10 = variable11;
7345 variable12 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7346 variable11 = variable12;
7347 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7348 variable12 = variable13;
7349 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7350 variable13 = variable14;
7351 variable14 = variable10 /*nodearraylist1*/;
7352 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7353 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction63___action, LOCATE_parser, 3478); nit_exit(1);}
7354 variable15 = variable9 /*nodearraylist2*/;
7355 variable16 = TAG_Bool(( variable15 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7356 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction63___action, LOCATE_parser, 3480); nit_exit(1);}
7357 variable16 = variable8 /*nodearraylist3*/;
7358 variable17 = TAG_Bool(( variable16 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7359 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction63___action, LOCATE_parser, 3482); nit_exit(1);}
7360 variable17 = variable6 /*nodearraylist5*/;
7361 variable18 = TAG_Bool(( variable17 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable17 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7362 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction63___action, LOCATE_parser, 3484); nit_exit(1);}
7363 variable18 = variable5 /*nodearraylist6*/;
7364 variable19 = TAG_Bool(( variable18 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable18 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
7365 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction63___action, LOCATE_parser, 3486); nit_exit(1);}
7366 variable19 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable18 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable18 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable18 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable18 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable18 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable18 /*ppropdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7367 if (UNTAG_Bool(variable19)) { /*if*/
7368 ((array___AbstractArray___add_t)CALL( variable13 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode10*/, variable18 /*ppropdefnode9*/) /*AbstractArray::add*/;
7369 }
7370 variable20 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable14 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode4*/, variable16 /*pclasskindnode5*/, variable17 /*tclassidnode6*/, variable11 /*listnode7*/, variable12 /*listnode8*/, variable13 /*listnode10*/); /*new AClassdef*/
7371 variable19 = variable20;
7372 variable1 = variable19 /*pclassdefnode1*/ /*node_list=*/;
7373 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7374 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
7375 tracehead = trace.prev;
7376 return;
7377 }
7378 void parser___ReduceAction63___init(val_t self, int* init_table) {
7379 struct trace_t trace = {NULL, NULL, 3503, LOCATE_parser___ReduceAction63___init};
7380 trace.prev = tracehead; tracehead = &trace;
7381 trace.file = LOCATE_parser;
7382 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction63].i]) return;
7383 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction63].i] = 1;
7384 tracehead = trace.prev;
7385 return;
7386 }
7387 void parser___ReduceAction64___action(val_t self, val_t param0) {
7388 struct trace_t trace = {NULL, NULL, 3507, LOCATE_parser___ReduceAction64___action};
7389 val_t variable0;
7390 val_t variable1;
7391 val_t variable2;
7392 val_t variable3;
7393 val_t variable4;
7394 val_t variable5;
7395 val_t variable6;
7396 val_t variable7;
7397 val_t variable8;
7398 val_t variable9;
7399 val_t variable10;
7400 val_t variable11;
7401 val_t variable12;
7402 val_t variable13;
7403 val_t variable14;
7404 val_t variable15;
7405 val_t variable16;
7406 val_t variable17;
7407 val_t variable18;
7408 val_t variable19;
7409 val_t variable20;
7410 val_t variable21;
7411 val_t variable22;
7412 trace.prev = tracehead; tracehead = &trace;
7413 trace.file = LOCATE_parser;
7414 variable0 = param0;
7415 variable1 = NIT_NULL /*null*/;
7416 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7417 variable2 = variable3;
7418 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7419 variable3 = variable4;
7420 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7421 variable4 = variable5;
7422 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7423 variable5 = variable6;
7424 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7425 variable6 = variable7;
7426 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7427 variable7 = variable8;
7428 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7429 variable8 = variable9;
7430 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7431 variable9 = variable10;
7432 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7433 variable10 = variable11;
7434 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7435 variable11 = variable12;
7436 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7437 variable12 = variable13;
7438 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7439 variable13 = variable14;
7440 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7441 variable14 = variable15;
7442 variable15 = variable11 /*nodearraylist1*/;
7443 variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7444 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction64___action, LOCATE_parser, 3524); nit_exit(1);}
7445 variable16 = variable10 /*nodearraylist2*/;
7446 variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7447 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction64___action, LOCATE_parser, 3526); nit_exit(1);}
7448 variable17 = variable9 /*nodearraylist3*/;
7449 variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7450 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction64___action, LOCATE_parser, 3528); nit_exit(1);}
7451 variable18 = variable7 /*nodearraylist5*/;
7452 variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7453 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction64___action, LOCATE_parser, 3530); nit_exit(1);}
7454 variable19 = variable6 /*nodearraylist6*/;
7455 variable20 = TAG_Bool(( variable19 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
7456 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction64___action, LOCATE_parser, 3532); nit_exit(1);}
7457 variable20 = variable4 /*nodearraylist8*/;
7458 variable21 = TAG_Bool(( variable20 /*listnode10*/==NIT_NULL) || VAL_ISA( variable20 /*listnode10*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7459 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction64___action, LOCATE_parser, 3534); nit_exit(1);}
7460 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable19 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable19 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable19 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable19 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable19 /*ppropdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7461 if (UNTAG_Bool(variable21)) { /*if*/
7462 ((array___AbstractArray___add_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode11*/, variable19 /*ppropdefnode9*/) /*AbstractArray::add*/;
7463 }
7464 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode10*/ == NIT_NULL /*null*/) || (( variable20 /*listnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*listnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*listnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*listnode10*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7465 if (UNTAG_Bool(variable21)) { /*if*/
7466 variable21 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode11*/) /*AbstractArray::is_empty*/;
7467 if (UNTAG_Bool(variable21)) { /*if*/
7468 variable14 = variable20 /*listnode10*/ /*listnode11=*/;
7469 } else { /*if*/
7470 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode11*/, variable20 /*listnode10*/) /*IndexedCollection::append*/;
7471 }
7472 }
7473 variable22 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable12 /*listnode7*/, variable13 /*listnode8*/, variable14 /*listnode11*/); /*new AClassdef*/
7474 variable21 = variable22;
7475 variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/;
7476 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7477 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
7478 tracehead = trace.prev;
7479 return;
7480 }
7481 void parser___ReduceAction64___init(val_t self, int* init_table) {
7482 struct trace_t trace = {NULL, NULL, 3558, LOCATE_parser___ReduceAction64___init};
7483 trace.prev = tracehead; tracehead = &trace;
7484 trace.file = LOCATE_parser;
7485 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction64].i]) return;
7486 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction64].i] = 1;
7487 tracehead = trace.prev;
7488 return;
7489 }
7490 void parser___ReduceAction65___action(val_t self, val_t param0) {
7491 struct trace_t trace = {NULL, NULL, 3562, LOCATE_parser___ReduceAction65___action};
7492 val_t variable0;
7493 val_t variable1;
7494 val_t variable2;
7495 val_t variable3;
7496 val_t variable4;
7497 val_t variable5;
7498 val_t variable6;
7499 val_t variable7;
7500 val_t variable8;
7501 val_t variable9;
7502 val_t variable10;
7503 val_t variable11;
7504 val_t variable12;
7505 val_t variable13;
7506 val_t variable14;
7507 val_t variable15;
7508 val_t variable16;
7509 val_t variable17;
7510 val_t variable18;
7511 val_t variable19;
7512 val_t variable20;
7513 val_t variable21;
7514 val_t variable22;
7515 trace.prev = tracehead; tracehead = &trace;
7516 trace.file = LOCATE_parser;
7517 variable0 = param0;
7518 variable1 = NIT_NULL /*null*/;
7519 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7520 variable2 = variable3;
7521 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7522 variable3 = variable4;
7523 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7524 variable4 = variable5;
7525 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7526 variable5 = variable6;
7527 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7528 variable6 = variable7;
7529 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7530 variable7 = variable8;
7531 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7532 variable8 = variable9;
7533 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7534 variable9 = variable10;
7535 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7536 variable10 = variable11;
7537 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7538 variable11 = variable12;
7539 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7540 variable12 = variable13;
7541 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7542 variable13 = variable14;
7543 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7544 variable14 = variable15;
7545 variable15 = variable11 /*nodearraylist1*/;
7546 variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7547 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction65___action, LOCATE_parser, 3579); nit_exit(1);}
7548 variable16 = variable10 /*nodearraylist2*/;
7549 variable17 = TAG_Bool(( variable16 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
7550 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction65___action, LOCATE_parser, 3581); nit_exit(1);}
7551 variable17 = variable9 /*nodearraylist3*/;
7552 variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7553 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction65___action, LOCATE_parser, 3583); nit_exit(1);}
7554 variable18 = variable8 /*nodearraylist4*/;
7555 variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7556 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction65___action, LOCATE_parser, 3585); nit_exit(1);}
7557 variable19 = variable6 /*nodearraylist6*/;
7558 variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7559 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction65___action, LOCATE_parser, 3587); nit_exit(1);}
7560 variable20 = variable5 /*nodearraylist7*/;
7561 variable21 = TAG_Bool(( variable20 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable20 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
7562 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction65___action, LOCATE_parser, 3589); nit_exit(1);}
7563 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable20 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable20 /*ppropdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7564 if (UNTAG_Bool(variable21)) { /*if*/
7565 ((array___AbstractArray___add_t)CALL( variable14 /*listnode10*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode10*/, variable20 /*ppropdefnode9*/) /*AbstractArray::add*/;
7566 }
7567 variable22 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, variable16 /*tkwredefnode3*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable12 /*listnode7*/, variable13 /*listnode8*/, variable14 /*listnode10*/); /*new AClassdef*/
7568 variable21 = variable22;
7569 variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/;
7570 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7571 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
7572 tracehead = trace.prev;
7573 return;
7574 }
7575 void parser___ReduceAction65___init(val_t self, int* init_table) {
7576 struct trace_t trace = {NULL, NULL, 3606, LOCATE_parser___ReduceAction65___init};
7577 trace.prev = tracehead; tracehead = &trace;
7578 trace.file = LOCATE_parser;
7579 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction65].i]) return;
7580 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction65].i] = 1;
7581 tracehead = trace.prev;
7582 return;
7583 }
7584 void parser___ReduceAction66___action(val_t self, val_t param0) {
7585 struct trace_t trace = {NULL, NULL, 3610, LOCATE_parser___ReduceAction66___action};
7586 val_t variable0;
7587 val_t variable1;
7588 val_t variable2;
7589 val_t variable3;
7590 val_t variable4;
7591 val_t variable5;
7592 val_t variable6;
7593 val_t variable7;
7594 val_t variable8;
7595 val_t variable9;
7596 val_t variable10;
7597 val_t variable11;
7598 val_t variable12;
7599 val_t variable13;
7600 val_t variable14;
7601 val_t variable15;
7602 val_t variable16;
7603 val_t variable17;
7604 val_t variable18;
7605 val_t variable19;
7606 val_t variable20;
7607 val_t variable21;
7608 val_t variable22;
7609 val_t variable23;
7610 val_t variable24;
7611 trace.prev = tracehead; tracehead = &trace;
7612 trace.file = LOCATE_parser;
7613 variable0 = param0;
7614 variable1 = NIT_NULL /*null*/;
7615 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7616 variable2 = variable3;
7617 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7618 variable3 = variable4;
7619 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7620 variable4 = variable5;
7621 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7622 variable5 = variable6;
7623 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7624 variable6 = variable7;
7625 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7626 variable7 = variable8;
7627 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7628 variable8 = variable9;
7629 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7630 variable9 = variable10;
7631 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7632 variable10 = variable11;
7633 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7634 variable11 = variable12;
7635 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7636 variable12 = variable13;
7637 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7638 variable13 = variable14;
7639 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7640 variable14 = variable15;
7641 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7642 variable15 = variable16;
7643 variable16 = variable12 /*nodearraylist1*/;
7644 variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7645 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction66___action, LOCATE_parser, 3628); nit_exit(1);}
7646 variable17 = variable11 /*nodearraylist2*/;
7647 variable18 = TAG_Bool(( variable17 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
7648 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction66___action, LOCATE_parser, 3630); nit_exit(1);}
7649 variable18 = variable10 /*nodearraylist3*/;
7650 variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7651 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction66___action, LOCATE_parser, 3632); nit_exit(1);}
7652 variable19 = variable9 /*nodearraylist4*/;
7653 variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7654 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction66___action, LOCATE_parser, 3634); nit_exit(1);}
7655 variable20 = variable7 /*nodearraylist6*/;
7656 variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7657 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction66___action, LOCATE_parser, 3636); nit_exit(1);}
7658 variable21 = variable6 /*nodearraylist7*/;
7659 variable22 = TAG_Bool(( variable21 /*ppropdefnode9*/==NIT_NULL) || VAL_ISA( variable21 /*ppropdefnode9*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
7660 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction66___action, LOCATE_parser, 3638); nit_exit(1);}
7661 variable22 = variable4 /*nodearraylist9*/;
7662 variable23 = TAG_Bool(( variable22 /*listnode10*/==NIT_NULL) || VAL_ISA( variable22 /*listnode10*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7663 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction66___action, LOCATE_parser, 3640); nit_exit(1);}
7664 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*ppropdefnode9*/ == NIT_NULL /*null*/) || (( variable21 /*ppropdefnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*ppropdefnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode9*/,COLOR_kernel___Object_____eqeq))( variable21 /*ppropdefnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7665 if (UNTAG_Bool(variable23)) { /*if*/
7666 ((array___AbstractArray___add_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode11*/, variable21 /*ppropdefnode9*/) /*AbstractArray::add*/;
7667 }
7668 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode10*/ == NIT_NULL /*null*/) || (( variable22 /*listnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*listnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*listnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*listnode10*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7669 if (UNTAG_Bool(variable23)) { /*if*/
7670 variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode11*/) /*AbstractArray::is_empty*/;
7671 if (UNTAG_Bool(variable23)) { /*if*/
7672 variable15 = variable22 /*listnode10*/ /*listnode11=*/;
7673 } else { /*if*/
7674 ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode11*/, variable22 /*listnode10*/) /*IndexedCollection::append*/;
7675 }
7676 }
7677 variable24 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, variable17 /*tkwredefnode3*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable13 /*listnode7*/, variable14 /*listnode8*/, variable15 /*listnode11*/); /*new AClassdef*/
7678 variable23 = variable24;
7679 variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/;
7680 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7681 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
7682 tracehead = trace.prev;
7683 return;
7684 }
7685 void parser___ReduceAction66___init(val_t self, int* init_table) {
7686 struct trace_t trace = {NULL, NULL, 3664, LOCATE_parser___ReduceAction66___init};
7687 trace.prev = tracehead; tracehead = &trace;
7688 trace.file = LOCATE_parser;
7689 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction66].i]) return;
7690 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction66].i] = 1;
7691 tracehead = trace.prev;
7692 return;
7693 }
7694 void parser___ReduceAction67___action(val_t self, val_t param0) {
7695 struct trace_t trace = {NULL, NULL, 3668, LOCATE_parser___ReduceAction67___action};
7696 val_t variable0;
7697 val_t variable1;
7698 val_t variable2;
7699 val_t variable3;
7700 val_t variable4;
7701 val_t variable5;
7702 val_t variable6;
7703 val_t variable7;
7704 val_t variable8;
7705 val_t variable9;
7706 val_t variable10;
7707 val_t variable11;
7708 val_t variable12;
7709 val_t variable13;
7710 val_t variable14;
7711 val_t variable15;
7712 val_t variable16;
7713 val_t variable17;
7714 val_t variable18;
7715 val_t variable19;
7716 val_t variable20;
7717 val_t variable21;
7718 val_t variable22;
7719 trace.prev = tracehead; tracehead = &trace;
7720 trace.file = LOCATE_parser;
7721 variable0 = param0;
7722 variable1 = NIT_NULL /*null*/;
7723 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7724 variable2 = variable3;
7725 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7726 variable3 = variable4;
7727 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7728 variable4 = variable5;
7729 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7730 variable5 = variable6;
7731 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7732 variable6 = variable7;
7733 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7734 variable7 = variable8;
7735 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7736 variable8 = variable9;
7737 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7738 variable9 = variable10;
7739 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7740 variable10 = variable11;
7741 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7742 variable11 = variable12;
7743 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7744 variable12 = variable13;
7745 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7746 variable13 = variable14;
7747 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7748 variable14 = variable15;
7749 variable15 = variable11 /*nodearraylist1*/;
7750 variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7751 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction67___action, LOCATE_parser, 3685); nit_exit(1);}
7752 variable16 = variable10 /*nodearraylist2*/;
7753 variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7754 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction67___action, LOCATE_parser, 3687); nit_exit(1);}
7755 variable17 = variable9 /*nodearraylist3*/;
7756 variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7757 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction67___action, LOCATE_parser, 3689); nit_exit(1);}
7758 variable18 = variable7 /*nodearraylist5*/;
7759 variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7760 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction67___action, LOCATE_parser, 3691); nit_exit(1);}
7761 variable19 = variable6 /*nodearraylist6*/;
7762 variable20 = TAG_Bool(( variable19 /*listnode7*/==NIT_NULL) || VAL_ISA( variable19 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7763 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction67___action, LOCATE_parser, 3693); nit_exit(1);}
7764 variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode7*/ == NIT_NULL /*null*/) || (( variable19 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable19 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable19 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable19 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7765 if (UNTAG_Bool(variable20)) { /*if*/
7766 variable20 = ((array___AbstractArray___is_empty_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable12 /*listnode8*/) /*AbstractArray::is_empty*/;
7767 if (UNTAG_Bool(variable20)) { /*if*/
7768 variable12 = variable19 /*listnode7*/ /*listnode8=*/;
7769 } else { /*if*/
7770 ((abstract_collection___IndexedCollection___append_t)CALL( variable12 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable12 /*listnode8*/, variable19 /*listnode7*/) /*IndexedCollection::append*/;
7771 }
7772 }
7773 variable20 = variable5 /*nodearraylist7*/;
7774 variable21 = TAG_Bool(( variable20 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable20 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
7775 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction67___action, LOCATE_parser, 3702); nit_exit(1);}
7776 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable20 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7777 if (UNTAG_Bool(variable21)) { /*if*/
7778 ((array___AbstractArray___add_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode11*/, variable20 /*ppropdefnode10*/) /*AbstractArray::add*/;
7779 }
7780 variable22 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable12 /*listnode8*/, variable13 /*listnode9*/, variable14 /*listnode11*/); /*new AClassdef*/
7781 variable21 = variable22;
7782 variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/;
7783 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7784 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
7785 tracehead = trace.prev;
7786 return;
7787 }
7788 void parser___ReduceAction67___init(val_t self, int* init_table) {
7789 struct trace_t trace = {NULL, NULL, 3719, LOCATE_parser___ReduceAction67___init};
7790 trace.prev = tracehead; tracehead = &trace;
7791 trace.file = LOCATE_parser;
7792 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction67].i]) return;
7793 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction67].i] = 1;
7794 tracehead = trace.prev;
7795 return;
7796 }
7797 void parser___ReduceAction68___action(val_t self, val_t param0) {
7798 struct trace_t trace = {NULL, NULL, 3723, LOCATE_parser___ReduceAction68___action};
7799 val_t variable0;
7800 val_t variable1;
7801 val_t variable2;
7802 val_t variable3;
7803 val_t variable4;
7804 val_t variable5;
7805 val_t variable6;
7806 val_t variable7;
7807 val_t variable8;
7808 val_t variable9;
7809 val_t variable10;
7810 val_t variable11;
7811 val_t variable12;
7812 val_t variable13;
7813 val_t variable14;
7814 val_t variable15;
7815 val_t variable16;
7816 val_t variable17;
7817 val_t variable18;
7818 val_t variable19;
7819 val_t variable20;
7820 val_t variable21;
7821 val_t variable22;
7822 val_t variable23;
7823 val_t variable24;
7824 trace.prev = tracehead; tracehead = &trace;
7825 trace.file = LOCATE_parser;
7826 variable0 = param0;
7827 variable1 = NIT_NULL /*null*/;
7828 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7829 variable2 = variable3;
7830 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7831 variable3 = variable4;
7832 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7833 variable4 = variable5;
7834 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7835 variable5 = variable6;
7836 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7837 variable6 = variable7;
7838 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7839 variable7 = variable8;
7840 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7841 variable8 = variable9;
7842 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7843 variable9 = variable10;
7844 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7845 variable10 = variable11;
7846 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7847 variable11 = variable12;
7848 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7849 variable12 = variable13;
7850 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7851 variable13 = variable14;
7852 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7853 variable14 = variable15;
7854 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7855 variable15 = variable16;
7856 variable16 = variable12 /*nodearraylist1*/;
7857 variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7858 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction68___action, LOCATE_parser, 3741); nit_exit(1);}
7859 variable17 = variable11 /*nodearraylist2*/;
7860 variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7861 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction68___action, LOCATE_parser, 3743); nit_exit(1);}
7862 variable18 = variable10 /*nodearraylist3*/;
7863 variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7864 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction68___action, LOCATE_parser, 3745); nit_exit(1);}
7865 variable19 = variable8 /*nodearraylist5*/;
7866 variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7867 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction68___action, LOCATE_parser, 3747); nit_exit(1);}
7868 variable20 = variable7 /*nodearraylist6*/;
7869 variable21 = TAG_Bool(( variable20 /*listnode7*/==NIT_NULL) || VAL_ISA( variable20 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7870 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction68___action, LOCATE_parser, 3749); nit_exit(1);}
7871 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode7*/ == NIT_NULL /*null*/) || (( variable20 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7872 if (UNTAG_Bool(variable21)) { /*if*/
7873 variable21 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode8*/) /*AbstractArray::is_empty*/;
7874 if (UNTAG_Bool(variable21)) { /*if*/
7875 variable13 = variable20 /*listnode7*/ /*listnode8=*/;
7876 } else { /*if*/
7877 ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode8*/, variable20 /*listnode7*/) /*IndexedCollection::append*/;
7878 }
7879 }
7880 variable21 = variable6 /*nodearraylist7*/;
7881 variable22 = TAG_Bool(( variable21 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable21 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
7882 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction68___action, LOCATE_parser, 3758); nit_exit(1);}
7883 variable22 = variable4 /*nodearraylist9*/;
7884 variable23 = TAG_Bool(( variable22 /*listnode11*/==NIT_NULL) || VAL_ISA( variable22 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7885 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction68___action, LOCATE_parser, 3760); nit_exit(1);}
7886 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable21 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7887 if (UNTAG_Bool(variable23)) { /*if*/
7888 ((array___AbstractArray___add_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode12*/, variable21 /*ppropdefnode10*/) /*AbstractArray::add*/;
7889 }
7890 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode11*/ == NIT_NULL /*null*/) || (( variable22 /*listnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*listnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*listnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7891 if (UNTAG_Bool(variable23)) { /*if*/
7892 variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode12*/) /*AbstractArray::is_empty*/;
7893 if (UNTAG_Bool(variable23)) { /*if*/
7894 variable15 = variable22 /*listnode11*/ /*listnode12=*/;
7895 } else { /*if*/
7896 ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode12*/, variable22 /*listnode11*/) /*IndexedCollection::append*/;
7897 }
7898 }
7899 variable24 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable13 /*listnode8*/, variable14 /*listnode9*/, variable15 /*listnode12*/); /*new AClassdef*/
7900 variable23 = variable24;
7901 variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/;
7902 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
7903 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
7904 tracehead = trace.prev;
7905 return;
7906 }
7907 void parser___ReduceAction68___init(val_t self, int* init_table) {
7908 struct trace_t trace = {NULL, NULL, 3784, LOCATE_parser___ReduceAction68___init};
7909 trace.prev = tracehead; tracehead = &trace;
7910 trace.file = LOCATE_parser;
7911 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction68].i]) return;
7912 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction68].i] = 1;
7913 tracehead = trace.prev;
7914 return;
7915 }
7916 void parser___ReduceAction69___action(val_t self, val_t param0) {
7917 struct trace_t trace = {NULL, NULL, 3788, LOCATE_parser___ReduceAction69___action};
7918 val_t variable0;
7919 val_t variable1;
7920 val_t variable2;
7921 val_t variable3;
7922 val_t variable4;
7923 val_t variable5;
7924 val_t variable6;
7925 val_t variable7;
7926 val_t variable8;
7927 val_t variable9;
7928 val_t variable10;
7929 val_t variable11;
7930 val_t variable12;
7931 val_t variable13;
7932 val_t variable14;
7933 val_t variable15;
7934 val_t variable16;
7935 val_t variable17;
7936 val_t variable18;
7937 val_t variable19;
7938 val_t variable20;
7939 val_t variable21;
7940 val_t variable22;
7941 val_t variable23;
7942 val_t variable24;
7943 trace.prev = tracehead; tracehead = &trace;
7944 trace.file = LOCATE_parser;
7945 variable0 = param0;
7946 variable1 = NIT_NULL /*null*/;
7947 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7948 variable2 = variable3;
7949 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7950 variable3 = variable4;
7951 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7952 variable4 = variable5;
7953 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7954 variable5 = variable6;
7955 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7956 variable6 = variable7;
7957 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7958 variable7 = variable8;
7959 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7960 variable8 = variable9;
7961 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7962 variable9 = variable10;
7963 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7964 variable10 = variable11;
7965 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7966 variable11 = variable12;
7967 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
7968 variable12 = variable13;
7969 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7970 variable13 = variable14;
7971 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7972 variable14 = variable15;
7973 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
7974 variable15 = variable16;
7975 variable16 = variable12 /*nodearraylist1*/;
7976 variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
7977 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction69___action, LOCATE_parser, 3806); nit_exit(1);}
7978 variable17 = variable11 /*nodearraylist2*/;
7979 variable18 = TAG_Bool(( variable17 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
7980 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction69___action, LOCATE_parser, 3808); nit_exit(1);}
7981 variable18 = variable10 /*nodearraylist3*/;
7982 variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
7983 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction69___action, LOCATE_parser, 3810); nit_exit(1);}
7984 variable19 = variable9 /*nodearraylist4*/;
7985 variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
7986 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction69___action, LOCATE_parser, 3812); nit_exit(1);}
7987 variable20 = variable7 /*nodearraylist6*/;
7988 variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
7989 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction69___action, LOCATE_parser, 3814); nit_exit(1);}
7990 variable21 = variable6 /*nodearraylist7*/;
7991 variable22 = TAG_Bool(( variable21 /*listnode7*/==NIT_NULL) || VAL_ISA( variable21 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
7992 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction69___action, LOCATE_parser, 3816); nit_exit(1);}
7993 variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode7*/ == NIT_NULL /*null*/) || (( variable21 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
7994 if (UNTAG_Bool(variable22)) { /*if*/
7995 variable22 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode8*/) /*AbstractArray::is_empty*/;
7996 if (UNTAG_Bool(variable22)) { /*if*/
7997 variable13 = variable21 /*listnode7*/ /*listnode8=*/;
7998 } else { /*if*/
7999 ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode8*/, variable21 /*listnode7*/) /*IndexedCollection::append*/;
8000 }
8001 }
8002 variable22 = variable5 /*nodearraylist8*/;
8003 variable23 = TAG_Bool(( variable22 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable22 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8004 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction69___action, LOCATE_parser, 3825); nit_exit(1);}
8005 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable22 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8006 if (UNTAG_Bool(variable23)) { /*if*/
8007 ((array___AbstractArray___add_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode11*/, variable22 /*ppropdefnode10*/) /*AbstractArray::add*/;
8008 }
8009 variable24 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, variable17 /*tkwredefnode3*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable13 /*listnode8*/, variable14 /*listnode9*/, variable15 /*listnode11*/); /*new AClassdef*/
8010 variable23 = variable24;
8011 variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/;
8012 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8013 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
8014 tracehead = trace.prev;
8015 return;
8016 }
8017 void parser___ReduceAction69___init(val_t self, int* init_table) {
8018 struct trace_t trace = {NULL, NULL, 3842, LOCATE_parser___ReduceAction69___init};
8019 trace.prev = tracehead; tracehead = &trace;
8020 trace.file = LOCATE_parser;
8021 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction69].i]) return;
8022 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction69].i] = 1;
8023 tracehead = trace.prev;
8024 return;
8025 }
8026 void parser___ReduceAction70___action(val_t self, val_t param0) {
8027 struct trace_t trace = {NULL, NULL, 3846, LOCATE_parser___ReduceAction70___action};
8028 val_t variable0;
8029 val_t variable1;
8030 val_t variable2;
8031 val_t variable3;
8032 val_t variable4;
8033 val_t variable5;
8034 val_t variable6;
8035 val_t variable7;
8036 val_t variable8;
8037 val_t variable9;
8038 val_t variable10;
8039 val_t variable11;
8040 val_t variable12;
8041 val_t variable13;
8042 val_t variable14;
8043 val_t variable15;
8044 val_t variable16;
8045 val_t variable17;
8046 val_t variable18;
8047 val_t variable19;
8048 val_t variable20;
8049 val_t variable21;
8050 val_t variable22;
8051 val_t variable23;
8052 val_t variable24;
8053 val_t variable25;
8054 val_t variable26;
8055 trace.prev = tracehead; tracehead = &trace;
8056 trace.file = LOCATE_parser;
8057 variable0 = param0;
8058 variable1 = NIT_NULL /*null*/;
8059 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8060 variable2 = variable3;
8061 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8062 variable3 = variable4;
8063 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8064 variable4 = variable5;
8065 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8066 variable5 = variable6;
8067 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8068 variable6 = variable7;
8069 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8070 variable7 = variable8;
8071 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8072 variable8 = variable9;
8073 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8074 variable9 = variable10;
8075 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8076 variable10 = variable11;
8077 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8078 variable11 = variable12;
8079 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8080 variable12 = variable13;
8081 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8082 variable13 = variable14;
8083 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8084 variable14 = variable15;
8085 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8086 variable15 = variable16;
8087 variable17 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8088 variable16 = variable17;
8089 variable17 = variable13 /*nodearraylist1*/;
8090 variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8091 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3865); nit_exit(1);}
8092 variable18 = variable12 /*nodearraylist2*/;
8093 variable19 = TAG_Bool(( variable18 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
8094 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3867); nit_exit(1);}
8095 variable19 = variable11 /*nodearraylist3*/;
8096 variable20 = TAG_Bool(( variable19 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8097 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3869); nit_exit(1);}
8098 variable20 = variable10 /*nodearraylist4*/;
8099 variable21 = TAG_Bool(( variable20 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable20 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8100 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3871); nit_exit(1);}
8101 variable21 = variable8 /*nodearraylist6*/;
8102 variable22 = TAG_Bool(( variable21 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable21 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8103 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3873); nit_exit(1);}
8104 variable22 = variable7 /*nodearraylist7*/;
8105 variable23 = TAG_Bool(( variable22 /*listnode7*/==NIT_NULL) || VAL_ISA( variable22 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8106 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3875); nit_exit(1);}
8107 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode7*/ == NIT_NULL /*null*/) || (( variable22 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8108 if (UNTAG_Bool(variable23)) { /*if*/
8109 variable23 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode8*/) /*AbstractArray::is_empty*/;
8110 if (UNTAG_Bool(variable23)) { /*if*/
8111 variable14 = variable22 /*listnode7*/ /*listnode8=*/;
8112 } else { /*if*/
8113 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode8*/, variable22 /*listnode7*/) /*IndexedCollection::append*/;
8114 }
8115 }
8116 variable23 = variable6 /*nodearraylist8*/;
8117 variable24 = TAG_Bool(( variable23 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable23 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8118 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3884); nit_exit(1);}
8119 variable24 = variable4 /*nodearraylist10*/;
8120 variable25 = TAG_Bool(( variable24 /*listnode11*/==NIT_NULL) || VAL_ISA( variable24 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8121 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction70___action, LOCATE_parser, 3886); nit_exit(1);}
8122 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable23 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8123 if (UNTAG_Bool(variable25)) { /*if*/
8124 ((array___AbstractArray___add_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode12*/, variable23 /*ppropdefnode10*/) /*AbstractArray::add*/;
8125 }
8126 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode11*/ == NIT_NULL /*null*/) || (( variable24 /*listnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable24 /*listnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable24 /*listnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable24 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8127 if (UNTAG_Bool(variable25)) { /*if*/
8128 variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode12*/) /*AbstractArray::is_empty*/;
8129 if (UNTAG_Bool(variable25)) { /*if*/
8130 variable16 = variable24 /*listnode11*/ /*listnode12=*/;
8131 } else { /*if*/
8132 ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode12*/, variable24 /*listnode11*/) /*IndexedCollection::append*/;
8133 }
8134 }
8135 variable26 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, variable18 /*tkwredefnode3*/, variable19 /*pvisibilitynode4*/, variable20 /*pclasskindnode5*/, variable21 /*tclassidnode6*/, variable14 /*listnode8*/, variable15 /*listnode9*/, variable16 /*listnode12*/); /*new AClassdef*/
8136 variable25 = variable26;
8137 variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/;
8138 variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8139 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/;
8140 tracehead = trace.prev;
8141 return;
8142 }
8143 void parser___ReduceAction70___init(val_t self, int* init_table) {
8144 struct trace_t trace = {NULL, NULL, 3910, LOCATE_parser___ReduceAction70___init};
8145 trace.prev = tracehead; tracehead = &trace;
8146 trace.file = LOCATE_parser;
8147 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction70].i]) return;
8148 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction70].i] = 1;
8149 tracehead = trace.prev;
8150 return;
8151 }
8152 void parser___ReduceAction71___action(val_t self, val_t param0) {
8153 struct trace_t trace = {NULL, NULL, 3914, LOCATE_parser___ReduceAction71___action};
8154 val_t variable0;
8155 val_t variable1;
8156 val_t variable2;
8157 val_t variable3;
8158 val_t variable4;
8159 val_t variable5;
8160 val_t variable6;
8161 val_t variable7;
8162 val_t variable8;
8163 val_t variable9;
8164 val_t variable10;
8165 val_t variable11;
8166 val_t variable12;
8167 val_t variable13;
8168 val_t variable14;
8169 val_t variable15;
8170 val_t variable16;
8171 val_t variable17;
8172 val_t variable18;
8173 val_t variable19;
8174 val_t variable20;
8175 val_t variable21;
8176 val_t variable22;
8177 trace.prev = tracehead; tracehead = &trace;
8178 trace.file = LOCATE_parser;
8179 variable0 = param0;
8180 variable1 = NIT_NULL /*null*/;
8181 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8182 variable2 = variable3;
8183 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8184 variable3 = variable4;
8185 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8186 variable4 = variable5;
8187 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8188 variable5 = variable6;
8189 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8190 variable6 = variable7;
8191 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8192 variable7 = variable8;
8193 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8194 variable8 = variable9;
8195 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8196 variable9 = variable10;
8197 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8198 variable10 = variable11;
8199 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8200 variable11 = variable12;
8201 variable13 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8202 variable12 = variable13;
8203 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8204 variable13 = variable14;
8205 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8206 variable14 = variable15;
8207 variable15 = variable11 /*nodearraylist1*/;
8208 variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8209 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction71___action, LOCATE_parser, 3931); nit_exit(1);}
8210 variable16 = variable10 /*nodearraylist2*/;
8211 variable17 = TAG_Bool(( variable16 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8212 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction71___action, LOCATE_parser, 3933); nit_exit(1);}
8213 variable17 = variable9 /*nodearraylist3*/;
8214 variable18 = TAG_Bool(( variable17 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable17 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8215 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction71___action, LOCATE_parser, 3935); nit_exit(1);}
8216 variable18 = variable7 /*nodearraylist5*/;
8217 variable19 = TAG_Bool(( variable18 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable18 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8218 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction71___action, LOCATE_parser, 3937); nit_exit(1);}
8219 variable19 = variable6 /*nodearraylist6*/;
8220 variable20 = TAG_Bool(( variable19 /*listnode8*/==NIT_NULL) || VAL_ISA( variable19 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8221 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction71___action, LOCATE_parser, 3939); nit_exit(1);}
8222 variable20 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable19 /*listnode8*/ == NIT_NULL /*null*/) || (( variable19 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable19 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable19 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable19 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable19 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8223 if (UNTAG_Bool(variable20)) { /*if*/
8224 variable20 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode9*/) /*AbstractArray::is_empty*/;
8225 if (UNTAG_Bool(variable20)) { /*if*/
8226 variable13 = variable19 /*listnode8*/ /*listnode9=*/;
8227 } else { /*if*/
8228 ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode9*/, variable19 /*listnode8*/) /*IndexedCollection::append*/;
8229 }
8230 }
8231 variable20 = variable5 /*nodearraylist7*/;
8232 variable21 = TAG_Bool(( variable20 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable20 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8233 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction71___action, LOCATE_parser, 3948); nit_exit(1);}
8234 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable20 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable20 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8235 if (UNTAG_Bool(variable21)) { /*if*/
8236 ((array___AbstractArray___add_t)CALL( variable14 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode11*/, variable20 /*ppropdefnode10*/) /*AbstractArray::add*/;
8237 }
8238 variable22 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable15 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode4*/, variable17 /*pclasskindnode5*/, variable18 /*tclassidnode6*/, variable12 /*listnode7*/, variable13 /*listnode9*/, variable14 /*listnode11*/); /*new AClassdef*/
8239 variable21 = variable22;
8240 variable1 = variable21 /*pclassdefnode1*/ /*node_list=*/;
8241 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8242 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
8243 tracehead = trace.prev;
8244 return;
8245 }
8246 void parser___ReduceAction71___init(val_t self, int* init_table) {
8247 struct trace_t trace = {NULL, NULL, 3965, LOCATE_parser___ReduceAction71___init};
8248 trace.prev = tracehead; tracehead = &trace;
8249 trace.file = LOCATE_parser;
8250 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction71].i]) return;
8251 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction71].i] = 1;
8252 tracehead = trace.prev;
8253 return;
8254 }
8255 void parser___ReduceAction72___action(val_t self, val_t param0) {
8256 struct trace_t trace = {NULL, NULL, 3969, LOCATE_parser___ReduceAction72___action};
8257 val_t variable0;
8258 val_t variable1;
8259 val_t variable2;
8260 val_t variable3;
8261 val_t variable4;
8262 val_t variable5;
8263 val_t variable6;
8264 val_t variable7;
8265 val_t variable8;
8266 val_t variable9;
8267 val_t variable10;
8268 val_t variable11;
8269 val_t variable12;
8270 val_t variable13;
8271 val_t variable14;
8272 val_t variable15;
8273 val_t variable16;
8274 val_t variable17;
8275 val_t variable18;
8276 val_t variable19;
8277 val_t variable20;
8278 val_t variable21;
8279 val_t variable22;
8280 val_t variable23;
8281 val_t variable24;
8282 trace.prev = tracehead; tracehead = &trace;
8283 trace.file = LOCATE_parser;
8284 variable0 = param0;
8285 variable1 = NIT_NULL /*null*/;
8286 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8287 variable2 = variable3;
8288 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8289 variable3 = variable4;
8290 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8291 variable4 = variable5;
8292 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8293 variable5 = variable6;
8294 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8295 variable6 = variable7;
8296 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8297 variable7 = variable8;
8298 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8299 variable8 = variable9;
8300 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8301 variable9 = variable10;
8302 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8303 variable10 = variable11;
8304 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8305 variable11 = variable12;
8306 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8307 variable12 = variable13;
8308 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8309 variable13 = variable14;
8310 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8311 variable14 = variable15;
8312 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8313 variable15 = variable16;
8314 variable16 = variable12 /*nodearraylist1*/;
8315 variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8316 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction72___action, LOCATE_parser, 3987); nit_exit(1);}
8317 variable17 = variable11 /*nodearraylist2*/;
8318 variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8319 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction72___action, LOCATE_parser, 3989); nit_exit(1);}
8320 variable18 = variable10 /*nodearraylist3*/;
8321 variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8322 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction72___action, LOCATE_parser, 3991); nit_exit(1);}
8323 variable19 = variable8 /*nodearraylist5*/;
8324 variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8325 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction72___action, LOCATE_parser, 3993); nit_exit(1);}
8326 variable20 = variable7 /*nodearraylist6*/;
8327 variable21 = TAG_Bool(( variable20 /*listnode8*/==NIT_NULL) || VAL_ISA( variable20 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8328 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction72___action, LOCATE_parser, 3995); nit_exit(1);}
8329 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode8*/ == NIT_NULL /*null*/) || (( variable20 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8330 if (UNTAG_Bool(variable21)) { /*if*/
8331 variable21 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode9*/) /*AbstractArray::is_empty*/;
8332 if (UNTAG_Bool(variable21)) { /*if*/
8333 variable14 = variable20 /*listnode8*/ /*listnode9=*/;
8334 } else { /*if*/
8335 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode9*/, variable20 /*listnode8*/) /*IndexedCollection::append*/;
8336 }
8337 }
8338 variable21 = variable6 /*nodearraylist7*/;
8339 variable22 = TAG_Bool(( variable21 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable21 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8340 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction72___action, LOCATE_parser, 4004); nit_exit(1);}
8341 variable22 = variable4 /*nodearraylist9*/;
8342 variable23 = TAG_Bool(( variable22 /*listnode11*/==NIT_NULL) || VAL_ISA( variable22 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8343 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction72___action, LOCATE_parser, 4006); nit_exit(1);}
8344 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable21 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable21 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8345 if (UNTAG_Bool(variable23)) { /*if*/
8346 ((array___AbstractArray___add_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode12*/, variable21 /*ppropdefnode10*/) /*AbstractArray::add*/;
8347 }
8348 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode11*/ == NIT_NULL /*null*/) || (( variable22 /*listnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*listnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*listnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8349 if (UNTAG_Bool(variable23)) { /*if*/
8350 variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode12*/) /*AbstractArray::is_empty*/;
8351 if (UNTAG_Bool(variable23)) { /*if*/
8352 variable15 = variable22 /*listnode11*/ /*listnode12=*/;
8353 } else { /*if*/
8354 ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode12*/, variable22 /*listnode11*/) /*IndexedCollection::append*/;
8355 }
8356 }
8357 variable24 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable13 /*listnode7*/, variable14 /*listnode9*/, variable15 /*listnode12*/); /*new AClassdef*/
8358 variable23 = variable24;
8359 variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/;
8360 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8361 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
8362 tracehead = trace.prev;
8363 return;
8364 }
8365 void parser___ReduceAction72___init(val_t self, int* init_table) {
8366 struct trace_t trace = {NULL, NULL, 4030, LOCATE_parser___ReduceAction72___init};
8367 trace.prev = tracehead; tracehead = &trace;
8368 trace.file = LOCATE_parser;
8369 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction72].i]) return;
8370 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction72].i] = 1;
8371 tracehead = trace.prev;
8372 return;
8373 }
8374 void parser___ReduceAction73___action(val_t self, val_t param0) {
8375 struct trace_t trace = {NULL, NULL, 4034, LOCATE_parser___ReduceAction73___action};
8376 val_t variable0;
8377 val_t variable1;
8378 val_t variable2;
8379 val_t variable3;
8380 val_t variable4;
8381 val_t variable5;
8382 val_t variable6;
8383 val_t variable7;
8384 val_t variable8;
8385 val_t variable9;
8386 val_t variable10;
8387 val_t variable11;
8388 val_t variable12;
8389 val_t variable13;
8390 val_t variable14;
8391 val_t variable15;
8392 val_t variable16;
8393 val_t variable17;
8394 val_t variable18;
8395 val_t variable19;
8396 val_t variable20;
8397 val_t variable21;
8398 val_t variable22;
8399 val_t variable23;
8400 val_t variable24;
8401 trace.prev = tracehead; tracehead = &trace;
8402 trace.file = LOCATE_parser;
8403 variable0 = param0;
8404 variable1 = NIT_NULL /*null*/;
8405 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8406 variable2 = variable3;
8407 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8408 variable3 = variable4;
8409 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8410 variable4 = variable5;
8411 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8412 variable5 = variable6;
8413 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8414 variable6 = variable7;
8415 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8416 variable7 = variable8;
8417 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8418 variable8 = variable9;
8419 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8420 variable9 = variable10;
8421 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8422 variable10 = variable11;
8423 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8424 variable11 = variable12;
8425 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8426 variable12 = variable13;
8427 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8428 variable13 = variable14;
8429 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8430 variable14 = variable15;
8431 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8432 variable15 = variable16;
8433 variable16 = variable12 /*nodearraylist1*/;
8434 variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8435 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction73___action, LOCATE_parser, 4052); nit_exit(1);}
8436 variable17 = variable11 /*nodearraylist2*/;
8437 variable18 = TAG_Bool(( variable17 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
8438 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction73___action, LOCATE_parser, 4054); nit_exit(1);}
8439 variable18 = variable10 /*nodearraylist3*/;
8440 variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8441 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction73___action, LOCATE_parser, 4056); nit_exit(1);}
8442 variable19 = variable9 /*nodearraylist4*/;
8443 variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8444 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction73___action, LOCATE_parser, 4058); nit_exit(1);}
8445 variable20 = variable7 /*nodearraylist6*/;
8446 variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8447 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction73___action, LOCATE_parser, 4060); nit_exit(1);}
8448 variable21 = variable6 /*nodearraylist7*/;
8449 variable22 = TAG_Bool(( variable21 /*listnode8*/==NIT_NULL) || VAL_ISA( variable21 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8450 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction73___action, LOCATE_parser, 4062); nit_exit(1);}
8451 variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode8*/ == NIT_NULL /*null*/) || (( variable21 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8452 if (UNTAG_Bool(variable22)) { /*if*/
8453 variable22 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode9*/) /*AbstractArray::is_empty*/;
8454 if (UNTAG_Bool(variable22)) { /*if*/
8455 variable14 = variable21 /*listnode8*/ /*listnode9=*/;
8456 } else { /*if*/
8457 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode9*/, variable21 /*listnode8*/) /*IndexedCollection::append*/;
8458 }
8459 }
8460 variable22 = variable5 /*nodearraylist8*/;
8461 variable23 = TAG_Bool(( variable22 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable22 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8462 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction73___action, LOCATE_parser, 4071); nit_exit(1);}
8463 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable22 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable22 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8464 if (UNTAG_Bool(variable23)) { /*if*/
8465 ((array___AbstractArray___add_t)CALL( variable15 /*listnode11*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode11*/, variable22 /*ppropdefnode10*/) /*AbstractArray::add*/;
8466 }
8467 variable24 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, variable17 /*tkwredefnode3*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable13 /*listnode7*/, variable14 /*listnode9*/, variable15 /*listnode11*/); /*new AClassdef*/
8468 variable23 = variable24;
8469 variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/;
8470 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8471 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
8472 tracehead = trace.prev;
8473 return;
8474 }
8475 void parser___ReduceAction73___init(val_t self, int* init_table) {
8476 struct trace_t trace = {NULL, NULL, 4088, LOCATE_parser___ReduceAction73___init};
8477 trace.prev = tracehead; tracehead = &trace;
8478 trace.file = LOCATE_parser;
8479 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction73].i]) return;
8480 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction73].i] = 1;
8481 tracehead = trace.prev;
8482 return;
8483 }
8484 void parser___ReduceAction74___action(val_t self, val_t param0) {
8485 struct trace_t trace = {NULL, NULL, 4092, LOCATE_parser___ReduceAction74___action};
8486 val_t variable0;
8487 val_t variable1;
8488 val_t variable2;
8489 val_t variable3;
8490 val_t variable4;
8491 val_t variable5;
8492 val_t variable6;
8493 val_t variable7;
8494 val_t variable8;
8495 val_t variable9;
8496 val_t variable10;
8497 val_t variable11;
8498 val_t variable12;
8499 val_t variable13;
8500 val_t variable14;
8501 val_t variable15;
8502 val_t variable16;
8503 val_t variable17;
8504 val_t variable18;
8505 val_t variable19;
8506 val_t variable20;
8507 val_t variable21;
8508 val_t variable22;
8509 val_t variable23;
8510 val_t variable24;
8511 val_t variable25;
8512 val_t variable26;
8513 trace.prev = tracehead; tracehead = &trace;
8514 trace.file = LOCATE_parser;
8515 variable0 = param0;
8516 variable1 = NIT_NULL /*null*/;
8517 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8518 variable2 = variable3;
8519 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8520 variable3 = variable4;
8521 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8522 variable4 = variable5;
8523 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8524 variable5 = variable6;
8525 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8526 variable6 = variable7;
8527 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8528 variable7 = variable8;
8529 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8530 variable8 = variable9;
8531 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8532 variable9 = variable10;
8533 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8534 variable10 = variable11;
8535 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8536 variable11 = variable12;
8537 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8538 variable12 = variable13;
8539 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8540 variable13 = variable14;
8541 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8542 variable14 = variable15;
8543 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8544 variable15 = variable16;
8545 variable17 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8546 variable16 = variable17;
8547 variable17 = variable13 /*nodearraylist1*/;
8548 variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8549 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4111); nit_exit(1);}
8550 variable18 = variable12 /*nodearraylist2*/;
8551 variable19 = TAG_Bool(( variable18 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
8552 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4113); nit_exit(1);}
8553 variable19 = variable11 /*nodearraylist3*/;
8554 variable20 = TAG_Bool(( variable19 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8555 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4115); nit_exit(1);}
8556 variable20 = variable10 /*nodearraylist4*/;
8557 variable21 = TAG_Bool(( variable20 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable20 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8558 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4117); nit_exit(1);}
8559 variable21 = variable8 /*nodearraylist6*/;
8560 variable22 = TAG_Bool(( variable21 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable21 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8561 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4119); nit_exit(1);}
8562 variable22 = variable7 /*nodearraylist7*/;
8563 variable23 = TAG_Bool(( variable22 /*listnode8*/==NIT_NULL) || VAL_ISA( variable22 /*listnode8*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8564 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4121); nit_exit(1);}
8565 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode8*/ == NIT_NULL /*null*/) || (( variable22 /*listnode8*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*listnode8*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*listnode8*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*listnode8*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode8*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8566 if (UNTAG_Bool(variable23)) { /*if*/
8567 variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode9*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode9*/) /*AbstractArray::is_empty*/;
8568 if (UNTAG_Bool(variable23)) { /*if*/
8569 variable15 = variable22 /*listnode8*/ /*listnode9=*/;
8570 } else { /*if*/
8571 ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode9*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode9*/, variable22 /*listnode8*/) /*IndexedCollection::append*/;
8572 }
8573 }
8574 variable23 = variable6 /*nodearraylist8*/;
8575 variable24 = TAG_Bool(( variable23 /*ppropdefnode10*/==NIT_NULL) || VAL_ISA( variable23 /*ppropdefnode10*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8576 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4130); nit_exit(1);}
8577 variable24 = variable4 /*nodearraylist10*/;
8578 variable25 = TAG_Bool(( variable24 /*listnode11*/==NIT_NULL) || VAL_ISA( variable24 /*listnode11*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8579 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction74___action, LOCATE_parser, 4132); nit_exit(1);}
8580 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*ppropdefnode10*/ == NIT_NULL /*null*/) || (( variable23 /*ppropdefnode10*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode10*/,COLOR_kernel___Object_____eqeq))( variable23 /*ppropdefnode10*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8581 if (UNTAG_Bool(variable25)) { /*if*/
8582 ((array___AbstractArray___add_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode12*/, variable23 /*ppropdefnode10*/) /*AbstractArray::add*/;
8583 }
8584 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode11*/ == NIT_NULL /*null*/) || (( variable24 /*listnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable24 /*listnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable24 /*listnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable24 /*listnode11*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8585 if (UNTAG_Bool(variable25)) { /*if*/
8586 variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode12*/) /*AbstractArray::is_empty*/;
8587 if (UNTAG_Bool(variable25)) { /*if*/
8588 variable16 = variable24 /*listnode11*/ /*listnode12=*/;
8589 } else { /*if*/
8590 ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode12*/, variable24 /*listnode11*/) /*IndexedCollection::append*/;
8591 }
8592 }
8593 variable26 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, variable18 /*tkwredefnode3*/, variable19 /*pvisibilitynode4*/, variable20 /*pclasskindnode5*/, variable21 /*tclassidnode6*/, variable14 /*listnode7*/, variable15 /*listnode9*/, variable16 /*listnode12*/); /*new AClassdef*/
8594 variable25 = variable26;
8595 variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/;
8596 variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8597 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/;
8598 tracehead = trace.prev;
8599 return;
8600 }
8601 void parser___ReduceAction74___init(val_t self, int* init_table) {
8602 struct trace_t trace = {NULL, NULL, 4156, LOCATE_parser___ReduceAction74___init};
8603 trace.prev = tracehead; tracehead = &trace;
8604 trace.file = LOCATE_parser;
8605 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction74].i]) return;
8606 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction74].i] = 1;
8607 tracehead = trace.prev;
8608 return;
8609 }
8610 void parser___ReduceAction75___action(val_t self, val_t param0) {
8611 struct trace_t trace = {NULL, NULL, 4160, LOCATE_parser___ReduceAction75___action};
8612 val_t variable0;
8613 val_t variable1;
8614 val_t variable2;
8615 val_t variable3;
8616 val_t variable4;
8617 val_t variable5;
8618 val_t variable6;
8619 val_t variable7;
8620 val_t variable8;
8621 val_t variable9;
8622 val_t variable10;
8623 val_t variable11;
8624 val_t variable12;
8625 val_t variable13;
8626 val_t variable14;
8627 val_t variable15;
8628 val_t variable16;
8629 val_t variable17;
8630 val_t variable18;
8631 val_t variable19;
8632 val_t variable20;
8633 val_t variable21;
8634 val_t variable22;
8635 val_t variable23;
8636 val_t variable24;
8637 trace.prev = tracehead; tracehead = &trace;
8638 trace.file = LOCATE_parser;
8639 variable0 = param0;
8640 variable1 = NIT_NULL /*null*/;
8641 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8642 variable2 = variable3;
8643 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8644 variable3 = variable4;
8645 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8646 variable4 = variable5;
8647 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8648 variable5 = variable6;
8649 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8650 variable6 = variable7;
8651 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8652 variable7 = variable8;
8653 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8654 variable8 = variable9;
8655 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8656 variable9 = variable10;
8657 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8658 variable10 = variable11;
8659 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8660 variable11 = variable12;
8661 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8662 variable12 = variable13;
8663 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8664 variable13 = variable14;
8665 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8666 variable14 = variable15;
8667 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8668 variable15 = variable16;
8669 variable16 = variable12 /*nodearraylist1*/;
8670 variable17 = TAG_Bool(( variable16 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable16 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8671 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction75___action, LOCATE_parser, 4178); nit_exit(1);}
8672 variable17 = variable11 /*nodearraylist2*/;
8673 variable18 = TAG_Bool(( variable17 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8674 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction75___action, LOCATE_parser, 4180); nit_exit(1);}
8675 variable18 = variable10 /*nodearraylist3*/;
8676 variable19 = TAG_Bool(( variable18 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable18 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8677 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction75___action, LOCATE_parser, 4182); nit_exit(1);}
8678 variable19 = variable8 /*nodearraylist5*/;
8679 variable20 = TAG_Bool(( variable19 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable19 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8680 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction75___action, LOCATE_parser, 4184); nit_exit(1);}
8681 variable20 = variable7 /*nodearraylist6*/;
8682 variable21 = TAG_Bool(( variable20 /*listnode7*/==NIT_NULL) || VAL_ISA( variable20 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8683 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction75___action, LOCATE_parser, 4186); nit_exit(1);}
8684 variable21 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable20 /*listnode7*/ == NIT_NULL /*null*/) || (( variable20 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable20 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable20 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable20 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8685 if (UNTAG_Bool(variable21)) { /*if*/
8686 variable21 = ((array___AbstractArray___is_empty_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable13 /*listnode8*/) /*AbstractArray::is_empty*/;
8687 if (UNTAG_Bool(variable21)) { /*if*/
8688 variable13 = variable20 /*listnode7*/ /*listnode8=*/;
8689 } else { /*if*/
8690 ((abstract_collection___IndexedCollection___append_t)CALL( variable13 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable13 /*listnode8*/, variable20 /*listnode7*/) /*IndexedCollection::append*/;
8691 }
8692 }
8693 variable21 = variable6 /*nodearraylist7*/;
8694 variable22 = TAG_Bool(( variable21 /*listnode9*/==NIT_NULL) || VAL_ISA( variable21 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8695 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction75___action, LOCATE_parser, 4195); nit_exit(1);}
8696 variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode9*/ == NIT_NULL /*null*/) || (( variable21 /*listnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*listnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*listnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8697 if (UNTAG_Bool(variable22)) { /*if*/
8698 variable22 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode10*/) /*AbstractArray::is_empty*/;
8699 if (UNTAG_Bool(variable22)) { /*if*/
8700 variable14 = variable21 /*listnode9*/ /*listnode10=*/;
8701 } else { /*if*/
8702 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode10*/, variable21 /*listnode9*/) /*IndexedCollection::append*/;
8703 }
8704 }
8705 variable22 = variable5 /*nodearraylist8*/;
8706 variable23 = TAG_Bool(( variable22 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable22 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8707 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction75___action, LOCATE_parser, 4204); nit_exit(1);}
8708 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable22 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable22 /*ppropdefnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8709 if (UNTAG_Bool(variable23)) { /*if*/
8710 ((array___AbstractArray___add_t)CALL( variable15 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable15 /*listnode12*/, variable22 /*ppropdefnode11*/) /*AbstractArray::add*/;
8711 }
8712 variable24 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable16 /*pdocnode2*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode4*/, variable18 /*pclasskindnode5*/, variable19 /*tclassidnode6*/, variable13 /*listnode8*/, variable14 /*listnode10*/, variable15 /*listnode12*/); /*new AClassdef*/
8713 variable23 = variable24;
8714 variable1 = variable23 /*pclassdefnode1*/ /*node_list=*/;
8715 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8716 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
8717 tracehead = trace.prev;
8718 return;
8719 }
8720 void parser___ReduceAction75___init(val_t self, int* init_table) {
8721 struct trace_t trace = {NULL, NULL, 4221, LOCATE_parser___ReduceAction75___init};
8722 trace.prev = tracehead; tracehead = &trace;
8723 trace.file = LOCATE_parser;
8724 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction75].i]) return;
8725 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction75].i] = 1;
8726 tracehead = trace.prev;
8727 return;
8728 }
8729 void parser___ReduceAction76___action(val_t self, val_t param0) {
8730 struct trace_t trace = {NULL, NULL, 4225, LOCATE_parser___ReduceAction76___action};
8731 val_t variable0;
8732 val_t variable1;
8733 val_t variable2;
8734 val_t variable3;
8735 val_t variable4;
8736 val_t variable5;
8737 val_t variable6;
8738 val_t variable7;
8739 val_t variable8;
8740 val_t variable9;
8741 val_t variable10;
8742 val_t variable11;
8743 val_t variable12;
8744 val_t variable13;
8745 val_t variable14;
8746 val_t variable15;
8747 val_t variable16;
8748 val_t variable17;
8749 val_t variable18;
8750 val_t variable19;
8751 val_t variable20;
8752 val_t variable21;
8753 val_t variable22;
8754 val_t variable23;
8755 val_t variable24;
8756 val_t variable25;
8757 val_t variable26;
8758 trace.prev = tracehead; tracehead = &trace;
8759 trace.file = LOCATE_parser;
8760 variable0 = param0;
8761 variable1 = NIT_NULL /*null*/;
8762 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8763 variable2 = variable3;
8764 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8765 variable3 = variable4;
8766 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8767 variable4 = variable5;
8768 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8769 variable5 = variable6;
8770 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8771 variable6 = variable7;
8772 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8773 variable7 = variable8;
8774 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8775 variable8 = variable9;
8776 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8777 variable9 = variable10;
8778 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8779 variable10 = variable11;
8780 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8781 variable11 = variable12;
8782 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8783 variable12 = variable13;
8784 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8785 variable13 = variable14;
8786 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8787 variable14 = variable15;
8788 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8789 variable15 = variable16;
8790 variable17 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8791 variable16 = variable17;
8792 variable17 = variable13 /*nodearraylist1*/;
8793 variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8794 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4244); nit_exit(1);}
8795 variable18 = variable12 /*nodearraylist2*/;
8796 variable19 = TAG_Bool(( variable18 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8797 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4246); nit_exit(1);}
8798 variable19 = variable11 /*nodearraylist3*/;
8799 variable20 = TAG_Bool(( variable19 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable19 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8800 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4248); nit_exit(1);}
8801 variable20 = variable9 /*nodearraylist5*/;
8802 variable21 = TAG_Bool(( variable20 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable20 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8803 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4250); nit_exit(1);}
8804 variable21 = variable8 /*nodearraylist6*/;
8805 variable22 = TAG_Bool(( variable21 /*listnode7*/==NIT_NULL) || VAL_ISA( variable21 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8806 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4252); nit_exit(1);}
8807 variable22 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable21 /*listnode7*/ == NIT_NULL /*null*/) || (( variable21 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable21 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable21 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable21 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable21 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8808 if (UNTAG_Bool(variable22)) { /*if*/
8809 variable22 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode8*/) /*AbstractArray::is_empty*/;
8810 if (UNTAG_Bool(variable22)) { /*if*/
8811 variable14 = variable21 /*listnode7*/ /*listnode8=*/;
8812 } else { /*if*/
8813 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode8*/, variable21 /*listnode7*/) /*IndexedCollection::append*/;
8814 }
8815 }
8816 variable22 = variable7 /*nodearraylist7*/;
8817 variable23 = TAG_Bool(( variable22 /*listnode9*/==NIT_NULL) || VAL_ISA( variable22 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8818 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4261); nit_exit(1);}
8819 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode9*/ == NIT_NULL /*null*/) || (( variable22 /*listnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*listnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*listnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8820 if (UNTAG_Bool(variable23)) { /*if*/
8821 variable23 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode10*/) /*AbstractArray::is_empty*/;
8822 if (UNTAG_Bool(variable23)) { /*if*/
8823 variable15 = variable22 /*listnode9*/ /*listnode10=*/;
8824 } else { /*if*/
8825 ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode10*/, variable22 /*listnode9*/) /*IndexedCollection::append*/;
8826 }
8827 }
8828 variable23 = variable6 /*nodearraylist8*/;
8829 variable24 = TAG_Bool(( variable23 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable23 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8830 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4270); nit_exit(1);}
8831 variable24 = variable4 /*nodearraylist10*/;
8832 variable25 = TAG_Bool(( variable24 /*listnode12*/==NIT_NULL) || VAL_ISA( variable24 /*listnode12*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8833 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction76___action, LOCATE_parser, 4272); nit_exit(1);}
8834 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable23 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable23 /*ppropdefnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8835 if (UNTAG_Bool(variable25)) { /*if*/
8836 ((array___AbstractArray___add_t)CALL( variable16 /*listnode13*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode13*/, variable23 /*ppropdefnode11*/) /*AbstractArray::add*/;
8837 }
8838 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode12*/ == NIT_NULL /*null*/) || (( variable24 /*listnode12*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable24 /*listnode12*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable24 /*listnode12*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable24 /*listnode12*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode12*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8839 if (UNTAG_Bool(variable25)) { /*if*/
8840 variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode13*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode13*/) /*AbstractArray::is_empty*/;
8841 if (UNTAG_Bool(variable25)) { /*if*/
8842 variable16 = variable24 /*listnode12*/ /*listnode13=*/;
8843 } else { /*if*/
8844 ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode13*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode13*/, variable24 /*listnode12*/) /*IndexedCollection::append*/;
8845 }
8846 }
8847 variable26 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode4*/, variable19 /*pclasskindnode5*/, variable20 /*tclassidnode6*/, variable14 /*listnode8*/, variable15 /*listnode10*/, variable16 /*listnode13*/); /*new AClassdef*/
8848 variable25 = variable26;
8849 variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/;
8850 variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8851 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/;
8852 tracehead = trace.prev;
8853 return;
8854 }
8855 void parser___ReduceAction76___init(val_t self, int* init_table) {
8856 struct trace_t trace = {NULL, NULL, 4296, LOCATE_parser___ReduceAction76___init};
8857 trace.prev = tracehead; tracehead = &trace;
8858 trace.file = LOCATE_parser;
8859 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction76].i]) return;
8860 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction76].i] = 1;
8861 tracehead = trace.prev;
8862 return;
8863 }
8864 void parser___ReduceAction77___action(val_t self, val_t param0) {
8865 struct trace_t trace = {NULL, NULL, 4300, LOCATE_parser___ReduceAction77___action};
8866 val_t variable0;
8867 val_t variable1;
8868 val_t variable2;
8869 val_t variable3;
8870 val_t variable4;
8871 val_t variable5;
8872 val_t variable6;
8873 val_t variable7;
8874 val_t variable8;
8875 val_t variable9;
8876 val_t variable10;
8877 val_t variable11;
8878 val_t variable12;
8879 val_t variable13;
8880 val_t variable14;
8881 val_t variable15;
8882 val_t variable16;
8883 val_t variable17;
8884 val_t variable18;
8885 val_t variable19;
8886 val_t variable20;
8887 val_t variable21;
8888 val_t variable22;
8889 val_t variable23;
8890 val_t variable24;
8891 val_t variable25;
8892 val_t variable26;
8893 trace.prev = tracehead; tracehead = &trace;
8894 trace.file = LOCATE_parser;
8895 variable0 = param0;
8896 variable1 = NIT_NULL /*null*/;
8897 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8898 variable2 = variable3;
8899 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8900 variable3 = variable4;
8901 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8902 variable4 = variable5;
8903 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8904 variable5 = variable6;
8905 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8906 variable6 = variable7;
8907 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8908 variable7 = variable8;
8909 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8910 variable8 = variable9;
8911 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8912 variable9 = variable10;
8913 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8914 variable10 = variable11;
8915 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8916 variable11 = variable12;
8917 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8918 variable12 = variable13;
8919 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
8920 variable13 = variable14;
8921 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8922 variable14 = variable15;
8923 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8924 variable15 = variable16;
8925 variable17 = NEW_Array_array___Array___init(); /*new Array[Object]*/
8926 variable16 = variable17;
8927 variable17 = variable13 /*nodearraylist1*/;
8928 variable18 = TAG_Bool(( variable17 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable17 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
8929 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4319); nit_exit(1);}
8930 variable18 = variable12 /*nodearraylist2*/;
8931 variable19 = TAG_Bool(( variable18 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
8932 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4321); nit_exit(1);}
8933 variable19 = variable11 /*nodearraylist3*/;
8934 variable20 = TAG_Bool(( variable19 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
8935 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4323); nit_exit(1);}
8936 variable20 = variable10 /*nodearraylist4*/;
8937 variable21 = TAG_Bool(( variable20 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable20 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
8938 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4325); nit_exit(1);}
8939 variable21 = variable8 /*nodearraylist6*/;
8940 variable22 = TAG_Bool(( variable21 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable21 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
8941 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4327); nit_exit(1);}
8942 variable22 = variable7 /*nodearraylist7*/;
8943 variable23 = TAG_Bool(( variable22 /*listnode7*/==NIT_NULL) || VAL_ISA( variable22 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8944 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4329); nit_exit(1);}
8945 variable23 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable22 /*listnode7*/ == NIT_NULL /*null*/) || (( variable22 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable22 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable22 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable22 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable22 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8946 if (UNTAG_Bool(variable23)) { /*if*/
8947 variable23 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode8*/) /*AbstractArray::is_empty*/;
8948 if (UNTAG_Bool(variable23)) { /*if*/
8949 variable14 = variable22 /*listnode7*/ /*listnode8=*/;
8950 } else { /*if*/
8951 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode8*/, variable22 /*listnode7*/) /*IndexedCollection::append*/;
8952 }
8953 }
8954 variable23 = variable6 /*nodearraylist8*/;
8955 variable24 = TAG_Bool(( variable23 /*listnode9*/==NIT_NULL) || VAL_ISA( variable23 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
8956 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4338); nit_exit(1);}
8957 variable24 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*listnode9*/ == NIT_NULL /*null*/) || (( variable23 /*listnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*listnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*listnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable23 /*listnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8958 if (UNTAG_Bool(variable24)) { /*if*/
8959 variable24 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode10*/) /*AbstractArray::is_empty*/;
8960 if (UNTAG_Bool(variable24)) { /*if*/
8961 variable15 = variable23 /*listnode9*/ /*listnode10=*/;
8962 } else { /*if*/
8963 ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode10*/, variable23 /*listnode9*/) /*IndexedCollection::append*/;
8964 }
8965 }
8966 variable24 = variable5 /*nodearraylist9*/;
8967 variable25 = TAG_Bool(( variable24 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable24 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
8968 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction77___action, LOCATE_parser, 4347); nit_exit(1);}
8969 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable24 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable24 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable24 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable24 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable24 /*ppropdefnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
8970 if (UNTAG_Bool(variable25)) { /*if*/
8971 ((array___AbstractArray___add_t)CALL( variable16 /*listnode12*/,COLOR_abstract_collection___SimpleCollection___add))( variable16 /*listnode12*/, variable24 /*ppropdefnode11*/) /*AbstractArray::add*/;
8972 }
8973 variable26 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable17 /*pdocnode2*/, variable18 /*tkwredefnode3*/, variable19 /*pvisibilitynode4*/, variable20 /*pclasskindnode5*/, variable21 /*tclassidnode6*/, variable14 /*listnode8*/, variable15 /*listnode10*/, variable16 /*listnode12*/); /*new AClassdef*/
8974 variable25 = variable26;
8975 variable1 = variable25 /*pclassdefnode1*/ /*node_list=*/;
8976 variable26 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
8977 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable26, variable1 /*node_list*/) /*Parser::push*/;
8978 tracehead = trace.prev;
8979 return;
8980 }
8981 void parser___ReduceAction77___init(val_t self, int* init_table) {
8982 struct trace_t trace = {NULL, NULL, 4364, LOCATE_parser___ReduceAction77___init};
8983 trace.prev = tracehead; tracehead = &trace;
8984 trace.file = LOCATE_parser;
8985 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction77].i]) return;
8986 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction77].i] = 1;
8987 tracehead = trace.prev;
8988 return;
8989 }
8990 void parser___ReduceAction78___action(val_t self, val_t param0) {
8991 struct trace_t trace = {NULL, NULL, 4368, LOCATE_parser___ReduceAction78___action};
8992 val_t variable0;
8993 val_t variable1;
8994 val_t variable2;
8995 val_t variable3;
8996 val_t variable4;
8997 val_t variable5;
8998 val_t variable6;
8999 val_t variable7;
9000 val_t variable8;
9001 val_t variable9;
9002 val_t variable10;
9003 val_t variable11;
9004 val_t variable12;
9005 val_t variable13;
9006 val_t variable14;
9007 val_t variable15;
9008 val_t variable16;
9009 val_t variable17;
9010 val_t variable18;
9011 val_t variable19;
9012 val_t variable20;
9013 val_t variable21;
9014 val_t variable22;
9015 val_t variable23;
9016 val_t variable24;
9017 val_t variable25;
9018 val_t variable26;
9019 val_t variable27;
9020 val_t variable28;
9021 trace.prev = tracehead; tracehead = &trace;
9022 trace.file = LOCATE_parser;
9023 variable0 = param0;
9024 variable1 = NIT_NULL /*null*/;
9025 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9026 variable2 = variable3;
9027 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9028 variable3 = variable4;
9029 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9030 variable4 = variable5;
9031 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9032 variable5 = variable6;
9033 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9034 variable6 = variable7;
9035 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9036 variable7 = variable8;
9037 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9038 variable8 = variable9;
9039 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9040 variable9 = variable10;
9041 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9042 variable10 = variable11;
9043 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9044 variable11 = variable12;
9045 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9046 variable12 = variable13;
9047 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9048 variable13 = variable14;
9049 variable15 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9050 variable14 = variable15;
9051 variable16 = NEW_Array_array___Array___init(); /*new Array[Object]*/
9052 variable15 = variable16;
9053 variable17 = NEW_Array_array___Array___init(); /*new Array[Object]*/
9054 variable16 = variable17;
9055 variable18 = NEW_Array_array___Array___init(); /*new Array[Object]*/
9056 variable17 = variable18;
9057 variable18 = variable14 /*nodearraylist1*/;
9058 variable19 = TAG_Bool(( variable18 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable18 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
9059 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4388); nit_exit(1);}
9060 variable19 = variable13 /*nodearraylist2*/;
9061 variable20 = TAG_Bool(( variable19 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
9062 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4390); nit_exit(1);}
9063 variable20 = variable12 /*nodearraylist3*/;
9064 variable21 = TAG_Bool(( variable20 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
9065 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4392); nit_exit(1);}
9066 variable21 = variable11 /*nodearraylist4*/;
9067 variable22 = TAG_Bool(( variable21 /*pclasskindnode5*/==NIT_NULL) || VAL_ISA( variable21 /*pclasskindnode5*/, COLOR_PClasskind, ID_PClasskind)) /*cast PClasskind*/;
9068 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4394); nit_exit(1);}
9069 variable22 = variable9 /*nodearraylist6*/;
9070 variable23 = TAG_Bool(( variable22 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable22 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
9071 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4396); nit_exit(1);}
9072 variable23 = variable8 /*nodearraylist7*/;
9073 variable24 = TAG_Bool(( variable23 /*listnode7*/==NIT_NULL) || VAL_ISA( variable23 /*listnode7*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
9074 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4398); nit_exit(1);}
9075 variable24 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable23 /*listnode7*/ == NIT_NULL /*null*/) || (( variable23 /*listnode7*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable23 /*listnode7*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable23 /*listnode7*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable23 /*listnode7*/,COLOR_kernel___Object_____eqeq))( variable23 /*listnode7*/, NIT_NULL /*null*/) /*Object::==*/)))))));
9076 if (UNTAG_Bool(variable24)) { /*if*/
9077 variable24 = ((array___AbstractArray___is_empty_t)CALL( variable15 /*listnode8*/,COLOR_abstract_collection___Collection___is_empty))( variable15 /*listnode8*/) /*AbstractArray::is_empty*/;
9078 if (UNTAG_Bool(variable24)) { /*if*/
9079 variable15 = variable23 /*listnode7*/ /*listnode8=*/;
9080 } else { /*if*/
9081 ((abstract_collection___IndexedCollection___append_t)CALL( variable15 /*listnode8*/,COLOR_abstract_collection___IndexedCollection___append))( variable15 /*listnode8*/, variable23 /*listnode7*/) /*IndexedCollection::append*/;
9082 }
9083 }
9084 variable24 = variable7 /*nodearraylist8*/;
9085 variable25 = TAG_Bool(( variable24 /*listnode9*/==NIT_NULL) || VAL_ISA( variable24 /*listnode9*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
9086 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4407); nit_exit(1);}
9087 variable25 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable24 /*listnode9*/ == NIT_NULL /*null*/) || (( variable24 /*listnode9*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable24 /*listnode9*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable24 /*listnode9*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable24 /*listnode9*/,COLOR_kernel___Object_____eqeq))( variable24 /*listnode9*/, NIT_NULL /*null*/) /*Object::==*/)))))));
9088 if (UNTAG_Bool(variable25)) { /*if*/
9089 variable25 = ((array___AbstractArray___is_empty_t)CALL( variable16 /*listnode10*/,COLOR_abstract_collection___Collection___is_empty))( variable16 /*listnode10*/) /*AbstractArray::is_empty*/;
9090 if (UNTAG_Bool(variable25)) { /*if*/
9091 variable16 = variable24 /*listnode9*/ /*listnode10=*/;
9092 } else { /*if*/
9093 ((abstract_collection___IndexedCollection___append_t)CALL( variable16 /*listnode10*/,COLOR_abstract_collection___IndexedCollection___append))( variable16 /*listnode10*/, variable24 /*listnode9*/) /*IndexedCollection::append*/;
9094 }
9095 }
9096 variable25 = variable6 /*nodearraylist9*/;
9097 variable26 = TAG_Bool(( variable25 /*ppropdefnode11*/==NIT_NULL) || VAL_ISA( variable25 /*ppropdefnode11*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
9098 if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4416); nit_exit(1);}
9099 variable26 = variable4 /*nodearraylist11*/;
9100 variable27 = TAG_Bool(( variable26 /*listnode12*/==NIT_NULL) || VAL_ISA( variable26 /*listnode12*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
9101 if (!UNTAG_Bool(variable27)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction78___action, LOCATE_parser, 4418); nit_exit(1);}
9102 variable27 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable25 /*ppropdefnode11*/ == NIT_NULL /*null*/) || (( variable25 /*ppropdefnode11*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable25 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable25 /*ppropdefnode11*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable25 /*ppropdefnode11*/,COLOR_kernel___Object_____eqeq))( variable25 /*ppropdefnode11*/, NIT_NULL /*null*/) /*Object::==*/)))))));
9103 if (UNTAG_Bool(variable27)) { /*if*/
9104 ((array___AbstractArray___add_t)CALL( variable17 /*listnode13*/,COLOR_abstract_collection___SimpleCollection___add))( variable17 /*listnode13*/, variable25 /*ppropdefnode11*/) /*AbstractArray::add*/;
9105 }
9106 variable27 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable26 /*listnode12*/ == NIT_NULL /*null*/) || (( variable26 /*listnode12*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable26 /*listnode12*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable26 /*listnode12*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable26 /*listnode12*/,COLOR_kernel___Object_____eqeq))( variable26 /*listnode12*/, NIT_NULL /*null*/) /*Object::==*/)))))));
9107 if (UNTAG_Bool(variable27)) { /*if*/
9108 variable27 = ((array___AbstractArray___is_empty_t)CALL( variable17 /*listnode13*/,COLOR_abstract_collection___Collection___is_empty))( variable17 /*listnode13*/) /*AbstractArray::is_empty*/;
9109 if (UNTAG_Bool(variable27)) { /*if*/
9110 variable17 = variable26 /*listnode12*/ /*listnode13=*/;
9111 } else { /*if*/
9112 ((abstract_collection___IndexedCollection___append_t)CALL( variable17 /*listnode13*/,COLOR_abstract_collection___IndexedCollection___append))( variable17 /*listnode13*/, variable26 /*listnode12*/) /*IndexedCollection::append*/;
9113 }
9114 }
9115 variable28 = NEW_AClassdef_parser_prod___AClassdef___init_aclassdef( variable18 /*pdocnode2*/, variable19 /*tkwredefnode3*/, variable20 /*pvisibilitynode4*/, variable21 /*pclasskindnode5*/, variable22 /*tclassidnode6*/, variable15 /*listnode8*/, variable16 /*listnode10*/, variable17 /*listnode13*/); /*new AClassdef*/
9116 variable27 = variable28;
9117 variable1 = variable27 /*pclassdefnode1*/ /*node_list=*/;
9118 variable28 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(5)) /*Parser::go_to*/;
9119 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable28, variable1 /*node_list*/) /*Parser::push*/;
9120 tracehead = trace.prev;
9121 return;
9122 }
9123 void parser___ReduceAction78___init(val_t self, int* init_table) {
9124 struct trace_t trace = {NULL, NULL, 4442, LOCATE_parser___ReduceAction78___init};
9125 trace.prev = tracehead; tracehead = &trace;
9126 trace.file = LOCATE_parser;
9127 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction78].i]) return;
9128 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction78].i] = 1;
9129 tracehead = trace.prev;
9130 return;
9131 }
9132 void parser___ReduceAction79___action(val_t self, val_t param0) {
9133 struct trace_t trace = {NULL, NULL, 4446, LOCATE_parser___ReduceAction79___action};
9134 val_t variable0;
9135 val_t variable1;
9136 val_t variable2;
9137 val_t variable3;
9138 val_t variable4;
9139 val_t variable5;
9140 trace.prev = tracehead; tracehead = &trace;
9141 trace.file = LOCATE_parser;
9142 variable0 = param0;
9143 variable1 = NIT_NULL /*null*/;
9144 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9145 variable2 = variable3;
9146 variable3 = variable2 /*nodearraylist1*/;
9147 variable4 = TAG_Bool(( variable3 /*tkwclassnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwclassnode2*/, COLOR_TKwclass, ID_TKwclass)) /*cast TKwclass*/;
9148 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction79___action, LOCATE_parser, 4451); nit_exit(1);}
9149 variable5 = NEW_AConcreteClasskind_parser_prod___AConcreteClasskind___init_aconcreteclasskind( variable3 /*tkwclassnode2*/); /*new AConcreteClasskind*/
9150 variable4 = variable5;
9151 variable1 = variable4 /*pclasskindnode1*/ /*node_list=*/;
9152 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/;
9153 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
9154 tracehead = trace.prev;
9155 return;
9156 }
9157 void parser___ReduceAction79___init(val_t self, int* init_table) {
9158 struct trace_t trace = {NULL, NULL, 4458, LOCATE_parser___ReduceAction79___init};
9159 trace.prev = tracehead; tracehead = &trace;
9160 trace.file = LOCATE_parser;
9161 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction79].i]) return;
9162 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction79].i] = 1;
9163 tracehead = trace.prev;
9164 return;
9165 }
9166 void parser___ReduceAction80___action(val_t self, val_t param0) {
9167 struct trace_t trace = {NULL, NULL, 4462, LOCATE_parser___ReduceAction80___action};
9168 val_t variable0;
9169 val_t variable1;
9170 val_t variable2;
9171 val_t variable3;
9172 val_t variable4;
9173 val_t variable5;
9174 val_t variable6;
9175 val_t variable7;
9176 trace.prev = tracehead; tracehead = &trace;
9177 trace.file = LOCATE_parser;
9178 variable0 = param0;
9179 variable1 = NIT_NULL /*null*/;
9180 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9181 variable2 = variable3;
9182 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9183 variable3 = variable4;
9184 variable4 = variable3 /*nodearraylist1*/;
9185 variable5 = TAG_Bool(( variable4 /*tkwabstractnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwabstractnode2*/, COLOR_TKwabstract, ID_TKwabstract)) /*cast TKwabstract*/;
9186 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction80___action, LOCATE_parser, 4468); nit_exit(1);}
9187 variable5 = variable2 /*nodearraylist2*/;
9188 variable6 = TAG_Bool(( variable5 /*tkwclassnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwclassnode3*/, COLOR_TKwclass, ID_TKwclass)) /*cast TKwclass*/;
9189 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction80___action, LOCATE_parser, 4470); nit_exit(1);}
9190 variable7 = NEW_AAbstractClasskind_parser_prod___AAbstractClasskind___init_aabstractclasskind( variable4 /*tkwabstractnode2*/, variable5 /*tkwclassnode3*/); /*new AAbstractClasskind*/
9191 variable6 = variable7;
9192 variable1 = variable6 /*pclasskindnode1*/ /*node_list=*/;
9193 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/;
9194 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
9195 tracehead = trace.prev;
9196 return;
9197 }
9198 void parser___ReduceAction80___init(val_t self, int* init_table) {
9199 struct trace_t trace = {NULL, NULL, 4478, LOCATE_parser___ReduceAction80___init};
9200 trace.prev = tracehead; tracehead = &trace;
9201 trace.file = LOCATE_parser;
9202 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction80].i]) return;
9203 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction80].i] = 1;
9204 tracehead = trace.prev;
9205 return;
9206 }
9207 void parser___ReduceAction81___action(val_t self, val_t param0) {
9208 struct trace_t trace = {NULL, NULL, 4482, LOCATE_parser___ReduceAction81___action};
9209 val_t variable0;
9210 val_t variable1;
9211 val_t variable2;
9212 val_t variable3;
9213 val_t variable4;
9214 val_t variable5;
9215 trace.prev = tracehead; tracehead = &trace;
9216 trace.file = LOCATE_parser;
9217 variable0 = param0;
9218 variable1 = NIT_NULL /*null*/;
9219 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9220 variable2 = variable3;
9221 variable3 = variable2 /*nodearraylist1*/;
9222 variable4 = TAG_Bool(( variable3 /*tkwinterfacenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwinterfacenode2*/, COLOR_TKwinterface, ID_TKwinterface)) /*cast TKwinterface*/;
9223 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction81___action, LOCATE_parser, 4487); nit_exit(1);}
9224 variable5 = NEW_AInterfaceClasskind_parser_prod___AInterfaceClasskind___init_ainterfaceclasskind( variable3 /*tkwinterfacenode2*/); /*new AInterfaceClasskind*/
9225 variable4 = variable5;
9226 variable1 = variable4 /*pclasskindnode1*/ /*node_list=*/;
9227 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/;
9228 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
9229 tracehead = trace.prev;
9230 return;
9231 }
9232 void parser___ReduceAction81___init(val_t self, int* init_table) {
9233 struct trace_t trace = {NULL, NULL, 4494, LOCATE_parser___ReduceAction81___init};
9234 trace.prev = tracehead; tracehead = &trace;
9235 trace.file = LOCATE_parser;
9236 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction81].i]) return;
9237 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction81].i] = 1;
9238 tracehead = trace.prev;
9239 return;
9240 }
9241 void parser___ReduceAction82___action(val_t self, val_t param0) {
9242 struct trace_t trace = {NULL, NULL, 4498, LOCATE_parser___ReduceAction82___action};
9243 val_t variable0;
9244 val_t variable1;
9245 val_t variable2;
9246 val_t variable3;
9247 val_t variable4;
9248 val_t variable5;
9249 trace.prev = tracehead; tracehead = &trace;
9250 trace.file = LOCATE_parser;
9251 variable0 = param0;
9252 variable1 = NIT_NULL /*null*/;
9253 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9254 variable2 = variable3;
9255 variable3 = variable2 /*nodearraylist1*/;
9256 variable4 = TAG_Bool(( variable3 /*tkwuniversalnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwuniversalnode2*/, COLOR_TKwuniversal, ID_TKwuniversal)) /*cast TKwuniversal*/;
9257 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction82___action, LOCATE_parser, 4503); nit_exit(1);}
9258 variable5 = NEW_AUniversalClasskind_parser_prod___AUniversalClasskind___init_auniversalclasskind( variable3 /*tkwuniversalnode2*/); /*new AUniversalClasskind*/
9259 variable4 = variable5;
9260 variable1 = variable4 /*pclasskindnode1*/ /*node_list=*/;
9261 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(6)) /*Parser::go_to*/;
9262 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
9263 tracehead = trace.prev;
9264 return;
9265 }
9266 void parser___ReduceAction82___init(val_t self, int* init_table) {
9267 struct trace_t trace = {NULL, NULL, 4510, LOCATE_parser___ReduceAction82___init};
9268 trace.prev = tracehead; tracehead = &trace;
9269 trace.file = LOCATE_parser;
9270 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction82].i]) return;
9271 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction82].i] = 1;
9272 tracehead = trace.prev;
9273 return;
9274 }
9275 void parser___ReduceAction83___action(val_t self, val_t param0) {
9276 struct trace_t trace = {NULL, NULL, 4514, LOCATE_parser___ReduceAction83___action};
9277 val_t variable0;
9278 val_t variable1;
9279 val_t variable2;
9280 val_t variable3;
9281 val_t variable4;
9282 val_t variable5;
9283 val_t variable6;
9284 val_t variable7;
9285 val_t variable8;
9286 val_t variable9;
9287 trace.prev = tracehead; tracehead = &trace;
9288 trace.file = LOCATE_parser;
9289 variable0 = param0;
9290 variable1 = NIT_NULL /*null*/;
9291 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9292 variable2 = variable3;
9293 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9294 variable3 = variable4;
9295 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9296 variable4 = variable5;
9297 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9298 variable5 = variable6;
9299 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9300 variable6 = variable7;
9301 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
9302 variable7 = variable8;
9303 variable8 = variable4 /*nodearraylist3*/;
9304 variable9 = TAG_Bool(( variable8 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/;
9305 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction83___action, LOCATE_parser, 4524); nit_exit(1);}
9306 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pformaldefnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pformaldefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pformaldefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pformaldefnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
9307 if (UNTAG_Bool(variable9)) { /*if*/
9308 ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pformaldefnode1*/) /*AbstractArray::add*/;
9309 }
9310 variable1 = variable7 /*listnode2*/ /*node_list=*/;
9311 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(7)) /*Parser::go_to*/;
9312 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
9313 tracehead = trace.prev;
9314 return;
9315 }
9316 void parser___ReduceAction83___init(val_t self, int* init_table) {
9317 struct trace_t trace = {NULL, NULL, 4531, LOCATE_parser___ReduceAction83___init};
9318 trace.prev = tracehead; tracehead = &trace;
9319 trace.file = LOCATE_parser;
9320 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction83].i]) return;
9321 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction83].i] = 1;
9322 tracehead = trace.prev;
9323 return;
9324 }
9325 void parser___ReduceAction84___action(val_t self, val_t param0) {
9326 struct trace_t trace = {NULL, NULL, 4535, LOCATE_parser___ReduceAction84___action};
9327 val_t variable0;
9328 val_t variable1;
9329 val_t variable2;
9330 val_t variable3;
9331 val_t variable4;
9332 val_t variable5;
9333 val_t variable6;
9334 val_t variable7;
9335 val_t variable8;
9336 val_t variable9;
9337 val_t variable10;
9338 val_t variable11;
9339 trace.prev = tracehead; tracehead = &trace;
9340 trace.file = LOCATE_parser;
9341 variable0 = param0;
9342 variable1 = NIT_NULL /*null*/;
9343 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9344 variable2 = variable3;
9345 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9346 variable3 = variable4;
9347 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9348 variable4 = variable5;
9349 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9350 variable5 = variable6;
9351 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9352 variable6 = variable7;
9353 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9354 variable7 = variable8;
9355 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
9356 variable8 = variable9;
9357 variable9 = variable5 /*nodearraylist3*/;
9358 variable10 = TAG_Bool(( variable9 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/;
9359 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction84___action, LOCATE_parser, 4546); nit_exit(1);}
9360 variable10 = variable4 /*nodearraylist4*/;
9361 variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
9362 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction84___action, LOCATE_parser, 4548); nit_exit(1);}
9363 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pformaldefnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pformaldefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pformaldefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pformaldefnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
9364 if (UNTAG_Bool(variable11)) { /*if*/
9365 ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pformaldefnode1*/) /*AbstractArray::add*/;
9366 }
9367 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
9368 if (UNTAG_Bool(variable11)) { /*if*/
9369 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*AbstractArray::is_empty*/;
9370 if (UNTAG_Bool(variable11)) { /*if*/
9371 variable8 = variable10 /*listnode2*/ /*listnode3=*/;
9372 } else { /*if*/
9373 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*IndexedCollection::append*/;
9374 }
9375 }
9376 variable1 = variable8 /*listnode3*/ /*node_list=*/;
9377 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(7)) /*Parser::go_to*/;
9378 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
9379 tracehead = trace.prev;
9380 return;
9381 }
9382 void parser___ReduceAction84___init(val_t self, int* init_table) {
9383 struct trace_t trace = {NULL, NULL, 4562, LOCATE_parser___ReduceAction84___init};
9384 trace.prev = tracehead; tracehead = &trace;
9385 trace.file = LOCATE_parser;
9386 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction84].i]) return;
9387 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction84].i] = 1;
9388 tracehead = trace.prev;
9389 return;
9390 }
9391 void parser___ReduceAction85___action(val_t self, val_t param0) {
9392 struct trace_t trace = {NULL, NULL, 4566, LOCATE_parser___ReduceAction85___action};
9393 val_t variable0;
9394 val_t variable1;
9395 val_t variable2;
9396 val_t variable3;
9397 val_t variable4;
9398 val_t variable5;
9399 val_t variable6;
9400 trace.prev = tracehead; tracehead = &trace;
9401 trace.file = LOCATE_parser;
9402 variable0 = param0;
9403 variable1 = NIT_NULL /*null*/;
9404 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9405 variable2 = variable3;
9406 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9407 variable3 = variable4;
9408 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9409 variable4 = variable5;
9410 variable5 = variable2 /*nodearraylist3*/;
9411 variable6 = TAG_Bool(( variable5 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/;
9412 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction85___action, LOCATE_parser, 4573); nit_exit(1);}
9413 variable1 = variable5 /*pformaldefnode1*/ /*node_list=*/;
9414 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(8)) /*Parser::go_to*/;
9415 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
9416 tracehead = trace.prev;
9417 return;
9418 }
9419 void parser___ReduceAction85___init(val_t self, int* init_table) {
9420 struct trace_t trace = {NULL, NULL, 4577, LOCATE_parser___ReduceAction85___init};
9421 trace.prev = tracehead; tracehead = &trace;
9422 trace.file = LOCATE_parser;
9423 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction85].i]) return;
9424 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction85].i] = 1;
9425 tracehead = trace.prev;
9426 return;
9427 }
9428 void parser___ReduceAction86___action(val_t self, val_t param0) {
9429 struct trace_t trace = {NULL, NULL, 4581, LOCATE_parser___ReduceAction86___action};
9430 val_t variable0;
9431 val_t variable1;
9432 val_t variable2;
9433 val_t variable3;
9434 val_t variable4;
9435 val_t variable5;
9436 trace.prev = tracehead; tracehead = &trace;
9437 trace.file = LOCATE_parser;
9438 variable0 = param0;
9439 variable1 = NIT_NULL /*null*/;
9440 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9441 variable2 = variable3;
9442 variable3 = variable2 /*nodearraylist1*/;
9443 variable4 = TAG_Bool(( variable3 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
9444 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction86___action, LOCATE_parser, 4586); nit_exit(1);}
9445 variable5 = NEW_AFormaldef_parser_prod___AFormaldef___init_aformaldef( variable3 /*tclassidnode2*/, NIT_NULL /*null*/); /*new AFormaldef*/
9446 variable4 = variable5;
9447 variable1 = variable4 /*pformaldefnode1*/ /*node_list=*/;
9448 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(9)) /*Parser::go_to*/;
9449 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
9450 tracehead = trace.prev;
9451 return;
9452 }
9453 void parser___ReduceAction86___init(val_t self, int* init_table) {
9454 struct trace_t trace = {NULL, NULL, 4594, LOCATE_parser___ReduceAction86___init};
9455 trace.prev = tracehead; tracehead = &trace;
9456 trace.file = LOCATE_parser;
9457 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction86].i]) return;
9458 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction86].i] = 1;
9459 tracehead = trace.prev;
9460 return;
9461 }
9462 void parser___ReduceAction87___action(val_t self, val_t param0) {
9463 struct trace_t trace = {NULL, NULL, 4598, LOCATE_parser___ReduceAction87___action};
9464 val_t variable0;
9465 val_t variable1;
9466 val_t variable2;
9467 val_t variable3;
9468 val_t variable4;
9469 val_t variable5;
9470 val_t variable6;
9471 val_t variable7;
9472 trace.prev = tracehead; tracehead = &trace;
9473 trace.file = LOCATE_parser;
9474 variable0 = param0;
9475 variable1 = NIT_NULL /*null*/;
9476 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9477 variable2 = variable3;
9478 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9479 variable3 = variable4;
9480 variable4 = variable3 /*nodearraylist1*/;
9481 variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
9482 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction87___action, LOCATE_parser, 4604); nit_exit(1);}
9483 variable5 = variable2 /*nodearraylist2*/;
9484 variable6 = TAG_Bool(( variable5 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
9485 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction87___action, LOCATE_parser, 4606); nit_exit(1);}
9486 variable7 = NEW_AFormaldef_parser_prod___AFormaldef___init_aformaldef( variable4 /*tclassidnode2*/, variable5 /*ptypenode3*/); /*new AFormaldef*/
9487 variable6 = variable7;
9488 variable1 = variable6 /*pformaldefnode1*/ /*node_list=*/;
9489 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(9)) /*Parser::go_to*/;
9490 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
9491 tracehead = trace.prev;
9492 return;
9493 }
9494 void parser___ReduceAction87___init(val_t self, int* init_table) {
9495 struct trace_t trace = {NULL, NULL, 4614, LOCATE_parser___ReduceAction87___init};
9496 trace.prev = tracehead; tracehead = &trace;
9497 trace.file = LOCATE_parser;
9498 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction87].i]) return;
9499 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction87].i] = 1;
9500 tracehead = trace.prev;
9501 return;
9502 }
9503 void parser___ReduceAction88___action(val_t self, val_t param0) {
9504 struct trace_t trace = {NULL, NULL, 4618, LOCATE_parser___ReduceAction88___action};
9505 val_t variable0;
9506 val_t variable1;
9507 val_t variable2;
9508 val_t variable3;
9509 val_t variable4;
9510 val_t variable5;
9511 val_t variable6;
9512 val_t variable7;
9513 val_t variable8;
9514 val_t variable9;
9515 trace.prev = tracehead; tracehead = &trace;
9516 trace.file = LOCATE_parser;
9517 variable0 = param0;
9518 variable1 = NIT_NULL /*null*/;
9519 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9520 variable2 = variable3;
9521 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9522 variable3 = variable4;
9523 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9524 variable4 = variable5;
9525 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9526 variable5 = variable6;
9527 variable6 = variable4 /*nodearraylist2*/;
9528 variable7 = TAG_Bool(( variable6 /*tkwspecialnode2*/==NIT_NULL) || VAL_ISA( variable6 /*tkwspecialnode2*/, COLOR_TKwspecial, ID_TKwspecial)) /*cast TKwspecial*/;
9529 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction88___action, LOCATE_parser, 4626); nit_exit(1);}
9530 variable7 = variable2 /*nodearraylist4*/;
9531 variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
9532 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction88___action, LOCATE_parser, 4628); nit_exit(1);}
9533 variable9 = NEW_ASuperclass_parser_prod___ASuperclass___init_asuperclass( variable6 /*tkwspecialnode2*/, variable7 /*ptypenode3*/); /*new ASuperclass*/
9534 variable8 = variable9;
9535 variable1 = variable8 /*psuperclassnode1*/ /*node_list=*/;
9536 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(10)) /*Parser::go_to*/;
9537 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
9538 tracehead = trace.prev;
9539 return;
9540 }
9541 void parser___ReduceAction88___init(val_t self, int* init_table) {
9542 struct trace_t trace = {NULL, NULL, 4636, LOCATE_parser___ReduceAction88___init};
9543 trace.prev = tracehead; tracehead = &trace;
9544 trace.file = LOCATE_parser;
9545 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction88].i]) return;
9546 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction88].i] = 1;
9547 tracehead = trace.prev;
9548 return;
9549 }
9550 void parser___ReduceAction89___action(val_t self, val_t param0) {
9551 struct trace_t trace = {NULL, NULL, 4640, LOCATE_parser___ReduceAction89___action};
9552 val_t variable0;
9553 val_t variable1;
9554 val_t variable2;
9555 val_t variable3;
9556 val_t variable4;
9557 val_t variable5;
9558 trace.prev = tracehead; tracehead = &trace;
9559 trace.file = LOCATE_parser;
9560 variable0 = param0;
9561 variable1 = NIT_NULL /*null*/;
9562 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9563 variable2 = variable3;
9564 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9565 variable3 = variable4;
9566 variable4 = variable3 /*nodearraylist1*/;
9567 variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
9568 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction89___action, LOCATE_parser, 4646); nit_exit(1);}
9569 variable1 = variable4 /*ppropdefnode1*/ /*node_list=*/;
9570 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(11)) /*Parser::go_to*/;
9571 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
9572 tracehead = trace.prev;
9573 return;
9574 }
9575 void parser___ReduceAction89___init(val_t self, int* init_table) {
9576 struct trace_t trace = {NULL, NULL, 4650, LOCATE_parser___ReduceAction89___init};
9577 trace.prev = tracehead; tracehead = &trace;
9578 trace.file = LOCATE_parser;
9579 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction89].i]) return;
9580 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction89].i] = 1;
9581 tracehead = trace.prev;
9582 return;
9583 }
9584 void parser___ReduceAction90___action(val_t self, val_t param0) {
9585 struct trace_t trace = {NULL, NULL, 4654, LOCATE_parser___ReduceAction90___action};
9586 val_t variable0;
9587 val_t variable1;
9588 val_t variable2;
9589 val_t variable3;
9590 val_t variable4;
9591 val_t variable5;
9592 val_t variable6;
9593 val_t variable7;
9594 val_t variable8;
9595 val_t variable9;
9596 val_t variable10;
9597 val_t variable11;
9598 val_t variable12;
9599 val_t variable13;
9600 val_t variable14;
9601 val_t variable15;
9602 val_t variable16;
9603 val_t variable17;
9604 trace.prev = tracehead; tracehead = &trace;
9605 trace.file = LOCATE_parser;
9606 variable0 = param0;
9607 variable1 = NIT_NULL /*null*/;
9608 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9609 variable2 = variable3;
9610 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9611 variable3 = variable4;
9612 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9613 variable4 = variable5;
9614 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9615 variable5 = variable6;
9616 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9617 variable6 = variable7;
9618 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9619 variable7 = variable8;
9620 variable8 = variable7 /*nodearraylist1*/;
9621 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
9622 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction90___action, LOCATE_parser, 4664); nit_exit(1);}
9623 variable9 = variable6 /*nodearraylist2*/;
9624 variable10 = TAG_Bool(( variable9 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
9625 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction90___action, LOCATE_parser, 4666); nit_exit(1);}
9626 variable11 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable9 /*tkwreadablenode5*/); /*new AReadAble*/
9627 variable10 = variable11;
9628 variable11 = variable5 /*nodearraylist3*/;
9629 variable12 = TAG_Bool(( variable11 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
9630 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction90___action, LOCATE_parser, 4672); nit_exit(1);}
9631 variable13 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable11 /*tkwwritablenode8*/); /*new AWriteAble*/
9632 variable12 = variable13;
9633 variable13 = variable4 /*nodearraylist4*/;
9634 variable14 = TAG_Bool(( variable13 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
9635 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction90___action, LOCATE_parser, 4678); nit_exit(1);}
9636 variable14 = variable3 /*nodearraylist5*/;
9637 variable15 = TAG_Bool(( variable14 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
9638 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction90___action, LOCATE_parser, 4680); nit_exit(1);}
9639 variable15 = variable2 /*nodearraylist6*/;
9640 variable16 = TAG_Bool(( variable15 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
9641 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction90___action, LOCATE_parser, 4682); nit_exit(1);}
9642 variable17 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable10 /*pablenode3*/, variable12 /*pablenode6*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode10*/, variable14 /*tkwattrnode11*/, variable15 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
9643 variable16 = variable17;
9644 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
9645 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
9646 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
9647 tracehead = trace.prev;
9648 return;
9649 }
9650 void parser___ReduceAction90___init(val_t self, int* init_table) {
9651 struct trace_t trace = {NULL, NULL, 4697, LOCATE_parser___ReduceAction90___init};
9652 trace.prev = tracehead; tracehead = &trace;
9653 trace.file = LOCATE_parser;
9654 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction90].i]) return;
9655 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction90].i] = 1;
9656 tracehead = trace.prev;
9657 return;
9658 }
9659 void parser___ReduceAction91___action(val_t self, val_t param0) {
9660 struct trace_t trace = {NULL, NULL, 4701, LOCATE_parser___ReduceAction91___action};
9661 val_t variable0;
9662 val_t variable1;
9663 val_t variable2;
9664 val_t variable3;
9665 val_t variable4;
9666 val_t variable5;
9667 val_t variable6;
9668 val_t variable7;
9669 val_t variable8;
9670 val_t variable9;
9671 val_t variable10;
9672 val_t variable11;
9673 val_t variable12;
9674 val_t variable13;
9675 val_t variable14;
9676 val_t variable15;
9677 val_t variable16;
9678 val_t variable17;
9679 val_t variable18;
9680 val_t variable19;
9681 trace.prev = tracehead; tracehead = &trace;
9682 trace.file = LOCATE_parser;
9683 variable0 = param0;
9684 variable1 = NIT_NULL /*null*/;
9685 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9686 variable2 = variable3;
9687 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9688 variable3 = variable4;
9689 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9690 variable4 = variable5;
9691 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9692 variable5 = variable6;
9693 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9694 variable6 = variable7;
9695 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9696 variable7 = variable8;
9697 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9698 variable8 = variable9;
9699 variable9 = variable8 /*nodearraylist1*/;
9700 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
9701 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction91___action, LOCATE_parser, 4712); nit_exit(1);}
9702 variable10 = variable7 /*nodearraylist2*/;
9703 variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
9704 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction91___action, LOCATE_parser, 4714); nit_exit(1);}
9705 variable12 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/
9706 variable11 = variable12;
9707 variable12 = variable6 /*nodearraylist3*/;
9708 variable13 = TAG_Bool(( variable12 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
9709 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction91___action, LOCATE_parser, 4720); nit_exit(1);}
9710 variable13 = variable5 /*nodearraylist4*/;
9711 variable14 = TAG_Bool(( variable13 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
9712 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction91___action, LOCATE_parser, 4722); nit_exit(1);}
9713 variable15 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable12 /*tkwredefnode7*/, variable13 /*tkwwritablenode8*/); /*new AWriteAble*/
9714 variable14 = variable15;
9715 variable15 = variable4 /*nodearraylist5*/;
9716 variable16 = TAG_Bool(( variable15 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
9717 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction91___action, LOCATE_parser, 4728); nit_exit(1);}
9718 variable16 = variable3 /*nodearraylist6*/;
9719 variable17 = TAG_Bool(( variable16 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
9720 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction91___action, LOCATE_parser, 4730); nit_exit(1);}
9721 variable17 = variable2 /*nodearraylist7*/;
9722 variable18 = TAG_Bool(( variable17 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
9723 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction91___action, LOCATE_parser, 4732); nit_exit(1);}
9724 variable19 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, variable14 /*pablenode6*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode10*/, variable16 /*tkwattrnode11*/, variable17 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
9725 variable18 = variable19;
9726 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
9727 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
9728 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
9729 tracehead = trace.prev;
9730 return;
9731 }
9732 void parser___ReduceAction91___init(val_t self, int* init_table) {
9733 struct trace_t trace = {NULL, NULL, 4747, LOCATE_parser___ReduceAction91___init};
9734 trace.prev = tracehead; tracehead = &trace;
9735 trace.file = LOCATE_parser;
9736 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction91].i]) return;
9737 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction91].i] = 1;
9738 tracehead = trace.prev;
9739 return;
9740 }
9741 void parser___ReduceAction92___action(val_t self, val_t param0) {
9742 struct trace_t trace = {NULL, NULL, 4751, LOCATE_parser___ReduceAction92___action};
9743 val_t variable0;
9744 val_t variable1;
9745 val_t variable2;
9746 val_t variable3;
9747 val_t variable4;
9748 val_t variable5;
9749 val_t variable6;
9750 val_t variable7;
9751 val_t variable8;
9752 val_t variable9;
9753 val_t variable10;
9754 val_t variable11;
9755 val_t variable12;
9756 val_t variable13;
9757 val_t variable14;
9758 trace.prev = tracehead; tracehead = &trace;
9759 trace.file = LOCATE_parser;
9760 variable0 = param0;
9761 variable1 = NIT_NULL /*null*/;
9762 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9763 variable2 = variable3;
9764 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9765 variable3 = variable4;
9766 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9767 variable4 = variable5;
9768 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9769 variable5 = variable6;
9770 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9771 variable6 = variable7;
9772 variable7 = variable6 /*nodearraylist1*/;
9773 variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
9774 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction92___action, LOCATE_parser, 4760); nit_exit(1);}
9775 variable8 = variable5 /*nodearraylist2*/;
9776 variable9 = TAG_Bool(( variable8 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable8 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
9777 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction92___action, LOCATE_parser, 4762); nit_exit(1);}
9778 variable10 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable8 /*tkwreadablenode5*/); /*new AReadAble*/
9779 variable9 = variable10;
9780 variable10 = variable4 /*nodearraylist3*/;
9781 variable11 = TAG_Bool(( variable10 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
9782 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction92___action, LOCATE_parser, 4768); nit_exit(1);}
9783 variable11 = variable3 /*nodearraylist4*/;
9784 variable12 = TAG_Bool(( variable11 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
9785 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction92___action, LOCATE_parser, 4770); nit_exit(1);}
9786 variable12 = variable2 /*nodearraylist5*/;
9787 variable13 = TAG_Bool(( variable12 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
9788 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction92___action, LOCATE_parser, 4772); nit_exit(1);}
9789 variable14 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, variable9 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode8*/, variable11 /*tkwattrnode9*/, variable12 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
9790 variable13 = variable14;
9791 variable1 = variable13 /*ppropdefnode1*/ /*node_list=*/;
9792 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
9793 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
9794 tracehead = trace.prev;
9795 return;
9796 }
9797 void parser___ReduceAction92___init(val_t self, int* init_table) {
9798 struct trace_t trace = {NULL, NULL, 4787, LOCATE_parser___ReduceAction92___init};
9799 trace.prev = tracehead; tracehead = &trace;
9800 trace.file = LOCATE_parser;
9801 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction92].i]) return;
9802 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction92].i] = 1;
9803 tracehead = trace.prev;
9804 return;
9805 }
9806 void parser___ReduceAction93___action(val_t self, val_t param0) {
9807 struct trace_t trace = {NULL, NULL, 4791, LOCATE_parser___ReduceAction93___action};
9808 val_t variable0;
9809 val_t variable1;
9810 val_t variable2;
9811 val_t variable3;
9812 val_t variable4;
9813 val_t variable5;
9814 val_t variable6;
9815 val_t variable7;
9816 val_t variable8;
9817 val_t variable9;
9818 val_t variable10;
9819 val_t variable11;
9820 val_t variable12;
9821 val_t variable13;
9822 val_t variable14;
9823 val_t variable15;
9824 val_t variable16;
9825 val_t variable17;
9826 val_t variable18;
9827 val_t variable19;
9828 trace.prev = tracehead; tracehead = &trace;
9829 trace.file = LOCATE_parser;
9830 variable0 = param0;
9831 variable1 = NIT_NULL /*null*/;
9832 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9833 variable2 = variable3;
9834 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9835 variable3 = variable4;
9836 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9837 variable4 = variable5;
9838 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9839 variable5 = variable6;
9840 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9841 variable6 = variable7;
9842 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9843 variable7 = variable8;
9844 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9845 variable8 = variable9;
9846 variable9 = variable8 /*nodearraylist1*/;
9847 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
9848 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction93___action, LOCATE_parser, 4802); nit_exit(1);}
9849 variable10 = variable7 /*nodearraylist2*/;
9850 variable11 = TAG_Bool(( variable10 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
9851 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction93___action, LOCATE_parser, 4804); nit_exit(1);}
9852 variable11 = variable6 /*nodearraylist3*/;
9853 variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
9854 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction93___action, LOCATE_parser, 4806); nit_exit(1);}
9855 variable13 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable10 /*tkwredefnode4*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/
9856 variable12 = variable13;
9857 variable13 = variable5 /*nodearraylist4*/;
9858 variable14 = TAG_Bool(( variable13 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
9859 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction93___action, LOCATE_parser, 4812); nit_exit(1);}
9860 variable15 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable13 /*tkwwritablenode8*/); /*new AWriteAble*/
9861 variable14 = variable15;
9862 variable15 = variable4 /*nodearraylist5*/;
9863 variable16 = TAG_Bool(( variable15 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
9864 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction93___action, LOCATE_parser, 4818); nit_exit(1);}
9865 variable16 = variable3 /*nodearraylist6*/;
9866 variable17 = TAG_Bool(( variable16 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
9867 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction93___action, LOCATE_parser, 4820); nit_exit(1);}
9868 variable17 = variable2 /*nodearraylist7*/;
9869 variable18 = TAG_Bool(( variable17 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
9870 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction93___action, LOCATE_parser, 4822); nit_exit(1);}
9871 variable19 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable12 /*pablenode3*/, variable14 /*pablenode6*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode10*/, variable16 /*tkwattrnode11*/, variable17 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
9872 variable18 = variable19;
9873 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
9874 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
9875 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
9876 tracehead = trace.prev;
9877 return;
9878 }
9879 void parser___ReduceAction93___init(val_t self, int* init_table) {
9880 struct trace_t trace = {NULL, NULL, 4837, LOCATE_parser___ReduceAction93___init};
9881 trace.prev = tracehead; tracehead = &trace;
9882 trace.file = LOCATE_parser;
9883 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction93].i]) return;
9884 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction93].i] = 1;
9885 tracehead = trace.prev;
9886 return;
9887 }
9888 void parser___ReduceAction94___action(val_t self, val_t param0) {
9889 struct trace_t trace = {NULL, NULL, 4841, LOCATE_parser___ReduceAction94___action};
9890 val_t variable0;
9891 val_t variable1;
9892 val_t variable2;
9893 val_t variable3;
9894 val_t variable4;
9895 val_t variable5;
9896 val_t variable6;
9897 val_t variable7;
9898 val_t variable8;
9899 val_t variable9;
9900 val_t variable10;
9901 val_t variable11;
9902 val_t variable12;
9903 val_t variable13;
9904 val_t variable14;
9905 val_t variable15;
9906 val_t variable16;
9907 val_t variable17;
9908 val_t variable18;
9909 val_t variable19;
9910 val_t variable20;
9911 val_t variable21;
9912 trace.prev = tracehead; tracehead = &trace;
9913 trace.file = LOCATE_parser;
9914 variable0 = param0;
9915 variable1 = NIT_NULL /*null*/;
9916 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9917 variable2 = variable3;
9918 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9919 variable3 = variable4;
9920 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9921 variable4 = variable5;
9922 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9923 variable5 = variable6;
9924 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9925 variable6 = variable7;
9926 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9927 variable7 = variable8;
9928 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9929 variable8 = variable9;
9930 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
9931 variable9 = variable10;
9932 variable10 = variable9 /*nodearraylist1*/;
9933 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
9934 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4853); nit_exit(1);}
9935 variable11 = variable8 /*nodearraylist2*/;
9936 variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
9937 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4855); nit_exit(1);}
9938 variable12 = variable7 /*nodearraylist3*/;
9939 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
9940 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4857); nit_exit(1);}
9941 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
9942 variable13 = variable14;
9943 variable14 = variable6 /*nodearraylist4*/;
9944 variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
9945 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4863); nit_exit(1);}
9946 variable15 = variable5 /*nodearraylist5*/;
9947 variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
9948 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4865); nit_exit(1);}
9949 variable17 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable14 /*tkwredefnode7*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/
9950 variable16 = variable17;
9951 variable17 = variable4 /*nodearraylist6*/;
9952 variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
9953 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4871); nit_exit(1);}
9954 variable18 = variable3 /*nodearraylist7*/;
9955 variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
9956 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4873); nit_exit(1);}
9957 variable19 = variable2 /*nodearraylist8*/;
9958 variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
9959 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction94___action, LOCATE_parser, 4875); nit_exit(1);}
9960 variable21 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, variable16 /*pablenode6*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
9961 variable20 = variable21;
9962 variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/;
9963 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
9964 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
9965 tracehead = trace.prev;
9966 return;
9967 }
9968 void parser___ReduceAction94___init(val_t self, int* init_table) {
9969 struct trace_t trace = {NULL, NULL, 4890, LOCATE_parser___ReduceAction94___init};
9970 trace.prev = tracehead; tracehead = &trace;
9971 trace.file = LOCATE_parser;
9972 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction94].i]) return;
9973 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction94].i] = 1;
9974 tracehead = trace.prev;
9975 return;
9976 }
9977 void parser___ReduceAction95___action(val_t self, val_t param0) {
9978 struct trace_t trace = {NULL, NULL, 4894, LOCATE_parser___ReduceAction95___action};
9979 val_t variable0;
9980 val_t variable1;
9981 val_t variable2;
9982 val_t variable3;
9983 val_t variable4;
9984 val_t variable5;
9985 val_t variable6;
9986 val_t variable7;
9987 val_t variable8;
9988 val_t variable9;
9989 val_t variable10;
9990 val_t variable11;
9991 val_t variable12;
9992 val_t variable13;
9993 val_t variable14;
9994 val_t variable15;
9995 val_t variable16;
9996 trace.prev = tracehead; tracehead = &trace;
9997 trace.file = LOCATE_parser;
9998 variable0 = param0;
9999 variable1 = NIT_NULL /*null*/;
10000 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10001 variable2 = variable3;
10002 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10003 variable3 = variable4;
10004 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10005 variable4 = variable5;
10006 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10007 variable5 = variable6;
10008 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10009 variable6 = variable7;
10010 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10011 variable7 = variable8;
10012 variable8 = variable7 /*nodearraylist1*/;
10013 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10014 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction95___action, LOCATE_parser, 4904); nit_exit(1);}
10015 variable9 = variable6 /*nodearraylist2*/;
10016 variable10 = TAG_Bool(( variable9 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10017 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction95___action, LOCATE_parser, 4906); nit_exit(1);}
10018 variable10 = variable5 /*nodearraylist3*/;
10019 variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
10020 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction95___action, LOCATE_parser, 4908); nit_exit(1);}
10021 variable12 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable9 /*tkwredefnode4*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/
10022 variable11 = variable12;
10023 variable12 = variable4 /*nodearraylist4*/;
10024 variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10025 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction95___action, LOCATE_parser, 4914); nit_exit(1);}
10026 variable13 = variable3 /*nodearraylist5*/;
10027 variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10028 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction95___action, LOCATE_parser, 4916); nit_exit(1);}
10029 variable14 = variable2 /*nodearraylist6*/;
10030 variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10031 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction95___action, LOCATE_parser, 4918); nit_exit(1);}
10032 variable16 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable11 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10033 variable15 = variable16;
10034 variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/;
10035 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10036 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
10037 tracehead = trace.prev;
10038 return;
10039 }
10040 void parser___ReduceAction95___init(val_t self, int* init_table) {
10041 struct trace_t trace = {NULL, NULL, 4933, LOCATE_parser___ReduceAction95___init};
10042 trace.prev = tracehead; tracehead = &trace;
10043 trace.file = LOCATE_parser;
10044 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction95].i]) return;
10045 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction95].i] = 1;
10046 tracehead = trace.prev;
10047 return;
10048 }
10049 void parser___ReduceAction96___action(val_t self, val_t param0) {
10050 struct trace_t trace = {NULL, NULL, 4937, LOCATE_parser___ReduceAction96___action};
10051 val_t variable0;
10052 val_t variable1;
10053 val_t variable2;
10054 val_t variable3;
10055 val_t variable4;
10056 val_t variable5;
10057 val_t variable6;
10058 val_t variable7;
10059 val_t variable8;
10060 val_t variable9;
10061 val_t variable10;
10062 val_t variable11;
10063 val_t variable12;
10064 val_t variable13;
10065 val_t variable14;
10066 trace.prev = tracehead; tracehead = &trace;
10067 trace.file = LOCATE_parser;
10068 variable0 = param0;
10069 variable1 = NIT_NULL /*null*/;
10070 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10071 variable2 = variable3;
10072 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10073 variable3 = variable4;
10074 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10075 variable4 = variable5;
10076 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10077 variable5 = variable6;
10078 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10079 variable6 = variable7;
10080 variable7 = variable6 /*nodearraylist1*/;
10081 variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10082 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction96___action, LOCATE_parser, 4946); nit_exit(1);}
10083 variable8 = variable5 /*nodearraylist2*/;
10084 variable9 = TAG_Bool(( variable8 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable8 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10085 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction96___action, LOCATE_parser, 4948); nit_exit(1);}
10086 variable10 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable8 /*tkwwritablenode6*/); /*new AWriteAble*/
10087 variable9 = variable10;
10088 variable10 = variable4 /*nodearraylist3*/;
10089 variable11 = TAG_Bool(( variable10 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10090 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction96___action, LOCATE_parser, 4954); nit_exit(1);}
10091 variable11 = variable3 /*nodearraylist4*/;
10092 variable12 = TAG_Bool(( variable11 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10093 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction96___action, LOCATE_parser, 4956); nit_exit(1);}
10094 variable12 = variable2 /*nodearraylist5*/;
10095 variable13 = TAG_Bool(( variable12 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10096 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction96___action, LOCATE_parser, 4958); nit_exit(1);}
10097 variable14 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, variable9 /*pablenode4*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode8*/, variable11 /*tkwattrnode9*/, variable12 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10098 variable13 = variable14;
10099 variable1 = variable13 /*ppropdefnode1*/ /*node_list=*/;
10100 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10101 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
10102 tracehead = trace.prev;
10103 return;
10104 }
10105 void parser___ReduceAction96___init(val_t self, int* init_table) {
10106 struct trace_t trace = {NULL, NULL, 4973, LOCATE_parser___ReduceAction96___init};
10107 trace.prev = tracehead; tracehead = &trace;
10108 trace.file = LOCATE_parser;
10109 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction96].i]) return;
10110 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction96].i] = 1;
10111 tracehead = trace.prev;
10112 return;
10113 }
10114 void parser___ReduceAction97___action(val_t self, val_t param0) {
10115 struct trace_t trace = {NULL, NULL, 4977, LOCATE_parser___ReduceAction97___action};
10116 val_t variable0;
10117 val_t variable1;
10118 val_t variable2;
10119 val_t variable3;
10120 val_t variable4;
10121 val_t variable5;
10122 val_t variable6;
10123 val_t variable7;
10124 val_t variable8;
10125 val_t variable9;
10126 val_t variable10;
10127 val_t variable11;
10128 val_t variable12;
10129 val_t variable13;
10130 val_t variable14;
10131 val_t variable15;
10132 val_t variable16;
10133 trace.prev = tracehead; tracehead = &trace;
10134 trace.file = LOCATE_parser;
10135 variable0 = param0;
10136 variable1 = NIT_NULL /*null*/;
10137 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10138 variable2 = variable3;
10139 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10140 variable3 = variable4;
10141 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10142 variable4 = variable5;
10143 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10144 variable5 = variable6;
10145 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10146 variable6 = variable7;
10147 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10148 variable7 = variable8;
10149 variable8 = variable7 /*nodearraylist1*/;
10150 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10151 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction97___action, LOCATE_parser, 4987); nit_exit(1);}
10152 variable9 = variable6 /*nodearraylist2*/;
10153 variable10 = TAG_Bool(( variable9 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10154 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction97___action, LOCATE_parser, 4989); nit_exit(1);}
10155 variable10 = variable5 /*nodearraylist3*/;
10156 variable11 = TAG_Bool(( variable10 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable10 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10157 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction97___action, LOCATE_parser, 4991); nit_exit(1);}
10158 variable12 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable9 /*tkwredefnode5*/, variable10 /*tkwwritablenode6*/); /*new AWriteAble*/
10159 variable11 = variable12;
10160 variable12 = variable4 /*nodearraylist4*/;
10161 variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10162 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction97___action, LOCATE_parser, 4997); nit_exit(1);}
10163 variable13 = variable3 /*nodearraylist5*/;
10164 variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10165 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction97___action, LOCATE_parser, 4999); nit_exit(1);}
10166 variable14 = variable2 /*nodearraylist6*/;
10167 variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10168 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction97___action, LOCATE_parser, 5001); nit_exit(1);}
10169 variable16 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pablenode4*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10170 variable15 = variable16;
10171 variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/;
10172 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10173 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
10174 tracehead = trace.prev;
10175 return;
10176 }
10177 void parser___ReduceAction97___init(val_t self, int* init_table) {
10178 struct trace_t trace = {NULL, NULL, 5016, LOCATE_parser___ReduceAction97___init};
10179 trace.prev = tracehead; tracehead = &trace;
10180 trace.file = LOCATE_parser;
10181 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction97].i]) return;
10182 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction97].i] = 1;
10183 tracehead = trace.prev;
10184 return;
10185 }
10186 void parser___ReduceAction98___action(val_t self, val_t param0) {
10187 struct trace_t trace = {NULL, NULL, 5020, LOCATE_parser___ReduceAction98___action};
10188 val_t variable0;
10189 val_t variable1;
10190 val_t variable2;
10191 val_t variable3;
10192 val_t variable4;
10193 val_t variable5;
10194 val_t variable6;
10195 val_t variable7;
10196 val_t variable8;
10197 val_t variable9;
10198 val_t variable10;
10199 val_t variable11;
10200 trace.prev = tracehead; tracehead = &trace;
10201 trace.file = LOCATE_parser;
10202 variable0 = param0;
10203 variable1 = NIT_NULL /*null*/;
10204 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10205 variable2 = variable3;
10206 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10207 variable3 = variable4;
10208 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10209 variable4 = variable5;
10210 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10211 variable5 = variable6;
10212 variable6 = variable5 /*nodearraylist1*/;
10213 variable7 = TAG_Bool(( variable6 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10214 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction98___action, LOCATE_parser, 5028); nit_exit(1);}
10215 variable7 = variable4 /*nodearraylist2*/;
10216 variable8 = TAG_Bool(( variable7 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable7 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10217 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction98___action, LOCATE_parser, 5030); nit_exit(1);}
10218 variable8 = variable3 /*nodearraylist3*/;
10219 variable9 = TAG_Bool(( variable8 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable8 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10220 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction98___action, LOCATE_parser, 5032); nit_exit(1);}
10221 variable9 = variable2 /*nodearraylist4*/;
10222 variable10 = TAG_Bool(( variable9 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable9 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10223 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction98___action, LOCATE_parser, 5034); nit_exit(1);}
10224 variable11 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable6 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable7 /*pvisibilitynode6*/, variable8 /*tkwattrnode7*/, variable9 /*tattridnode8*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10225 variable10 = variable11;
10226 variable1 = variable10 /*ppropdefnode1*/ /*node_list=*/;
10227 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10228 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
10229 tracehead = trace.prev;
10230 return;
10231 }
10232 void parser___ReduceAction98___init(val_t self, int* init_table) {
10233 struct trace_t trace = {NULL, NULL, 5049, LOCATE_parser___ReduceAction98___init};
10234 trace.prev = tracehead; tracehead = &trace;
10235 trace.file = LOCATE_parser;
10236 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction98].i]) return;
10237 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction98].i] = 1;
10238 tracehead = trace.prev;
10239 return;
10240 }
10241 void parser___ReduceAction99___action(val_t self, val_t param0) {
10242 struct trace_t trace = {NULL, NULL, 5053, LOCATE_parser___ReduceAction99___action};
10243 val_t variable0;
10244 val_t variable1;
10245 val_t variable2;
10246 val_t variable3;
10247 val_t variable4;
10248 val_t variable5;
10249 val_t variable6;
10250 val_t variable7;
10251 val_t variable8;
10252 val_t variable9;
10253 val_t variable10;
10254 val_t variable11;
10255 val_t variable12;
10256 val_t variable13;
10257 val_t variable14;
10258 val_t variable15;
10259 val_t variable16;
10260 val_t variable17;
10261 val_t variable18;
10262 val_t variable19;
10263 trace.prev = tracehead; tracehead = &trace;
10264 trace.file = LOCATE_parser;
10265 variable0 = param0;
10266 variable1 = NIT_NULL /*null*/;
10267 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10268 variable2 = variable3;
10269 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10270 variable3 = variable4;
10271 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10272 variable4 = variable5;
10273 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10274 variable5 = variable6;
10275 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10276 variable6 = variable7;
10277 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10278 variable7 = variable8;
10279 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10280 variable8 = variable9;
10281 variable9 = variable8 /*nodearraylist1*/;
10282 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10283 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction99___action, LOCATE_parser, 5064); nit_exit(1);}
10284 variable10 = variable7 /*nodearraylist2*/;
10285 variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
10286 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction99___action, LOCATE_parser, 5066); nit_exit(1);}
10287 variable12 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/
10288 variable11 = variable12;
10289 variable12 = variable6 /*nodearraylist3*/;
10290 variable13 = TAG_Bool(( variable12 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10291 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction99___action, LOCATE_parser, 5072); nit_exit(1);}
10292 variable14 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode8*/); /*new AWriteAble*/
10293 variable13 = variable14;
10294 variable14 = variable5 /*nodearraylist4*/;
10295 variable15 = TAG_Bool(( variable14 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10296 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction99___action, LOCATE_parser, 5078); nit_exit(1);}
10297 variable15 = variable4 /*nodearraylist5*/;
10298 variable16 = TAG_Bool(( variable15 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10299 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction99___action, LOCATE_parser, 5080); nit_exit(1);}
10300 variable16 = variable3 /*nodearraylist6*/;
10301 variable17 = TAG_Bool(( variable16 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10302 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction99___action, LOCATE_parser, 5082); nit_exit(1);}
10303 variable17 = variable2 /*nodearraylist7*/;
10304 variable18 = TAG_Bool(( variable17 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10305 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction99___action, LOCATE_parser, 5084); nit_exit(1);}
10306 variable19 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, variable13 /*pablenode6*/, variable14 /*tkwredefnode9*/, variable15 /*pvisibilitynode10*/, variable16 /*tkwattrnode11*/, variable17 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10307 variable18 = variable19;
10308 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
10309 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10310 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
10311 tracehead = trace.prev;
10312 return;
10313 }
10314 void parser___ReduceAction99___init(val_t self, int* init_table) {
10315 struct trace_t trace = {NULL, NULL, 5099, LOCATE_parser___ReduceAction99___init};
10316 trace.prev = tracehead; tracehead = &trace;
10317 trace.file = LOCATE_parser;
10318 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction99].i]) return;
10319 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction99].i] = 1;
10320 tracehead = trace.prev;
10321 return;
10322 }
10323 void parser___ReduceAction100___action(val_t self, val_t param0) {
10324 struct trace_t trace = {NULL, NULL, 5103, LOCATE_parser___ReduceAction100___action};
10325 val_t variable0;
10326 val_t variable1;
10327 val_t variable2;
10328 val_t variable3;
10329 val_t variable4;
10330 val_t variable5;
10331 val_t variable6;
10332 val_t variable7;
10333 val_t variable8;
10334 val_t variable9;
10335 val_t variable10;
10336 val_t variable11;
10337 val_t variable12;
10338 val_t variable13;
10339 val_t variable14;
10340 val_t variable15;
10341 val_t variable16;
10342 val_t variable17;
10343 val_t variable18;
10344 val_t variable19;
10345 val_t variable20;
10346 val_t variable21;
10347 trace.prev = tracehead; tracehead = &trace;
10348 trace.file = LOCATE_parser;
10349 variable0 = param0;
10350 variable1 = NIT_NULL /*null*/;
10351 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10352 variable2 = variable3;
10353 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10354 variable3 = variable4;
10355 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10356 variable4 = variable5;
10357 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10358 variable5 = variable6;
10359 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10360 variable6 = variable7;
10361 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10362 variable7 = variable8;
10363 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10364 variable8 = variable9;
10365 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10366 variable9 = variable10;
10367 variable10 = variable9 /*nodearraylist1*/;
10368 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10369 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5115); nit_exit(1);}
10370 variable11 = variable8 /*nodearraylist2*/;
10371 variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
10372 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5117); nit_exit(1);}
10373 variable13 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/
10374 variable12 = variable13;
10375 variable13 = variable7 /*nodearraylist3*/;
10376 variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10377 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5123); nit_exit(1);}
10378 variable14 = variable6 /*nodearraylist4*/;
10379 variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10380 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5125); nit_exit(1);}
10381 variable16 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode7*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/
10382 variable15 = variable16;
10383 variable16 = variable5 /*nodearraylist5*/;
10384 variable17 = TAG_Bool(( variable16 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10385 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5131); nit_exit(1);}
10386 variable17 = variable4 /*nodearraylist6*/;
10387 variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10388 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5133); nit_exit(1);}
10389 variable18 = variable3 /*nodearraylist7*/;
10390 variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10391 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5135); nit_exit(1);}
10392 variable19 = variable2 /*nodearraylist8*/;
10393 variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10394 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction100___action, LOCATE_parser, 5137); nit_exit(1);}
10395 variable21 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, variable15 /*pablenode6*/, variable16 /*tkwredefnode9*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10396 variable20 = variable21;
10397 variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/;
10398 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10399 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
10400 tracehead = trace.prev;
10401 return;
10402 }
10403 void parser___ReduceAction100___init(val_t self, int* init_table) {
10404 struct trace_t trace = {NULL, NULL, 5152, LOCATE_parser___ReduceAction100___init};
10405 trace.prev = tracehead; tracehead = &trace;
10406 trace.file = LOCATE_parser;
10407 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction100].i]) return;
10408 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction100].i] = 1;
10409 tracehead = trace.prev;
10410 return;
10411 }
10412 void parser___ReduceAction101___action(val_t self, val_t param0) {
10413 struct trace_t trace = {NULL, NULL, 5156, LOCATE_parser___ReduceAction101___action};
10414 val_t variable0;
10415 val_t variable1;
10416 val_t variable2;
10417 val_t variable3;
10418 val_t variable4;
10419 val_t variable5;
10420 val_t variable6;
10421 val_t variable7;
10422 val_t variable8;
10423 val_t variable9;
10424 val_t variable10;
10425 val_t variable11;
10426 val_t variable12;
10427 val_t variable13;
10428 val_t variable14;
10429 val_t variable15;
10430 val_t variable16;
10431 trace.prev = tracehead; tracehead = &trace;
10432 trace.file = LOCATE_parser;
10433 variable0 = param0;
10434 variable1 = NIT_NULL /*null*/;
10435 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10436 variable2 = variable3;
10437 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10438 variable3 = variable4;
10439 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10440 variable4 = variable5;
10441 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10442 variable5 = variable6;
10443 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10444 variable6 = variable7;
10445 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10446 variable7 = variable8;
10447 variable8 = variable7 /*nodearraylist1*/;
10448 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10449 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction101___action, LOCATE_parser, 5166); nit_exit(1);}
10450 variable9 = variable6 /*nodearraylist2*/;
10451 variable10 = TAG_Bool(( variable9 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
10452 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction101___action, LOCATE_parser, 5168); nit_exit(1);}
10453 variable11 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable9 /*tkwreadablenode5*/); /*new AReadAble*/
10454 variable10 = variable11;
10455 variable11 = variable5 /*nodearraylist3*/;
10456 variable12 = TAG_Bool(( variable11 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10457 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction101___action, LOCATE_parser, 5174); nit_exit(1);}
10458 variable12 = variable4 /*nodearraylist4*/;
10459 variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10460 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction101___action, LOCATE_parser, 5176); nit_exit(1);}
10461 variable13 = variable3 /*nodearraylist5*/;
10462 variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10463 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction101___action, LOCATE_parser, 5178); nit_exit(1);}
10464 variable14 = variable2 /*nodearraylist6*/;
10465 variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10466 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction101___action, LOCATE_parser, 5180); nit_exit(1);}
10467 variable16 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable10 /*pablenode3*/, NIT_NULL /*null*/, variable11 /*tkwredefnode7*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10468 variable15 = variable16;
10469 variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/;
10470 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10471 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
10472 tracehead = trace.prev;
10473 return;
10474 }
10475 void parser___ReduceAction101___init(val_t self, int* init_table) {
10476 struct trace_t trace = {NULL, NULL, 5195, LOCATE_parser___ReduceAction101___init};
10477 trace.prev = tracehead; tracehead = &trace;
10478 trace.file = LOCATE_parser;
10479 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction101].i]) return;
10480 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction101].i] = 1;
10481 tracehead = trace.prev;
10482 return;
10483 }
10484 void parser___ReduceAction102___action(val_t self, val_t param0) {
10485 struct trace_t trace = {NULL, NULL, 5199, LOCATE_parser___ReduceAction102___action};
10486 val_t variable0;
10487 val_t variable1;
10488 val_t variable2;
10489 val_t variable3;
10490 val_t variable4;
10491 val_t variable5;
10492 val_t variable6;
10493 val_t variable7;
10494 val_t variable8;
10495 val_t variable9;
10496 val_t variable10;
10497 val_t variable11;
10498 val_t variable12;
10499 val_t variable13;
10500 val_t variable14;
10501 val_t variable15;
10502 val_t variable16;
10503 val_t variable17;
10504 val_t variable18;
10505 val_t variable19;
10506 val_t variable20;
10507 val_t variable21;
10508 trace.prev = tracehead; tracehead = &trace;
10509 trace.file = LOCATE_parser;
10510 variable0 = param0;
10511 variable1 = NIT_NULL /*null*/;
10512 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10513 variable2 = variable3;
10514 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10515 variable3 = variable4;
10516 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10517 variable4 = variable5;
10518 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10519 variable5 = variable6;
10520 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10521 variable6 = variable7;
10522 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10523 variable7 = variable8;
10524 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10525 variable8 = variable9;
10526 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10527 variable9 = variable10;
10528 variable10 = variable9 /*nodearraylist1*/;
10529 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10530 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5211); nit_exit(1);}
10531 variable11 = variable8 /*nodearraylist2*/;
10532 variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10533 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5213); nit_exit(1);}
10534 variable12 = variable7 /*nodearraylist3*/;
10535 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
10536 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5215); nit_exit(1);}
10537 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
10538 variable13 = variable14;
10539 variable14 = variable6 /*nodearraylist4*/;
10540 variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10541 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5221); nit_exit(1);}
10542 variable16 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/
10543 variable15 = variable16;
10544 variable16 = variable5 /*nodearraylist5*/;
10545 variable17 = TAG_Bool(( variable16 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10546 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5227); nit_exit(1);}
10547 variable17 = variable4 /*nodearraylist6*/;
10548 variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10549 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5229); nit_exit(1);}
10550 variable18 = variable3 /*nodearraylist7*/;
10551 variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10552 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5231); nit_exit(1);}
10553 variable19 = variable2 /*nodearraylist8*/;
10554 variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10555 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction102___action, LOCATE_parser, 5233); nit_exit(1);}
10556 variable21 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, variable15 /*pablenode6*/, variable16 /*tkwredefnode9*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10557 variable20 = variable21;
10558 variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/;
10559 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10560 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
10561 tracehead = trace.prev;
10562 return;
10563 }
10564 void parser___ReduceAction102___init(val_t self, int* init_table) {
10565 struct trace_t trace = {NULL, NULL, 5248, LOCATE_parser___ReduceAction102___init};
10566 trace.prev = tracehead; tracehead = &trace;
10567 trace.file = LOCATE_parser;
10568 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction102].i]) return;
10569 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction102].i] = 1;
10570 tracehead = trace.prev;
10571 return;
10572 }
10573 void parser___ReduceAction103___action(val_t self, val_t param0) {
10574 struct trace_t trace = {NULL, NULL, 5252, LOCATE_parser___ReduceAction103___action};
10575 val_t variable0;
10576 val_t variable1;
10577 val_t variable2;
10578 val_t variable3;
10579 val_t variable4;
10580 val_t variable5;
10581 val_t variable6;
10582 val_t variable7;
10583 val_t variable8;
10584 val_t variable9;
10585 val_t variable10;
10586 val_t variable11;
10587 val_t variable12;
10588 val_t variable13;
10589 val_t variable14;
10590 val_t variable15;
10591 val_t variable16;
10592 val_t variable17;
10593 val_t variable18;
10594 val_t variable19;
10595 val_t variable20;
10596 val_t variable21;
10597 val_t variable22;
10598 val_t variable23;
10599 trace.prev = tracehead; tracehead = &trace;
10600 trace.file = LOCATE_parser;
10601 variable0 = param0;
10602 variable1 = NIT_NULL /*null*/;
10603 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10604 variable2 = variable3;
10605 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10606 variable3 = variable4;
10607 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10608 variable4 = variable5;
10609 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10610 variable5 = variable6;
10611 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10612 variable6 = variable7;
10613 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10614 variable7 = variable8;
10615 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10616 variable8 = variable9;
10617 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10618 variable9 = variable10;
10619 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10620 variable10 = variable11;
10621 variable11 = variable10 /*nodearraylist1*/;
10622 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10623 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5265); nit_exit(1);}
10624 variable12 = variable9 /*nodearraylist2*/;
10625 variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10626 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5267); nit_exit(1);}
10627 variable13 = variable8 /*nodearraylist3*/;
10628 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
10629 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5269); nit_exit(1);}
10630 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
10631 variable14 = variable15;
10632 variable15 = variable7 /*nodearraylist4*/;
10633 variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10634 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5275); nit_exit(1);}
10635 variable16 = variable6 /*nodearraylist5*/;
10636 variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10637 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5277); nit_exit(1);}
10638 variable18 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable15 /*tkwredefnode7*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/
10639 variable17 = variable18;
10640 variable18 = variable5 /*nodearraylist6*/;
10641 variable19 = TAG_Bool(( variable18 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10642 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5283); nit_exit(1);}
10643 variable19 = variable4 /*nodearraylist7*/;
10644 variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10645 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5285); nit_exit(1);}
10646 variable20 = variable3 /*nodearraylist8*/;
10647 variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10648 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5287); nit_exit(1);}
10649 variable21 = variable2 /*nodearraylist9*/;
10650 variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10651 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction103___action, LOCATE_parser, 5289); nit_exit(1);}
10652 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, variable17 /*pablenode6*/, variable18 /*tkwredefnode9*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10653 variable22 = variable23;
10654 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
10655 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10656 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
10657 tracehead = trace.prev;
10658 return;
10659 }
10660 void parser___ReduceAction103___init(val_t self, int* init_table) {
10661 struct trace_t trace = {NULL, NULL, 5304, LOCATE_parser___ReduceAction103___init};
10662 trace.prev = tracehead; tracehead = &trace;
10663 trace.file = LOCATE_parser;
10664 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction103].i]) return;
10665 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction103].i] = 1;
10666 tracehead = trace.prev;
10667 return;
10668 }
10669 void parser___ReduceAction104___action(val_t self, val_t param0) {
10670 struct trace_t trace = {NULL, NULL, 5308, LOCATE_parser___ReduceAction104___action};
10671 val_t variable0;
10672 val_t variable1;
10673 val_t variable2;
10674 val_t variable3;
10675 val_t variable4;
10676 val_t variable5;
10677 val_t variable6;
10678 val_t variable7;
10679 val_t variable8;
10680 val_t variable9;
10681 val_t variable10;
10682 val_t variable11;
10683 val_t variable12;
10684 val_t variable13;
10685 val_t variable14;
10686 val_t variable15;
10687 val_t variable16;
10688 val_t variable17;
10689 val_t variable18;
10690 trace.prev = tracehead; tracehead = &trace;
10691 trace.file = LOCATE_parser;
10692 variable0 = param0;
10693 variable1 = NIT_NULL /*null*/;
10694 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10695 variable2 = variable3;
10696 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10697 variable3 = variable4;
10698 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10699 variable4 = variable5;
10700 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10701 variable5 = variable6;
10702 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10703 variable6 = variable7;
10704 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10705 variable7 = variable8;
10706 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10707 variable8 = variable9;
10708 variable9 = variable8 /*nodearraylist1*/;
10709 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10710 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction104___action, LOCATE_parser, 5319); nit_exit(1);}
10711 variable10 = variable7 /*nodearraylist2*/;
10712 variable11 = TAG_Bool(( variable10 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10713 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction104___action, LOCATE_parser, 5321); nit_exit(1);}
10714 variable11 = variable6 /*nodearraylist3*/;
10715 variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
10716 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction104___action, LOCATE_parser, 5323); nit_exit(1);}
10717 variable13 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable10 /*tkwredefnode4*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/
10718 variable12 = variable13;
10719 variable13 = variable5 /*nodearraylist4*/;
10720 variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10721 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction104___action, LOCATE_parser, 5329); nit_exit(1);}
10722 variable14 = variable4 /*nodearraylist5*/;
10723 variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10724 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction104___action, LOCATE_parser, 5331); nit_exit(1);}
10725 variable15 = variable3 /*nodearraylist6*/;
10726 variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10727 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction104___action, LOCATE_parser, 5333); nit_exit(1);}
10728 variable16 = variable2 /*nodearraylist7*/;
10729 variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10730 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction104___action, LOCATE_parser, 5335); nit_exit(1);}
10731 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable12 /*pablenode3*/, NIT_NULL /*null*/, variable13 /*tkwredefnode7*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10732 variable17 = variable18;
10733 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
10734 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10735 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
10736 tracehead = trace.prev;
10737 return;
10738 }
10739 void parser___ReduceAction104___init(val_t self, int* init_table) {
10740 struct trace_t trace = {NULL, NULL, 5350, LOCATE_parser___ReduceAction104___init};
10741 trace.prev = tracehead; tracehead = &trace;
10742 trace.file = LOCATE_parser;
10743 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction104].i]) return;
10744 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction104].i] = 1;
10745 tracehead = trace.prev;
10746 return;
10747 }
10748 void parser___ReduceAction105___action(val_t self, val_t param0) {
10749 struct trace_t trace = {NULL, NULL, 5354, LOCATE_parser___ReduceAction105___action};
10750 val_t variable0;
10751 val_t variable1;
10752 val_t variable2;
10753 val_t variable3;
10754 val_t variable4;
10755 val_t variable5;
10756 val_t variable6;
10757 val_t variable7;
10758 val_t variable8;
10759 val_t variable9;
10760 val_t variable10;
10761 val_t variable11;
10762 val_t variable12;
10763 val_t variable13;
10764 val_t variable14;
10765 val_t variable15;
10766 val_t variable16;
10767 trace.prev = tracehead; tracehead = &trace;
10768 trace.file = LOCATE_parser;
10769 variable0 = param0;
10770 variable1 = NIT_NULL /*null*/;
10771 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10772 variable2 = variable3;
10773 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10774 variable3 = variable4;
10775 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10776 variable4 = variable5;
10777 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10778 variable5 = variable6;
10779 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10780 variable6 = variable7;
10781 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10782 variable7 = variable8;
10783 variable8 = variable7 /*nodearraylist1*/;
10784 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10785 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction105___action, LOCATE_parser, 5364); nit_exit(1);}
10786 variable9 = variable6 /*nodearraylist2*/;
10787 variable10 = TAG_Bool(( variable9 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable9 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10788 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction105___action, LOCATE_parser, 5366); nit_exit(1);}
10789 variable11 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable9 /*tkwwritablenode6*/); /*new AWriteAble*/
10790 variable10 = variable11;
10791 variable11 = variable5 /*nodearraylist3*/;
10792 variable12 = TAG_Bool(( variable11 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10793 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction105___action, LOCATE_parser, 5372); nit_exit(1);}
10794 variable12 = variable4 /*nodearraylist4*/;
10795 variable13 = TAG_Bool(( variable12 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10796 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction105___action, LOCATE_parser, 5374); nit_exit(1);}
10797 variable13 = variable3 /*nodearraylist5*/;
10798 variable14 = TAG_Bool(( variable13 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10799 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction105___action, LOCATE_parser, 5376); nit_exit(1);}
10800 variable14 = variable2 /*nodearraylist6*/;
10801 variable15 = TAG_Bool(( variable14 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10802 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction105___action, LOCATE_parser, 5378); nit_exit(1);}
10803 variable16 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pablenode4*/, variable11 /*tkwredefnode7*/, variable12 /*pvisibilitynode8*/, variable13 /*tkwattrnode9*/, variable14 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10804 variable15 = variable16;
10805 variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/;
10806 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10807 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
10808 tracehead = trace.prev;
10809 return;
10810 }
10811 void parser___ReduceAction105___init(val_t self, int* init_table) {
10812 struct trace_t trace = {NULL, NULL, 5393, LOCATE_parser___ReduceAction105___init};
10813 trace.prev = tracehead; tracehead = &trace;
10814 trace.file = LOCATE_parser;
10815 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction105].i]) return;
10816 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction105].i] = 1;
10817 tracehead = trace.prev;
10818 return;
10819 }
10820 void parser___ReduceAction106___action(val_t self, val_t param0) {
10821 struct trace_t trace = {NULL, NULL, 5397, LOCATE_parser___ReduceAction106___action};
10822 val_t variable0;
10823 val_t variable1;
10824 val_t variable2;
10825 val_t variable3;
10826 val_t variable4;
10827 val_t variable5;
10828 val_t variable6;
10829 val_t variable7;
10830 val_t variable8;
10831 val_t variable9;
10832 val_t variable10;
10833 val_t variable11;
10834 val_t variable12;
10835 val_t variable13;
10836 val_t variable14;
10837 val_t variable15;
10838 val_t variable16;
10839 val_t variable17;
10840 val_t variable18;
10841 trace.prev = tracehead; tracehead = &trace;
10842 trace.file = LOCATE_parser;
10843 variable0 = param0;
10844 variable1 = NIT_NULL /*null*/;
10845 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10846 variable2 = variable3;
10847 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10848 variable3 = variable4;
10849 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10850 variable4 = variable5;
10851 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10852 variable5 = variable6;
10853 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10854 variable6 = variable7;
10855 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10856 variable7 = variable8;
10857 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10858 variable8 = variable9;
10859 variable9 = variable8 /*nodearraylist1*/;
10860 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10861 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction106___action, LOCATE_parser, 5408); nit_exit(1);}
10862 variable10 = variable7 /*nodearraylist2*/;
10863 variable11 = TAG_Bool(( variable10 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10864 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction106___action, LOCATE_parser, 5410); nit_exit(1);}
10865 variable11 = variable6 /*nodearraylist3*/;
10866 variable12 = TAG_Bool(( variable11 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
10867 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction106___action, LOCATE_parser, 5412); nit_exit(1);}
10868 variable13 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable10 /*tkwredefnode5*/, variable11 /*tkwwritablenode6*/); /*new AWriteAble*/
10869 variable12 = variable13;
10870 variable13 = variable5 /*nodearraylist4*/;
10871 variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10872 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction106___action, LOCATE_parser, 5418); nit_exit(1);}
10873 variable14 = variable4 /*nodearraylist5*/;
10874 variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10875 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction106___action, LOCATE_parser, 5420); nit_exit(1);}
10876 variable15 = variable3 /*nodearraylist6*/;
10877 variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10878 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction106___action, LOCATE_parser, 5422); nit_exit(1);}
10879 variable16 = variable2 /*nodearraylist7*/;
10880 variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10881 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction106___action, LOCATE_parser, 5424); nit_exit(1);}
10882 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pablenode4*/, variable13 /*tkwredefnode7*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10883 variable17 = variable18;
10884 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
10885 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10886 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
10887 tracehead = trace.prev;
10888 return;
10889 }
10890 void parser___ReduceAction106___init(val_t self, int* init_table) {
10891 struct trace_t trace = {NULL, NULL, 5439, LOCATE_parser___ReduceAction106___init};
10892 trace.prev = tracehead; tracehead = &trace;
10893 trace.file = LOCATE_parser;
10894 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction106].i]) return;
10895 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction106].i] = 1;
10896 tracehead = trace.prev;
10897 return;
10898 }
10899 void parser___ReduceAction107___action(val_t self, val_t param0) {
10900 struct trace_t trace = {NULL, NULL, 5443, LOCATE_parser___ReduceAction107___action};
10901 val_t variable0;
10902 val_t variable1;
10903 val_t variable2;
10904 val_t variable3;
10905 val_t variable4;
10906 val_t variable5;
10907 val_t variable6;
10908 val_t variable7;
10909 val_t variable8;
10910 val_t variable9;
10911 val_t variable10;
10912 val_t variable11;
10913 val_t variable12;
10914 val_t variable13;
10915 trace.prev = tracehead; tracehead = &trace;
10916 trace.file = LOCATE_parser;
10917 variable0 = param0;
10918 variable1 = NIT_NULL /*null*/;
10919 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10920 variable2 = variable3;
10921 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10922 variable3 = variable4;
10923 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10924 variable4 = variable5;
10925 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10926 variable5 = variable6;
10927 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10928 variable6 = variable7;
10929 variable7 = variable6 /*nodearraylist1*/;
10930 variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
10931 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction107___action, LOCATE_parser, 5452); nit_exit(1);}
10932 variable8 = variable5 /*nodearraylist2*/;
10933 variable9 = TAG_Bool(( variable8 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable8 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
10934 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction107___action, LOCATE_parser, 5454); nit_exit(1);}
10935 variable9 = variable4 /*nodearraylist3*/;
10936 variable10 = TAG_Bool(( variable9 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable9 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
10937 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction107___action, LOCATE_parser, 5456); nit_exit(1);}
10938 variable10 = variable3 /*nodearraylist4*/;
10939 variable11 = TAG_Bool(( variable10 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable10 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
10940 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction107___action, LOCATE_parser, 5458); nit_exit(1);}
10941 variable11 = variable2 /*nodearraylist5*/;
10942 variable12 = TAG_Bool(( variable11 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable11 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
10943 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction107___action, LOCATE_parser, 5460); nit_exit(1);}
10944 variable13 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable8 /*tkwredefnode5*/, variable9 /*pvisibilitynode6*/, variable10 /*tkwattrnode7*/, variable11 /*tattridnode8*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
10945 variable12 = variable13;
10946 variable1 = variable12 /*ppropdefnode1*/ /*node_list=*/;
10947 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
10948 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
10949 tracehead = trace.prev;
10950 return;
10951 }
10952 void parser___ReduceAction107___init(val_t self, int* init_table) {
10953 struct trace_t trace = {NULL, NULL, 5475, LOCATE_parser___ReduceAction107___init};
10954 trace.prev = tracehead; tracehead = &trace;
10955 trace.file = LOCATE_parser;
10956 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction107].i]) return;
10957 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction107].i] = 1;
10958 tracehead = trace.prev;
10959 return;
10960 }
10961 void parser___ReduceAction108___action(val_t self, val_t param0) {
10962 struct trace_t trace = {NULL, NULL, 5479, LOCATE_parser___ReduceAction108___action};
10963 val_t variable0;
10964 val_t variable1;
10965 val_t variable2;
10966 val_t variable3;
10967 val_t variable4;
10968 val_t variable5;
10969 val_t variable6;
10970 val_t variable7;
10971 val_t variable8;
10972 val_t variable9;
10973 val_t variable10;
10974 val_t variable11;
10975 val_t variable12;
10976 val_t variable13;
10977 val_t variable14;
10978 val_t variable15;
10979 val_t variable16;
10980 val_t variable17;
10981 val_t variable18;
10982 val_t variable19;
10983 trace.prev = tracehead; tracehead = &trace;
10984 trace.file = LOCATE_parser;
10985 variable0 = param0;
10986 variable1 = NIT_NULL /*null*/;
10987 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10988 variable2 = variable3;
10989 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10990 variable3 = variable4;
10991 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10992 variable4 = variable5;
10993 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10994 variable5 = variable6;
10995 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10996 variable6 = variable7;
10997 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
10998 variable7 = variable8;
10999 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11000 variable8 = variable9;
11001 variable9 = variable8 /*nodearraylist1*/;
11002 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11003 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction108___action, LOCATE_parser, 5490); nit_exit(1);}
11004 variable10 = variable7 /*nodearraylist2*/;
11005 variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11006 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction108___action, LOCATE_parser, 5492); nit_exit(1);}
11007 variable12 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/
11008 variable11 = variable12;
11009 variable12 = variable6 /*nodearraylist3*/;
11010 variable13 = TAG_Bool(( variable12 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11011 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction108___action, LOCATE_parser, 5498); nit_exit(1);}
11012 variable14 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode8*/); /*new AWriteAble*/
11013 variable13 = variable14;
11014 variable14 = variable5 /*nodearraylist4*/;
11015 variable15 = TAG_Bool(( variable14 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11016 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction108___action, LOCATE_parser, 5504); nit_exit(1);}
11017 variable15 = variable4 /*nodearraylist5*/;
11018 variable16 = TAG_Bool(( variable15 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11019 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction108___action, LOCATE_parser, 5506); nit_exit(1);}
11020 variable16 = variable3 /*nodearraylist6*/;
11021 variable17 = TAG_Bool(( variable16 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11022 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction108___action, LOCATE_parser, 5508); nit_exit(1);}
11023 variable17 = variable2 /*nodearraylist7*/;
11024 variable18 = TAG_Bool(( variable17 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable17 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
11025 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction108___action, LOCATE_parser, 5510); nit_exit(1);}
11026 variable19 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, variable13 /*pablenode6*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode10*/, variable15 /*tkwattrnode11*/, variable16 /*tattridnode12*/, variable17 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11027 variable18 = variable19;
11028 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
11029 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11030 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
11031 tracehead = trace.prev;
11032 return;
11033 }
11034 void parser___ReduceAction108___init(val_t self, int* init_table) {
11035 struct trace_t trace = {NULL, NULL, 5525, LOCATE_parser___ReduceAction108___init};
11036 trace.prev = tracehead; tracehead = &trace;
11037 trace.file = LOCATE_parser;
11038 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction108].i]) return;
11039 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction108].i] = 1;
11040 tracehead = trace.prev;
11041 return;
11042 }
11043 void parser___ReduceAction109___action(val_t self, val_t param0) {
11044 struct trace_t trace = {NULL, NULL, 5529, LOCATE_parser___ReduceAction109___action};
11045 val_t variable0;
11046 val_t variable1;
11047 val_t variable2;
11048 val_t variable3;
11049 val_t variable4;
11050 val_t variable5;
11051 val_t variable6;
11052 val_t variable7;
11053 val_t variable8;
11054 val_t variable9;
11055 val_t variable10;
11056 val_t variable11;
11057 val_t variable12;
11058 val_t variable13;
11059 val_t variable14;
11060 val_t variable15;
11061 val_t variable16;
11062 val_t variable17;
11063 val_t variable18;
11064 val_t variable19;
11065 val_t variable20;
11066 val_t variable21;
11067 trace.prev = tracehead; tracehead = &trace;
11068 trace.file = LOCATE_parser;
11069 variable0 = param0;
11070 variable1 = NIT_NULL /*null*/;
11071 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11072 variable2 = variable3;
11073 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11074 variable3 = variable4;
11075 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11076 variable4 = variable5;
11077 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11078 variable5 = variable6;
11079 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11080 variable6 = variable7;
11081 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11082 variable7 = variable8;
11083 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11084 variable8 = variable9;
11085 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11086 variable9 = variable10;
11087 variable10 = variable9 /*nodearraylist1*/;
11088 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11089 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5541); nit_exit(1);}
11090 variable11 = variable8 /*nodearraylist2*/;
11091 variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11092 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5543); nit_exit(1);}
11093 variable13 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/
11094 variable12 = variable13;
11095 variable13 = variable7 /*nodearraylist3*/;
11096 variable14 = TAG_Bool(( variable13 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11097 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5549); nit_exit(1);}
11098 variable14 = variable6 /*nodearraylist4*/;
11099 variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11100 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5551); nit_exit(1);}
11101 variable16 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode7*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/
11102 variable15 = variable16;
11103 variable16 = variable5 /*nodearraylist5*/;
11104 variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11105 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5557); nit_exit(1);}
11106 variable17 = variable4 /*nodearraylist6*/;
11107 variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11108 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5559); nit_exit(1);}
11109 variable18 = variable3 /*nodearraylist7*/;
11110 variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11111 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5561); nit_exit(1);}
11112 variable19 = variable2 /*nodearraylist8*/;
11113 variable20 = TAG_Bool(( variable19 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
11114 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction109___action, LOCATE_parser, 5563); nit_exit(1);}
11115 variable21 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, variable15 /*pablenode6*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, variable19 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11116 variable20 = variable21;
11117 variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/;
11118 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11119 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
11120 tracehead = trace.prev;
11121 return;
11122 }
11123 void parser___ReduceAction109___init(val_t self, int* init_table) {
11124 struct trace_t trace = {NULL, NULL, 5578, LOCATE_parser___ReduceAction109___init};
11125 trace.prev = tracehead; tracehead = &trace;
11126 trace.file = LOCATE_parser;
11127 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction109].i]) return;
11128 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction109].i] = 1;
11129 tracehead = trace.prev;
11130 return;
11131 }
11132 void parser___ReduceAction110___action(val_t self, val_t param0) {
11133 struct trace_t trace = {NULL, NULL, 5582, LOCATE_parser___ReduceAction110___action};
11134 val_t variable0;
11135 val_t variable1;
11136 val_t variable2;
11137 val_t variable3;
11138 val_t variable4;
11139 val_t variable5;
11140 val_t variable6;
11141 val_t variable7;
11142 val_t variable8;
11143 val_t variable9;
11144 val_t variable10;
11145 val_t variable11;
11146 val_t variable12;
11147 val_t variable13;
11148 val_t variable14;
11149 val_t variable15;
11150 val_t variable16;
11151 trace.prev = tracehead; tracehead = &trace;
11152 trace.file = LOCATE_parser;
11153 variable0 = param0;
11154 variable1 = NIT_NULL /*null*/;
11155 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11156 variable2 = variable3;
11157 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11158 variable3 = variable4;
11159 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11160 variable4 = variable5;
11161 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11162 variable5 = variable6;
11163 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11164 variable6 = variable7;
11165 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11166 variable7 = variable8;
11167 variable8 = variable7 /*nodearraylist1*/;
11168 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11169 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction110___action, LOCATE_parser, 5592); nit_exit(1);}
11170 variable9 = variable6 /*nodearraylist2*/;
11171 variable10 = TAG_Bool(( variable9 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11172 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction110___action, LOCATE_parser, 5594); nit_exit(1);}
11173 variable11 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable9 /*tkwreadablenode5*/); /*new AReadAble*/
11174 variable10 = variable11;
11175 variable11 = variable5 /*nodearraylist3*/;
11176 variable12 = TAG_Bool(( variable11 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11177 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction110___action, LOCATE_parser, 5600); nit_exit(1);}
11178 variable12 = variable4 /*nodearraylist4*/;
11179 variable13 = TAG_Bool(( variable12 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable12 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11180 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction110___action, LOCATE_parser, 5602); nit_exit(1);}
11181 variable13 = variable3 /*nodearraylist5*/;
11182 variable14 = TAG_Bool(( variable13 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable13 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11183 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction110___action, LOCATE_parser, 5604); nit_exit(1);}
11184 variable14 = variable2 /*nodearraylist6*/;
11185 variable15 = TAG_Bool(( variable14 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
11186 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction110___action, LOCATE_parser, 5606); nit_exit(1);}
11187 variable16 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, variable10 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode8*/, variable12 /*tkwattrnode9*/, variable13 /*tattridnode10*/, variable14 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11188 variable15 = variable16;
11189 variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/;
11190 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11191 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
11192 tracehead = trace.prev;
11193 return;
11194 }
11195 void parser___ReduceAction110___init(val_t self, int* init_table) {
11196 struct trace_t trace = {NULL, NULL, 5621, LOCATE_parser___ReduceAction110___init};
11197 trace.prev = tracehead; tracehead = &trace;
11198 trace.file = LOCATE_parser;
11199 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction110].i]) return;
11200 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction110].i] = 1;
11201 tracehead = trace.prev;
11202 return;
11203 }
11204 void parser___ReduceAction111___action(val_t self, val_t param0) {
11205 struct trace_t trace = {NULL, NULL, 5625, LOCATE_parser___ReduceAction111___action};
11206 val_t variable0;
11207 val_t variable1;
11208 val_t variable2;
11209 val_t variable3;
11210 val_t variable4;
11211 val_t variable5;
11212 val_t variable6;
11213 val_t variable7;
11214 val_t variable8;
11215 val_t variable9;
11216 val_t variable10;
11217 val_t variable11;
11218 val_t variable12;
11219 val_t variable13;
11220 val_t variable14;
11221 val_t variable15;
11222 val_t variable16;
11223 val_t variable17;
11224 val_t variable18;
11225 val_t variable19;
11226 val_t variable20;
11227 val_t variable21;
11228 trace.prev = tracehead; tracehead = &trace;
11229 trace.file = LOCATE_parser;
11230 variable0 = param0;
11231 variable1 = NIT_NULL /*null*/;
11232 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11233 variable2 = variable3;
11234 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11235 variable3 = variable4;
11236 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11237 variable4 = variable5;
11238 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11239 variable5 = variable6;
11240 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11241 variable6 = variable7;
11242 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11243 variable7 = variable8;
11244 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11245 variable8 = variable9;
11246 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11247 variable9 = variable10;
11248 variable10 = variable9 /*nodearraylist1*/;
11249 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11250 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5637); nit_exit(1);}
11251 variable11 = variable8 /*nodearraylist2*/;
11252 variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11253 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5639); nit_exit(1);}
11254 variable12 = variable7 /*nodearraylist3*/;
11255 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11256 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5641); nit_exit(1);}
11257 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
11258 variable13 = variable14;
11259 variable14 = variable6 /*nodearraylist4*/;
11260 variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11261 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5647); nit_exit(1);}
11262 variable16 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/
11263 variable15 = variable16;
11264 variable16 = variable5 /*nodearraylist5*/;
11265 variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11266 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5653); nit_exit(1);}
11267 variable17 = variable4 /*nodearraylist6*/;
11268 variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11269 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5655); nit_exit(1);}
11270 variable18 = variable3 /*nodearraylist7*/;
11271 variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11272 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5657); nit_exit(1);}
11273 variable19 = variable2 /*nodearraylist8*/;
11274 variable20 = TAG_Bool(( variable19 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
11275 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction111___action, LOCATE_parser, 5659); nit_exit(1);}
11276 variable21 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, variable15 /*pablenode6*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, variable19 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11277 variable20 = variable21;
11278 variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/;
11279 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11280 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
11281 tracehead = trace.prev;
11282 return;
11283 }
11284 void parser___ReduceAction111___init(val_t self, int* init_table) {
11285 struct trace_t trace = {NULL, NULL, 5674, LOCATE_parser___ReduceAction111___init};
11286 trace.prev = tracehead; tracehead = &trace;
11287 trace.file = LOCATE_parser;
11288 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction111].i]) return;
11289 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction111].i] = 1;
11290 tracehead = trace.prev;
11291 return;
11292 }
11293 void parser___ReduceAction112___action(val_t self, val_t param0) {
11294 struct trace_t trace = {NULL, NULL, 5678, LOCATE_parser___ReduceAction112___action};
11295 val_t variable0;
11296 val_t variable1;
11297 val_t variable2;
11298 val_t variable3;
11299 val_t variable4;
11300 val_t variable5;
11301 val_t variable6;
11302 val_t variable7;
11303 val_t variable8;
11304 val_t variable9;
11305 val_t variable10;
11306 val_t variable11;
11307 val_t variable12;
11308 val_t variable13;
11309 val_t variable14;
11310 val_t variable15;
11311 val_t variable16;
11312 val_t variable17;
11313 val_t variable18;
11314 val_t variable19;
11315 val_t variable20;
11316 val_t variable21;
11317 val_t variable22;
11318 val_t variable23;
11319 trace.prev = tracehead; tracehead = &trace;
11320 trace.file = LOCATE_parser;
11321 variable0 = param0;
11322 variable1 = NIT_NULL /*null*/;
11323 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11324 variable2 = variable3;
11325 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11326 variable3 = variable4;
11327 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11328 variable4 = variable5;
11329 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11330 variable5 = variable6;
11331 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11332 variable6 = variable7;
11333 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11334 variable7 = variable8;
11335 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11336 variable8 = variable9;
11337 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11338 variable9 = variable10;
11339 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11340 variable10 = variable11;
11341 variable11 = variable10 /*nodearraylist1*/;
11342 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11343 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5691); nit_exit(1);}
11344 variable12 = variable9 /*nodearraylist2*/;
11345 variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11346 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5693); nit_exit(1);}
11347 variable13 = variable8 /*nodearraylist3*/;
11348 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11349 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5695); nit_exit(1);}
11350 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
11351 variable14 = variable15;
11352 variable15 = variable7 /*nodearraylist4*/;
11353 variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11354 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5701); nit_exit(1);}
11355 variable16 = variable6 /*nodearraylist5*/;
11356 variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11357 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5703); nit_exit(1);}
11358 variable18 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable15 /*tkwredefnode7*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/
11359 variable17 = variable18;
11360 variable18 = variable5 /*nodearraylist6*/;
11361 variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11362 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5709); nit_exit(1);}
11363 variable19 = variable4 /*nodearraylist7*/;
11364 variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11365 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5711); nit_exit(1);}
11366 variable20 = variable3 /*nodearraylist8*/;
11367 variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11368 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5713); nit_exit(1);}
11369 variable21 = variable2 /*nodearraylist9*/;
11370 variable22 = TAG_Bool(( variable21 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
11371 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction112___action, LOCATE_parser, 5715); nit_exit(1);}
11372 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, variable17 /*pablenode6*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, variable21 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11373 variable22 = variable23;
11374 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
11375 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11376 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
11377 tracehead = trace.prev;
11378 return;
11379 }
11380 void parser___ReduceAction112___init(val_t self, int* init_table) {
11381 struct trace_t trace = {NULL, NULL, 5730, LOCATE_parser___ReduceAction112___init};
11382 trace.prev = tracehead; tracehead = &trace;
11383 trace.file = LOCATE_parser;
11384 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction112].i]) return;
11385 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction112].i] = 1;
11386 tracehead = trace.prev;
11387 return;
11388 }
11389 void parser___ReduceAction113___action(val_t self, val_t param0) {
11390 struct trace_t trace = {NULL, NULL, 5734, LOCATE_parser___ReduceAction113___action};
11391 val_t variable0;
11392 val_t variable1;
11393 val_t variable2;
11394 val_t variable3;
11395 val_t variable4;
11396 val_t variable5;
11397 val_t variable6;
11398 val_t variable7;
11399 val_t variable8;
11400 val_t variable9;
11401 val_t variable10;
11402 val_t variable11;
11403 val_t variable12;
11404 val_t variable13;
11405 val_t variable14;
11406 val_t variable15;
11407 val_t variable16;
11408 val_t variable17;
11409 val_t variable18;
11410 trace.prev = tracehead; tracehead = &trace;
11411 trace.file = LOCATE_parser;
11412 variable0 = param0;
11413 variable1 = NIT_NULL /*null*/;
11414 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11415 variable2 = variable3;
11416 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11417 variable3 = variable4;
11418 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11419 variable4 = variable5;
11420 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11421 variable5 = variable6;
11422 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11423 variable6 = variable7;
11424 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11425 variable7 = variable8;
11426 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11427 variable8 = variable9;
11428 variable9 = variable8 /*nodearraylist1*/;
11429 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11430 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction113___action, LOCATE_parser, 5745); nit_exit(1);}
11431 variable10 = variable7 /*nodearraylist2*/;
11432 variable11 = TAG_Bool(( variable10 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11433 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction113___action, LOCATE_parser, 5747); nit_exit(1);}
11434 variable11 = variable6 /*nodearraylist3*/;
11435 variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11436 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction113___action, LOCATE_parser, 5749); nit_exit(1);}
11437 variable13 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable10 /*tkwredefnode4*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/
11438 variable12 = variable13;
11439 variable13 = variable5 /*nodearraylist4*/;
11440 variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11441 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction113___action, LOCATE_parser, 5755); nit_exit(1);}
11442 variable14 = variable4 /*nodearraylist5*/;
11443 variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11444 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction113___action, LOCATE_parser, 5757); nit_exit(1);}
11445 variable15 = variable3 /*nodearraylist6*/;
11446 variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11447 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction113___action, LOCATE_parser, 5759); nit_exit(1);}
11448 variable16 = variable2 /*nodearraylist7*/;
11449 variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
11450 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction113___action, LOCATE_parser, 5761); nit_exit(1);}
11451 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable12 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11452 variable17 = variable18;
11453 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
11454 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11455 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
11456 tracehead = trace.prev;
11457 return;
11458 }
11459 void parser___ReduceAction113___init(val_t self, int* init_table) {
11460 struct trace_t trace = {NULL, NULL, 5776, LOCATE_parser___ReduceAction113___init};
11461 trace.prev = tracehead; tracehead = &trace;
11462 trace.file = LOCATE_parser;
11463 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction113].i]) return;
11464 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction113].i] = 1;
11465 tracehead = trace.prev;
11466 return;
11467 }
11468 void parser___ReduceAction114___action(val_t self, val_t param0) {
11469 struct trace_t trace = {NULL, NULL, 5780, LOCATE_parser___ReduceAction114___action};
11470 val_t variable0;
11471 val_t variable1;
11472 val_t variable2;
11473 val_t variable3;
11474 val_t variable4;
11475 val_t variable5;
11476 val_t variable6;
11477 val_t variable7;
11478 val_t variable8;
11479 val_t variable9;
11480 val_t variable10;
11481 val_t variable11;
11482 val_t variable12;
11483 val_t variable13;
11484 val_t variable14;
11485 val_t variable15;
11486 val_t variable16;
11487 trace.prev = tracehead; tracehead = &trace;
11488 trace.file = LOCATE_parser;
11489 variable0 = param0;
11490 variable1 = NIT_NULL /*null*/;
11491 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11492 variable2 = variable3;
11493 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11494 variable3 = variable4;
11495 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11496 variable4 = variable5;
11497 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11498 variable5 = variable6;
11499 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11500 variable6 = variable7;
11501 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11502 variable7 = variable8;
11503 variable8 = variable7 /*nodearraylist1*/;
11504 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11505 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction114___action, LOCATE_parser, 5790); nit_exit(1);}
11506 variable9 = variable6 /*nodearraylist2*/;
11507 variable10 = TAG_Bool(( variable9 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable9 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11508 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction114___action, LOCATE_parser, 5792); nit_exit(1);}
11509 variable11 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable9 /*tkwwritablenode6*/); /*new AWriteAble*/
11510 variable10 = variable11;
11511 variable11 = variable5 /*nodearraylist3*/;
11512 variable12 = TAG_Bool(( variable11 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11513 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction114___action, LOCATE_parser, 5798); nit_exit(1);}
11514 variable12 = variable4 /*nodearraylist4*/;
11515 variable13 = TAG_Bool(( variable12 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable12 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11516 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction114___action, LOCATE_parser, 5800); nit_exit(1);}
11517 variable13 = variable3 /*nodearraylist5*/;
11518 variable14 = TAG_Bool(( variable13 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable13 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11519 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction114___action, LOCATE_parser, 5802); nit_exit(1);}
11520 variable14 = variable2 /*nodearraylist6*/;
11521 variable15 = TAG_Bool(( variable14 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
11522 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction114___action, LOCATE_parser, 5804); nit_exit(1);}
11523 variable16 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pablenode4*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode8*/, variable12 /*tkwattrnode9*/, variable13 /*tattridnode10*/, variable14 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11524 variable15 = variable16;
11525 variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/;
11526 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11527 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
11528 tracehead = trace.prev;
11529 return;
11530 }
11531 void parser___ReduceAction114___init(val_t self, int* init_table) {
11532 struct trace_t trace = {NULL, NULL, 5819, LOCATE_parser___ReduceAction114___init};
11533 trace.prev = tracehead; tracehead = &trace;
11534 trace.file = LOCATE_parser;
11535 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction114].i]) return;
11536 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction114].i] = 1;
11537 tracehead = trace.prev;
11538 return;
11539 }
11540 void parser___ReduceAction115___action(val_t self, val_t param0) {
11541 struct trace_t trace = {NULL, NULL, 5823, LOCATE_parser___ReduceAction115___action};
11542 val_t variable0;
11543 val_t variable1;
11544 val_t variable2;
11545 val_t variable3;
11546 val_t variable4;
11547 val_t variable5;
11548 val_t variable6;
11549 val_t variable7;
11550 val_t variable8;
11551 val_t variable9;
11552 val_t variable10;
11553 val_t variable11;
11554 val_t variable12;
11555 val_t variable13;
11556 val_t variable14;
11557 val_t variable15;
11558 val_t variable16;
11559 val_t variable17;
11560 val_t variable18;
11561 trace.prev = tracehead; tracehead = &trace;
11562 trace.file = LOCATE_parser;
11563 variable0 = param0;
11564 variable1 = NIT_NULL /*null*/;
11565 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11566 variable2 = variable3;
11567 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11568 variable3 = variable4;
11569 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11570 variable4 = variable5;
11571 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11572 variable5 = variable6;
11573 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11574 variable6 = variable7;
11575 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11576 variable7 = variable8;
11577 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11578 variable8 = variable9;
11579 variable9 = variable8 /*nodearraylist1*/;
11580 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11581 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction115___action, LOCATE_parser, 5834); nit_exit(1);}
11582 variable10 = variable7 /*nodearraylist2*/;
11583 variable11 = TAG_Bool(( variable10 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11584 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction115___action, LOCATE_parser, 5836); nit_exit(1);}
11585 variable11 = variable6 /*nodearraylist3*/;
11586 variable12 = TAG_Bool(( variable11 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11587 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction115___action, LOCATE_parser, 5838); nit_exit(1);}
11588 variable13 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable10 /*tkwredefnode5*/, variable11 /*tkwwritablenode6*/); /*new AWriteAble*/
11589 variable12 = variable13;
11590 variable13 = variable5 /*nodearraylist4*/;
11591 variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11592 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction115___action, LOCATE_parser, 5844); nit_exit(1);}
11593 variable14 = variable4 /*nodearraylist5*/;
11594 variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11595 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction115___action, LOCATE_parser, 5846); nit_exit(1);}
11596 variable15 = variable3 /*nodearraylist6*/;
11597 variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11598 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction115___action, LOCATE_parser, 5848); nit_exit(1);}
11599 variable16 = variable2 /*nodearraylist7*/;
11600 variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
11601 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction115___action, LOCATE_parser, 5850); nit_exit(1);}
11602 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pablenode4*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11603 variable17 = variable18;
11604 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
11605 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11606 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
11607 tracehead = trace.prev;
11608 return;
11609 }
11610 void parser___ReduceAction115___init(val_t self, int* init_table) {
11611 struct trace_t trace = {NULL, NULL, 5865, LOCATE_parser___ReduceAction115___init};
11612 trace.prev = tracehead; tracehead = &trace;
11613 trace.file = LOCATE_parser;
11614 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction115].i]) return;
11615 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction115].i] = 1;
11616 tracehead = trace.prev;
11617 return;
11618 }
11619 void parser___ReduceAction116___action(val_t self, val_t param0) {
11620 struct trace_t trace = {NULL, NULL, 5869, LOCATE_parser___ReduceAction116___action};
11621 val_t variable0;
11622 val_t variable1;
11623 val_t variable2;
11624 val_t variable3;
11625 val_t variable4;
11626 val_t variable5;
11627 val_t variable6;
11628 val_t variable7;
11629 val_t variable8;
11630 val_t variable9;
11631 val_t variable10;
11632 val_t variable11;
11633 val_t variable12;
11634 val_t variable13;
11635 trace.prev = tracehead; tracehead = &trace;
11636 trace.file = LOCATE_parser;
11637 variable0 = param0;
11638 variable1 = NIT_NULL /*null*/;
11639 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11640 variable2 = variable3;
11641 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11642 variable3 = variable4;
11643 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11644 variable4 = variable5;
11645 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11646 variable5 = variable6;
11647 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11648 variable6 = variable7;
11649 variable7 = variable6 /*nodearraylist1*/;
11650 variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11651 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction116___action, LOCATE_parser, 5878); nit_exit(1);}
11652 variable8 = variable5 /*nodearraylist2*/;
11653 variable9 = TAG_Bool(( variable8 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11654 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction116___action, LOCATE_parser, 5880); nit_exit(1);}
11655 variable9 = variable4 /*nodearraylist3*/;
11656 variable10 = TAG_Bool(( variable9 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable9 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11657 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction116___action, LOCATE_parser, 5882); nit_exit(1);}
11658 variable10 = variable3 /*nodearraylist4*/;
11659 variable11 = TAG_Bool(( variable10 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable10 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11660 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction116___action, LOCATE_parser, 5884); nit_exit(1);}
11661 variable11 = variable2 /*nodearraylist5*/;
11662 variable12 = TAG_Bool(( variable11 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/;
11663 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction116___action, LOCATE_parser, 5886); nit_exit(1);}
11664 variable13 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable8 /*pvisibilitynode6*/, variable9 /*tkwattrnode7*/, variable10 /*tattridnode8*/, variable11 /*ptypenode9*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11665 variable12 = variable13;
11666 variable1 = variable12 /*ppropdefnode1*/ /*node_list=*/;
11667 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11668 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
11669 tracehead = trace.prev;
11670 return;
11671 }
11672 void parser___ReduceAction116___init(val_t self, int* init_table) {
11673 struct trace_t trace = {NULL, NULL, 5901, LOCATE_parser___ReduceAction116___init};
11674 trace.prev = tracehead; tracehead = &trace;
11675 trace.file = LOCATE_parser;
11676 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction116].i]) return;
11677 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction116].i] = 1;
11678 tracehead = trace.prev;
11679 return;
11680 }
11681 void parser___ReduceAction117___action(val_t self, val_t param0) {
11682 struct trace_t trace = {NULL, NULL, 5905, LOCATE_parser___ReduceAction117___action};
11683 val_t variable0;
11684 val_t variable1;
11685 val_t variable2;
11686 val_t variable3;
11687 val_t variable4;
11688 val_t variable5;
11689 val_t variable6;
11690 val_t variable7;
11691 val_t variable8;
11692 val_t variable9;
11693 val_t variable10;
11694 val_t variable11;
11695 val_t variable12;
11696 val_t variable13;
11697 val_t variable14;
11698 val_t variable15;
11699 val_t variable16;
11700 val_t variable17;
11701 val_t variable18;
11702 val_t variable19;
11703 val_t variable20;
11704 val_t variable21;
11705 trace.prev = tracehead; tracehead = &trace;
11706 trace.file = LOCATE_parser;
11707 variable0 = param0;
11708 variable1 = NIT_NULL /*null*/;
11709 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11710 variable2 = variable3;
11711 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11712 variable3 = variable4;
11713 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11714 variable4 = variable5;
11715 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11716 variable5 = variable6;
11717 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11718 variable6 = variable7;
11719 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11720 variable7 = variable8;
11721 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11722 variable8 = variable9;
11723 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11724 variable9 = variable10;
11725 variable10 = variable9 /*nodearraylist1*/;
11726 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11727 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5917); nit_exit(1);}
11728 variable11 = variable8 /*nodearraylist2*/;
11729 variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11730 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5919); nit_exit(1);}
11731 variable13 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/
11732 variable12 = variable13;
11733 variable13 = variable7 /*nodearraylist3*/;
11734 variable14 = TAG_Bool(( variable13 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11735 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5925); nit_exit(1);}
11736 variable15 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable13 /*tkwwritablenode8*/); /*new AWriteAble*/
11737 variable14 = variable15;
11738 variable15 = variable6 /*nodearraylist4*/;
11739 variable16 = TAG_Bool(( variable15 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11740 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5931); nit_exit(1);}
11741 variable16 = variable5 /*nodearraylist5*/;
11742 variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11743 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5933); nit_exit(1);}
11744 variable17 = variable4 /*nodearraylist6*/;
11745 variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11746 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5935); nit_exit(1);}
11747 variable18 = variable3 /*nodearraylist7*/;
11748 variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11749 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5937); nit_exit(1);}
11750 variable19 = variable2 /*nodearraylist8*/;
11751 variable20 = TAG_Bool(( variable19 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
11752 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction117___action, LOCATE_parser, 5939); nit_exit(1);}
11753 variable21 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, variable14 /*pablenode6*/, variable15 /*tkwredefnode9*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, variable19 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11754 variable20 = variable21;
11755 variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/;
11756 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11757 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
11758 tracehead = trace.prev;
11759 return;
11760 }
11761 void parser___ReduceAction117___init(val_t self, int* init_table) {
11762 struct trace_t trace = {NULL, NULL, 5954, LOCATE_parser___ReduceAction117___init};
11763 trace.prev = tracehead; tracehead = &trace;
11764 trace.file = LOCATE_parser;
11765 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction117].i]) return;
11766 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction117].i] = 1;
11767 tracehead = trace.prev;
11768 return;
11769 }
11770 void parser___ReduceAction118___action(val_t self, val_t param0) {
11771 struct trace_t trace = {NULL, NULL, 5958, LOCATE_parser___ReduceAction118___action};
11772 val_t variable0;
11773 val_t variable1;
11774 val_t variable2;
11775 val_t variable3;
11776 val_t variable4;
11777 val_t variable5;
11778 val_t variable6;
11779 val_t variable7;
11780 val_t variable8;
11781 val_t variable9;
11782 val_t variable10;
11783 val_t variable11;
11784 val_t variable12;
11785 val_t variable13;
11786 val_t variable14;
11787 val_t variable15;
11788 val_t variable16;
11789 val_t variable17;
11790 val_t variable18;
11791 val_t variable19;
11792 val_t variable20;
11793 val_t variable21;
11794 val_t variable22;
11795 val_t variable23;
11796 trace.prev = tracehead; tracehead = &trace;
11797 trace.file = LOCATE_parser;
11798 variable0 = param0;
11799 variable1 = NIT_NULL /*null*/;
11800 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11801 variable2 = variable3;
11802 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11803 variable3 = variable4;
11804 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11805 variable4 = variable5;
11806 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11807 variable5 = variable6;
11808 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11809 variable6 = variable7;
11810 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11811 variable7 = variable8;
11812 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11813 variable8 = variable9;
11814 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11815 variable9 = variable10;
11816 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11817 variable10 = variable11;
11818 variable11 = variable10 /*nodearraylist1*/;
11819 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11820 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5971); nit_exit(1);}
11821 variable12 = variable9 /*nodearraylist2*/;
11822 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11823 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5973); nit_exit(1);}
11824 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
11825 variable13 = variable14;
11826 variable14 = variable8 /*nodearraylist3*/;
11827 variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11828 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5979); nit_exit(1);}
11829 variable15 = variable7 /*nodearraylist4*/;
11830 variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
11831 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5981); nit_exit(1);}
11832 variable17 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable14 /*tkwredefnode7*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/
11833 variable16 = variable17;
11834 variable17 = variable6 /*nodearraylist5*/;
11835 variable18 = TAG_Bool(( variable17 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11836 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5987); nit_exit(1);}
11837 variable18 = variable5 /*nodearraylist6*/;
11838 variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11839 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5989); nit_exit(1);}
11840 variable19 = variable4 /*nodearraylist7*/;
11841 variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11842 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5991); nit_exit(1);}
11843 variable20 = variable3 /*nodearraylist8*/;
11844 variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11845 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5993); nit_exit(1);}
11846 variable21 = variable2 /*nodearraylist9*/;
11847 variable22 = TAG_Bool(( variable21 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
11848 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction118___action, LOCATE_parser, 5995); nit_exit(1);}
11849 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, variable16 /*pablenode6*/, variable17 /*tkwredefnode9*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, variable21 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11850 variable22 = variable23;
11851 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
11852 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11853 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
11854 tracehead = trace.prev;
11855 return;
11856 }
11857 void parser___ReduceAction118___init(val_t self, int* init_table) {
11858 struct trace_t trace = {NULL, NULL, 6010, LOCATE_parser___ReduceAction118___init};
11859 trace.prev = tracehead; tracehead = &trace;
11860 trace.file = LOCATE_parser;
11861 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction118].i]) return;
11862 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction118].i] = 1;
11863 tracehead = trace.prev;
11864 return;
11865 }
11866 void parser___ReduceAction119___action(val_t self, val_t param0) {
11867 struct trace_t trace = {NULL, NULL, 6014, LOCATE_parser___ReduceAction119___action};
11868 val_t variable0;
11869 val_t variable1;
11870 val_t variable2;
11871 val_t variable3;
11872 val_t variable4;
11873 val_t variable5;
11874 val_t variable6;
11875 val_t variable7;
11876 val_t variable8;
11877 val_t variable9;
11878 val_t variable10;
11879 val_t variable11;
11880 val_t variable12;
11881 val_t variable13;
11882 val_t variable14;
11883 val_t variable15;
11884 val_t variable16;
11885 val_t variable17;
11886 val_t variable18;
11887 trace.prev = tracehead; tracehead = &trace;
11888 trace.file = LOCATE_parser;
11889 variable0 = param0;
11890 variable1 = NIT_NULL /*null*/;
11891 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11892 variable2 = variable3;
11893 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11894 variable3 = variable4;
11895 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11896 variable4 = variable5;
11897 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11898 variable5 = variable6;
11899 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11900 variable6 = variable7;
11901 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11902 variable7 = variable8;
11903 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11904 variable8 = variable9;
11905 variable9 = variable8 /*nodearraylist1*/;
11906 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11907 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction119___action, LOCATE_parser, 6025); nit_exit(1);}
11908 variable10 = variable7 /*nodearraylist2*/;
11909 variable11 = TAG_Bool(( variable10 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable10 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
11910 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction119___action, LOCATE_parser, 6027); nit_exit(1);}
11911 variable12 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable10 /*tkwreadablenode5*/); /*new AReadAble*/
11912 variable11 = variable12;
11913 variable12 = variable6 /*nodearraylist3*/;
11914 variable13 = TAG_Bool(( variable12 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11915 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction119___action, LOCATE_parser, 6033); nit_exit(1);}
11916 variable13 = variable5 /*nodearraylist4*/;
11917 variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
11918 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction119___action, LOCATE_parser, 6035); nit_exit(1);}
11919 variable14 = variable4 /*nodearraylist5*/;
11920 variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
11921 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction119___action, LOCATE_parser, 6037); nit_exit(1);}
11922 variable15 = variable3 /*nodearraylist6*/;
11923 variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
11924 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction119___action, LOCATE_parser, 6039); nit_exit(1);}
11925 variable16 = variable2 /*nodearraylist7*/;
11926 variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
11927 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction119___action, LOCATE_parser, 6041); nit_exit(1);}
11928 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, variable11 /*pablenode3*/, NIT_NULL /*null*/, variable12 /*tkwredefnode7*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
11929 variable17 = variable18;
11930 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
11931 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
11932 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
11933 tracehead = trace.prev;
11934 return;
11935 }
11936 void parser___ReduceAction119___init(val_t self, int* init_table) {
11937 struct trace_t trace = {NULL, NULL, 6056, LOCATE_parser___ReduceAction119___init};
11938 trace.prev = tracehead; tracehead = &trace;
11939 trace.file = LOCATE_parser;
11940 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction119].i]) return;
11941 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction119].i] = 1;
11942 tracehead = trace.prev;
11943 return;
11944 }
11945 void parser___ReduceAction120___action(val_t self, val_t param0) {
11946 struct trace_t trace = {NULL, NULL, 6060, LOCATE_parser___ReduceAction120___action};
11947 val_t variable0;
11948 val_t variable1;
11949 val_t variable2;
11950 val_t variable3;
11951 val_t variable4;
11952 val_t variable5;
11953 val_t variable6;
11954 val_t variable7;
11955 val_t variable8;
11956 val_t variable9;
11957 val_t variable10;
11958 val_t variable11;
11959 val_t variable12;
11960 val_t variable13;
11961 val_t variable14;
11962 val_t variable15;
11963 val_t variable16;
11964 val_t variable17;
11965 val_t variable18;
11966 val_t variable19;
11967 val_t variable20;
11968 val_t variable21;
11969 val_t variable22;
11970 val_t variable23;
11971 trace.prev = tracehead; tracehead = &trace;
11972 trace.file = LOCATE_parser;
11973 variable0 = param0;
11974 variable1 = NIT_NULL /*null*/;
11975 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11976 variable2 = variable3;
11977 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11978 variable3 = variable4;
11979 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11980 variable4 = variable5;
11981 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11982 variable5 = variable6;
11983 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11984 variable6 = variable7;
11985 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11986 variable7 = variable8;
11987 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11988 variable8 = variable9;
11989 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11990 variable9 = variable10;
11991 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
11992 variable10 = variable11;
11993 variable11 = variable10 /*nodearraylist1*/;
11994 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
11995 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6073); nit_exit(1);}
11996 variable12 = variable9 /*nodearraylist2*/;
11997 variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
11998 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6075); nit_exit(1);}
11999 variable13 = variable8 /*nodearraylist3*/;
12000 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12001 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6077); nit_exit(1);}
12002 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
12003 variable14 = variable15;
12004 variable15 = variable7 /*nodearraylist4*/;
12005 variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12006 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6083); nit_exit(1);}
12007 variable17 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/
12008 variable16 = variable17;
12009 variable17 = variable6 /*nodearraylist5*/;
12010 variable18 = TAG_Bool(( variable17 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12011 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6089); nit_exit(1);}
12012 variable18 = variable5 /*nodearraylist6*/;
12013 variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12014 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6091); nit_exit(1);}
12015 variable19 = variable4 /*nodearraylist7*/;
12016 variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12017 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6093); nit_exit(1);}
12018 variable20 = variable3 /*nodearraylist8*/;
12019 variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12020 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6095); nit_exit(1);}
12021 variable21 = variable2 /*nodearraylist9*/;
12022 variable22 = TAG_Bool(( variable21 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
12023 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction120___action, LOCATE_parser, 6097); nit_exit(1);}
12024 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, variable16 /*pablenode6*/, variable17 /*tkwredefnode9*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, variable21 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
12025 variable22 = variable23;
12026 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
12027 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12028 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
12029 tracehead = trace.prev;
12030 return;
12031 }
12032 void parser___ReduceAction120___init(val_t self, int* init_table) {
12033 struct trace_t trace = {NULL, NULL, 6112, LOCATE_parser___ReduceAction120___init};
12034 trace.prev = tracehead; tracehead = &trace;
12035 trace.file = LOCATE_parser;
12036 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction120].i]) return;
12037 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction120].i] = 1;
12038 tracehead = trace.prev;
12039 return;
12040 }
12041 void parser___ReduceAction121___action(val_t self, val_t param0) {
12042 struct trace_t trace = {NULL, NULL, 6116, LOCATE_parser___ReduceAction121___action};
12043 val_t variable0;
12044 val_t variable1;
12045 val_t variable2;
12046 val_t variable3;
12047 val_t variable4;
12048 val_t variable5;
12049 val_t variable6;
12050 val_t variable7;
12051 val_t variable8;
12052 val_t variable9;
12053 val_t variable10;
12054 val_t variable11;
12055 val_t variable12;
12056 val_t variable13;
12057 val_t variable14;
12058 val_t variable15;
12059 val_t variable16;
12060 val_t variable17;
12061 val_t variable18;
12062 val_t variable19;
12063 val_t variable20;
12064 val_t variable21;
12065 val_t variable22;
12066 val_t variable23;
12067 val_t variable24;
12068 val_t variable25;
12069 trace.prev = tracehead; tracehead = &trace;
12070 trace.file = LOCATE_parser;
12071 variable0 = param0;
12072 variable1 = NIT_NULL /*null*/;
12073 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12074 variable2 = variable3;
12075 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12076 variable3 = variable4;
12077 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12078 variable4 = variable5;
12079 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12080 variable5 = variable6;
12081 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12082 variable6 = variable7;
12083 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12084 variable7 = variable8;
12085 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12086 variable8 = variable9;
12087 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12088 variable9 = variable10;
12089 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12090 variable10 = variable11;
12091 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12092 variable11 = variable12;
12093 variable12 = variable11 /*nodearraylist1*/;
12094 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12095 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6130); nit_exit(1);}
12096 variable13 = variable10 /*nodearraylist2*/;
12097 variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12098 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6132); nit_exit(1);}
12099 variable14 = variable9 /*nodearraylist3*/;
12100 variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12101 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6134); nit_exit(1);}
12102 variable16 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/
12103 variable15 = variable16;
12104 variable16 = variable8 /*nodearraylist4*/;
12105 variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12106 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6140); nit_exit(1);}
12107 variable17 = variable7 /*nodearraylist5*/;
12108 variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12109 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6142); nit_exit(1);}
12110 variable19 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable16 /*tkwredefnode7*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/
12111 variable18 = variable19;
12112 variable19 = variable6 /*nodearraylist6*/;
12113 variable20 = TAG_Bool(( variable19 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12114 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6148); nit_exit(1);}
12115 variable20 = variable5 /*nodearraylist7*/;
12116 variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12117 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6150); nit_exit(1);}
12118 variable21 = variable4 /*nodearraylist8*/;
12119 variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12120 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6152); nit_exit(1);}
12121 variable22 = variable3 /*nodearraylist9*/;
12122 variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12123 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6154); nit_exit(1);}
12124 variable23 = variable2 /*nodearraylist10*/;
12125 variable24 = TAG_Bool(( variable23 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable23 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
12126 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction121___action, LOCATE_parser, 6156); nit_exit(1);}
12127 variable25 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, variable18 /*pablenode6*/, variable19 /*tkwredefnode9*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, variable23 /*ptypenode13*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
12128 variable24 = variable25;
12129 variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/;
12130 variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12131 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/;
12132 tracehead = trace.prev;
12133 return;
12134 }
12135 void parser___ReduceAction121___init(val_t self, int* init_table) {
12136 struct trace_t trace = {NULL, NULL, 6171, LOCATE_parser___ReduceAction121___init};
12137 trace.prev = tracehead; tracehead = &trace;
12138 trace.file = LOCATE_parser;
12139 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction121].i]) return;
12140 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction121].i] = 1;
12141 tracehead = trace.prev;
12142 return;
12143 }
12144 void parser___ReduceAction122___action(val_t self, val_t param0) {
12145 struct trace_t trace = {NULL, NULL, 6175, LOCATE_parser___ReduceAction122___action};
12146 val_t variable0;
12147 val_t variable1;
12148 val_t variable2;
12149 val_t variable3;
12150 val_t variable4;
12151 val_t variable5;
12152 val_t variable6;
12153 val_t variable7;
12154 val_t variable8;
12155 val_t variable9;
12156 val_t variable10;
12157 val_t variable11;
12158 val_t variable12;
12159 val_t variable13;
12160 val_t variable14;
12161 val_t variable15;
12162 val_t variable16;
12163 val_t variable17;
12164 val_t variable18;
12165 val_t variable19;
12166 val_t variable20;
12167 trace.prev = tracehead; tracehead = &trace;
12168 trace.file = LOCATE_parser;
12169 variable0 = param0;
12170 variable1 = NIT_NULL /*null*/;
12171 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12172 variable2 = variable3;
12173 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12174 variable3 = variable4;
12175 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12176 variable4 = variable5;
12177 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12178 variable5 = variable6;
12179 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12180 variable6 = variable7;
12181 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12182 variable7 = variable8;
12183 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12184 variable8 = variable9;
12185 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12186 variable9 = variable10;
12187 variable10 = variable9 /*nodearraylist1*/;
12188 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12189 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6187); nit_exit(1);}
12190 variable11 = variable8 /*nodearraylist2*/;
12191 variable12 = TAG_Bool(( variable11 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12192 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6189); nit_exit(1);}
12193 variable12 = variable7 /*nodearraylist3*/;
12194 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12195 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6191); nit_exit(1);}
12196 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable11 /*tkwredefnode4*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
12197 variable13 = variable14;
12198 variable14 = variable6 /*nodearraylist4*/;
12199 variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12200 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6197); nit_exit(1);}
12201 variable15 = variable5 /*nodearraylist5*/;
12202 variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12203 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6199); nit_exit(1);}
12204 variable16 = variable4 /*nodearraylist6*/;
12205 variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12206 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6201); nit_exit(1);}
12207 variable17 = variable3 /*nodearraylist7*/;
12208 variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12209 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6203); nit_exit(1);}
12210 variable18 = variable2 /*nodearraylist8*/;
12211 variable19 = TAG_Bool(( variable18 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable18 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
12212 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction122___action, LOCATE_parser, 6205); nit_exit(1);}
12213 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable13 /*pablenode3*/, NIT_NULL /*null*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, variable18 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
12214 variable19 = variable20;
12215 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
12216 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12217 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
12218 tracehead = trace.prev;
12219 return;
12220 }
12221 void parser___ReduceAction122___init(val_t self, int* init_table) {
12222 struct trace_t trace = {NULL, NULL, 6220, LOCATE_parser___ReduceAction122___init};
12223 trace.prev = tracehead; tracehead = &trace;
12224 trace.file = LOCATE_parser;
12225 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction122].i]) return;
12226 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction122].i] = 1;
12227 tracehead = trace.prev;
12228 return;
12229 }
12230 void parser___ReduceAction123___action(val_t self, val_t param0) {
12231 struct trace_t trace = {NULL, NULL, 6224, LOCATE_parser___ReduceAction123___action};
12232 val_t variable0;
12233 val_t variable1;
12234 val_t variable2;
12235 val_t variable3;
12236 val_t variable4;
12237 val_t variable5;
12238 val_t variable6;
12239 val_t variable7;
12240 val_t variable8;
12241 val_t variable9;
12242 val_t variable10;
12243 val_t variable11;
12244 val_t variable12;
12245 val_t variable13;
12246 val_t variable14;
12247 val_t variable15;
12248 val_t variable16;
12249 val_t variable17;
12250 val_t variable18;
12251 trace.prev = tracehead; tracehead = &trace;
12252 trace.file = LOCATE_parser;
12253 variable0 = param0;
12254 variable1 = NIT_NULL /*null*/;
12255 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12256 variable2 = variable3;
12257 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12258 variable3 = variable4;
12259 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12260 variable4 = variable5;
12261 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12262 variable5 = variable6;
12263 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12264 variable6 = variable7;
12265 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12266 variable7 = variable8;
12267 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12268 variable8 = variable9;
12269 variable9 = variable8 /*nodearraylist1*/;
12270 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12271 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction123___action, LOCATE_parser, 6235); nit_exit(1);}
12272 variable10 = variable7 /*nodearraylist2*/;
12273 variable11 = TAG_Bool(( variable10 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable10 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12274 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction123___action, LOCATE_parser, 6237); nit_exit(1);}
12275 variable12 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable10 /*tkwwritablenode6*/); /*new AWriteAble*/
12276 variable11 = variable12;
12277 variable12 = variable6 /*nodearraylist3*/;
12278 variable13 = TAG_Bool(( variable12 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12279 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction123___action, LOCATE_parser, 6243); nit_exit(1);}
12280 variable13 = variable5 /*nodearraylist4*/;
12281 variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12282 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction123___action, LOCATE_parser, 6245); nit_exit(1);}
12283 variable14 = variable4 /*nodearraylist5*/;
12284 variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12285 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction123___action, LOCATE_parser, 6247); nit_exit(1);}
12286 variable15 = variable3 /*nodearraylist6*/;
12287 variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12288 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction123___action, LOCATE_parser, 6249); nit_exit(1);}
12289 variable16 = variable2 /*nodearraylist7*/;
12290 variable17 = TAG_Bool(( variable16 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
12291 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction123___action, LOCATE_parser, 6251); nit_exit(1);}
12292 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pablenode4*/, variable12 /*tkwredefnode7*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, variable16 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
12293 variable17 = variable18;
12294 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
12295 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12296 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
12297 tracehead = trace.prev;
12298 return;
12299 }
12300 void parser___ReduceAction123___init(val_t self, int* init_table) {
12301 struct trace_t trace = {NULL, NULL, 6266, LOCATE_parser___ReduceAction123___init};
12302 trace.prev = tracehead; tracehead = &trace;
12303 trace.file = LOCATE_parser;
12304 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction123].i]) return;
12305 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction123].i] = 1;
12306 tracehead = trace.prev;
12307 return;
12308 }
12309 void parser___ReduceAction124___action(val_t self, val_t param0) {
12310 struct trace_t trace = {NULL, NULL, 6270, LOCATE_parser___ReduceAction124___action};
12311 val_t variable0;
12312 val_t variable1;
12313 val_t variable2;
12314 val_t variable3;
12315 val_t variable4;
12316 val_t variable5;
12317 val_t variable6;
12318 val_t variable7;
12319 val_t variable8;
12320 val_t variable9;
12321 val_t variable10;
12322 val_t variable11;
12323 val_t variable12;
12324 val_t variable13;
12325 val_t variable14;
12326 val_t variable15;
12327 val_t variable16;
12328 val_t variable17;
12329 val_t variable18;
12330 val_t variable19;
12331 val_t variable20;
12332 trace.prev = tracehead; tracehead = &trace;
12333 trace.file = LOCATE_parser;
12334 variable0 = param0;
12335 variable1 = NIT_NULL /*null*/;
12336 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12337 variable2 = variable3;
12338 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12339 variable3 = variable4;
12340 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12341 variable4 = variable5;
12342 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12343 variable5 = variable6;
12344 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12345 variable6 = variable7;
12346 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12347 variable7 = variable8;
12348 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12349 variable8 = variable9;
12350 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12351 variable9 = variable10;
12352 variable10 = variable9 /*nodearraylist1*/;
12353 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12354 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6282); nit_exit(1);}
12355 variable11 = variable8 /*nodearraylist2*/;
12356 variable12 = TAG_Bool(( variable11 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12357 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6284); nit_exit(1);}
12358 variable12 = variable7 /*nodearraylist3*/;
12359 variable13 = TAG_Bool(( variable12 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12360 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6286); nit_exit(1);}
12361 variable14 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable11 /*tkwredefnode5*/, variable12 /*tkwwritablenode6*/); /*new AWriteAble*/
12362 variable13 = variable14;
12363 variable14 = variable6 /*nodearraylist4*/;
12364 variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12365 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6292); nit_exit(1);}
12366 variable15 = variable5 /*nodearraylist5*/;
12367 variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12368 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6294); nit_exit(1);}
12369 variable16 = variable4 /*nodearraylist6*/;
12370 variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12371 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6296); nit_exit(1);}
12372 variable17 = variable3 /*nodearraylist7*/;
12373 variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12374 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6298); nit_exit(1);}
12375 variable18 = variable2 /*nodearraylist8*/;
12376 variable19 = TAG_Bool(( variable18 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable18 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
12377 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction124___action, LOCATE_parser, 6300); nit_exit(1);}
12378 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pablenode4*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, variable18 /*ptypenode11*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
12379 variable19 = variable20;
12380 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
12381 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12382 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
12383 tracehead = trace.prev;
12384 return;
12385 }
12386 void parser___ReduceAction124___init(val_t self, int* init_table) {
12387 struct trace_t trace = {NULL, NULL, 6315, LOCATE_parser___ReduceAction124___init};
12388 trace.prev = tracehead; tracehead = &trace;
12389 trace.file = LOCATE_parser;
12390 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction124].i]) return;
12391 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction124].i] = 1;
12392 tracehead = trace.prev;
12393 return;
12394 }
12395 void parser___ReduceAction125___action(val_t self, val_t param0) {
12396 struct trace_t trace = {NULL, NULL, 6319, LOCATE_parser___ReduceAction125___action};
12397 val_t variable0;
12398 val_t variable1;
12399 val_t variable2;
12400 val_t variable3;
12401 val_t variable4;
12402 val_t variable5;
12403 val_t variable6;
12404 val_t variable7;
12405 val_t variable8;
12406 val_t variable9;
12407 val_t variable10;
12408 val_t variable11;
12409 val_t variable12;
12410 val_t variable13;
12411 val_t variable14;
12412 val_t variable15;
12413 trace.prev = tracehead; tracehead = &trace;
12414 trace.file = LOCATE_parser;
12415 variable0 = param0;
12416 variable1 = NIT_NULL /*null*/;
12417 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12418 variable2 = variable3;
12419 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12420 variable3 = variable4;
12421 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12422 variable4 = variable5;
12423 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12424 variable5 = variable6;
12425 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12426 variable6 = variable7;
12427 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12428 variable7 = variable8;
12429 variable8 = variable7 /*nodearraylist1*/;
12430 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12431 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction125___action, LOCATE_parser, 6329); nit_exit(1);}
12432 variable9 = variable6 /*nodearraylist2*/;
12433 variable10 = TAG_Bool(( variable9 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12434 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction125___action, LOCATE_parser, 6331); nit_exit(1);}
12435 variable10 = variable5 /*nodearraylist3*/;
12436 variable11 = TAG_Bool(( variable10 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12437 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction125___action, LOCATE_parser, 6333); nit_exit(1);}
12438 variable11 = variable4 /*nodearraylist4*/;
12439 variable12 = TAG_Bool(( variable11 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12440 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction125___action, LOCATE_parser, 6335); nit_exit(1);}
12441 variable12 = variable3 /*nodearraylist5*/;
12442 variable13 = TAG_Bool(( variable12 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12443 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction125___action, LOCATE_parser, 6337); nit_exit(1);}
12444 variable13 = variable2 /*nodearraylist6*/;
12445 variable14 = TAG_Bool(( variable13 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable13 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/;
12446 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction125___action, LOCATE_parser, 6339); nit_exit(1);}
12447 variable15 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable8 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable9 /*tkwredefnode5*/, variable10 /*pvisibilitynode6*/, variable11 /*tkwattrnode7*/, variable12 /*tattridnode8*/, variable13 /*ptypenode9*/, NIT_NULL /*null*/); /*new AAttrPropdef*/
12448 variable14 = variable15;
12449 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
12450 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12451 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
12452 tracehead = trace.prev;
12453 return;
12454 }
12455 void parser___ReduceAction125___init(val_t self, int* init_table) {
12456 struct trace_t trace = {NULL, NULL, 6354, LOCATE_parser___ReduceAction125___init};
12457 trace.prev = tracehead; tracehead = &trace;
12458 trace.file = LOCATE_parser;
12459 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction125].i]) return;
12460 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction125].i] = 1;
12461 tracehead = trace.prev;
12462 return;
12463 }
12464 void parser___ReduceAction126___action(val_t self, val_t param0) {
12465 struct trace_t trace = {NULL, NULL, 6358, LOCATE_parser___ReduceAction126___action};
12466 val_t variable0;
12467 val_t variable1;
12468 val_t variable2;
12469 val_t variable3;
12470 val_t variable4;
12471 val_t variable5;
12472 val_t variable6;
12473 val_t variable7;
12474 val_t variable8;
12475 val_t variable9;
12476 val_t variable10;
12477 val_t variable11;
12478 val_t variable12;
12479 val_t variable13;
12480 val_t variable14;
12481 val_t variable15;
12482 val_t variable16;
12483 val_t variable17;
12484 val_t variable18;
12485 val_t variable19;
12486 val_t variable20;
12487 val_t variable21;
12488 trace.prev = tracehead; tracehead = &trace;
12489 trace.file = LOCATE_parser;
12490 variable0 = param0;
12491 variable1 = NIT_NULL /*null*/;
12492 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12493 variable2 = variable3;
12494 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12495 variable3 = variable4;
12496 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12497 variable4 = variable5;
12498 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12499 variable5 = variable6;
12500 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12501 variable6 = variable7;
12502 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12503 variable7 = variable8;
12504 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12505 variable8 = variable9;
12506 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12507 variable9 = variable10;
12508 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12509 variable10 = variable11;
12510 variable11 = variable10 /*nodearraylist1*/;
12511 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12512 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction126___action, LOCATE_parser, 6371); nit_exit(1);}
12513 variable12 = variable9 /*nodearraylist2*/;
12514 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12515 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction126___action, LOCATE_parser, 6373); nit_exit(1);}
12516 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
12517 variable13 = variable14;
12518 variable14 = variable8 /*nodearraylist3*/;
12519 variable15 = TAG_Bool(( variable14 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12520 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction126___action, LOCATE_parser, 6379); nit_exit(1);}
12521 variable16 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable14 /*tkwwritablenode8*/); /*new AWriteAble*/
12522 variable15 = variable16;
12523 variable16 = variable7 /*nodearraylist4*/;
12524 variable17 = TAG_Bool(( variable16 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12525 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction126___action, LOCATE_parser, 6385); nit_exit(1);}
12526 variable17 = variable6 /*nodearraylist5*/;
12527 variable18 = TAG_Bool(( variable17 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12528 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction126___action, LOCATE_parser, 6387); nit_exit(1);}
12529 variable18 = variable5 /*nodearraylist6*/;
12530 variable19 = TAG_Bool(( variable18 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12531 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction126___action, LOCATE_parser, 6389); nit_exit(1);}
12532 variable19 = variable2 /*nodearraylist9*/;
12533 variable20 = TAG_Bool(( variable19 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable19 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
12534 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction126___action, LOCATE_parser, 6391); nit_exit(1);}
12535 variable21 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, variable15 /*pablenode6*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode10*/, variable17 /*tkwattrnode11*/, variable18 /*tattridnode12*/, NIT_NULL /*null*/, variable19 /*pexprnode14*/); /*new AAttrPropdef*/
12536 variable20 = variable21;
12537 variable1 = variable20 /*ppropdefnode1*/ /*node_list=*/;
12538 variable21 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12539 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable21, variable1 /*node_list*/) /*Parser::push*/;
12540 tracehead = trace.prev;
12541 return;
12542 }
12543 void parser___ReduceAction126___init(val_t self, int* init_table) {
12544 struct trace_t trace = {NULL, NULL, 6406, LOCATE_parser___ReduceAction126___init};
12545 trace.prev = tracehead; tracehead = &trace;
12546 trace.file = LOCATE_parser;
12547 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction126].i]) return;
12548 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction126].i] = 1;
12549 tracehead = trace.prev;
12550 return;
12551 }
12552 void parser___ReduceAction127___action(val_t self, val_t param0) {
12553 struct trace_t trace = {NULL, NULL, 6410, LOCATE_parser___ReduceAction127___action};
12554 val_t variable0;
12555 val_t variable1;
12556 val_t variable2;
12557 val_t variable3;
12558 val_t variable4;
12559 val_t variable5;
12560 val_t variable6;
12561 val_t variable7;
12562 val_t variable8;
12563 val_t variable9;
12564 val_t variable10;
12565 val_t variable11;
12566 val_t variable12;
12567 val_t variable13;
12568 val_t variable14;
12569 val_t variable15;
12570 val_t variable16;
12571 val_t variable17;
12572 val_t variable18;
12573 val_t variable19;
12574 val_t variable20;
12575 val_t variable21;
12576 val_t variable22;
12577 val_t variable23;
12578 trace.prev = tracehead; tracehead = &trace;
12579 trace.file = LOCATE_parser;
12580 variable0 = param0;
12581 variable1 = NIT_NULL /*null*/;
12582 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12583 variable2 = variable3;
12584 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12585 variable3 = variable4;
12586 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12587 variable4 = variable5;
12588 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12589 variable5 = variable6;
12590 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12591 variable6 = variable7;
12592 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12593 variable7 = variable8;
12594 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12595 variable8 = variable9;
12596 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12597 variable9 = variable10;
12598 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12599 variable10 = variable11;
12600 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12601 variable11 = variable12;
12602 variable12 = variable11 /*nodearraylist1*/;
12603 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12604 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6424); nit_exit(1);}
12605 variable13 = variable10 /*nodearraylist2*/;
12606 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12607 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6426); nit_exit(1);}
12608 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
12609 variable14 = variable15;
12610 variable15 = variable9 /*nodearraylist3*/;
12611 variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12612 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6432); nit_exit(1);}
12613 variable16 = variable8 /*nodearraylist4*/;
12614 variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12615 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6434); nit_exit(1);}
12616 variable18 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable15 /*tkwredefnode7*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/
12617 variable17 = variable18;
12618 variable18 = variable7 /*nodearraylist5*/;
12619 variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12620 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6440); nit_exit(1);}
12621 variable19 = variable6 /*nodearraylist6*/;
12622 variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12623 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6442); nit_exit(1);}
12624 variable20 = variable5 /*nodearraylist7*/;
12625 variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12626 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6444); nit_exit(1);}
12627 variable21 = variable2 /*nodearraylist10*/;
12628 variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
12629 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction127___action, LOCATE_parser, 6446); nit_exit(1);}
12630 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, variable17 /*pablenode6*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, NIT_NULL /*null*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/
12631 variable22 = variable23;
12632 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
12633 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12634 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
12635 tracehead = trace.prev;
12636 return;
12637 }
12638 void parser___ReduceAction127___init(val_t self, int* init_table) {
12639 struct trace_t trace = {NULL, NULL, 6461, LOCATE_parser___ReduceAction127___init};
12640 trace.prev = tracehead; tracehead = &trace;
12641 trace.file = LOCATE_parser;
12642 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction127].i]) return;
12643 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction127].i] = 1;
12644 tracehead = trace.prev;
12645 return;
12646 }
12647 void parser___ReduceAction128___action(val_t self, val_t param0) {
12648 struct trace_t trace = {NULL, NULL, 6465, LOCATE_parser___ReduceAction128___action};
12649 val_t variable0;
12650 val_t variable1;
12651 val_t variable2;
12652 val_t variable3;
12653 val_t variable4;
12654 val_t variable5;
12655 val_t variable6;
12656 val_t variable7;
12657 val_t variable8;
12658 val_t variable9;
12659 val_t variable10;
12660 val_t variable11;
12661 val_t variable12;
12662 val_t variable13;
12663 val_t variable14;
12664 val_t variable15;
12665 val_t variable16;
12666 val_t variable17;
12667 val_t variable18;
12668 trace.prev = tracehead; tracehead = &trace;
12669 trace.file = LOCATE_parser;
12670 variable0 = param0;
12671 variable1 = NIT_NULL /*null*/;
12672 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12673 variable2 = variable3;
12674 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12675 variable3 = variable4;
12676 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12677 variable4 = variable5;
12678 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12679 variable5 = variable6;
12680 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12681 variable6 = variable7;
12682 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12683 variable7 = variable8;
12684 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12685 variable8 = variable9;
12686 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12687 variable9 = variable10;
12688 variable10 = variable9 /*nodearraylist1*/;
12689 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12690 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction128___action, LOCATE_parser, 6477); nit_exit(1);}
12691 variable11 = variable8 /*nodearraylist2*/;
12692 variable12 = TAG_Bool(( variable11 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12693 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction128___action, LOCATE_parser, 6479); nit_exit(1);}
12694 variable13 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable11 /*tkwreadablenode5*/); /*new AReadAble*/
12695 variable12 = variable13;
12696 variable13 = variable7 /*nodearraylist3*/;
12697 variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12698 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction128___action, LOCATE_parser, 6485); nit_exit(1);}
12699 variable14 = variable6 /*nodearraylist4*/;
12700 variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12701 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction128___action, LOCATE_parser, 6487); nit_exit(1);}
12702 variable15 = variable5 /*nodearraylist5*/;
12703 variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12704 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction128___action, LOCATE_parser, 6489); nit_exit(1);}
12705 variable16 = variable2 /*nodearraylist8*/;
12706 variable17 = TAG_Bool(( variable16 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
12707 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction128___action, LOCATE_parser, 6491); nit_exit(1);}
12708 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, variable12 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, NIT_NULL /*null*/, variable16 /*pexprnode12*/); /*new AAttrPropdef*/
12709 variable17 = variable18;
12710 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
12711 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12712 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
12713 tracehead = trace.prev;
12714 return;
12715 }
12716 void parser___ReduceAction128___init(val_t self, int* init_table) {
12717 struct trace_t trace = {NULL, NULL, 6506, LOCATE_parser___ReduceAction128___init};
12718 trace.prev = tracehead; tracehead = &trace;
12719 trace.file = LOCATE_parser;
12720 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction128].i]) return;
12721 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction128].i] = 1;
12722 tracehead = trace.prev;
12723 return;
12724 }
12725 void parser___ReduceAction129___action(val_t self, val_t param0) {
12726 struct trace_t trace = {NULL, NULL, 6510, LOCATE_parser___ReduceAction129___action};
12727 val_t variable0;
12728 val_t variable1;
12729 val_t variable2;
12730 val_t variable3;
12731 val_t variable4;
12732 val_t variable5;
12733 val_t variable6;
12734 val_t variable7;
12735 val_t variable8;
12736 val_t variable9;
12737 val_t variable10;
12738 val_t variable11;
12739 val_t variable12;
12740 val_t variable13;
12741 val_t variable14;
12742 val_t variable15;
12743 val_t variable16;
12744 val_t variable17;
12745 val_t variable18;
12746 val_t variable19;
12747 val_t variable20;
12748 val_t variable21;
12749 val_t variable22;
12750 val_t variable23;
12751 trace.prev = tracehead; tracehead = &trace;
12752 trace.file = LOCATE_parser;
12753 variable0 = param0;
12754 variable1 = NIT_NULL /*null*/;
12755 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12756 variable2 = variable3;
12757 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12758 variable3 = variable4;
12759 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12760 variable4 = variable5;
12761 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12762 variable5 = variable6;
12763 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12764 variable6 = variable7;
12765 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12766 variable7 = variable8;
12767 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12768 variable8 = variable9;
12769 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12770 variable9 = variable10;
12771 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12772 variable10 = variable11;
12773 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12774 variable11 = variable12;
12775 variable12 = variable11 /*nodearraylist1*/;
12776 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12777 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6524); nit_exit(1);}
12778 variable13 = variable10 /*nodearraylist2*/;
12779 variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12780 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6526); nit_exit(1);}
12781 variable14 = variable9 /*nodearraylist3*/;
12782 variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12783 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6528); nit_exit(1);}
12784 variable16 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/
12785 variable15 = variable16;
12786 variable16 = variable8 /*nodearraylist4*/;
12787 variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12788 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6534); nit_exit(1);}
12789 variable18 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/
12790 variable17 = variable18;
12791 variable18 = variable7 /*nodearraylist5*/;
12792 variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12793 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6540); nit_exit(1);}
12794 variable19 = variable6 /*nodearraylist6*/;
12795 variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12796 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6542); nit_exit(1);}
12797 variable20 = variable5 /*nodearraylist7*/;
12798 variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12799 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6544); nit_exit(1);}
12800 variable21 = variable2 /*nodearraylist10*/;
12801 variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
12802 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction129___action, LOCATE_parser, 6546); nit_exit(1);}
12803 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, variable17 /*pablenode6*/, NIT_NULL /*null*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, NIT_NULL /*null*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/
12804 variable22 = variable23;
12805 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
12806 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12807 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
12808 tracehead = trace.prev;
12809 return;
12810 }
12811 void parser___ReduceAction129___init(val_t self, int* init_table) {
12812 struct trace_t trace = {NULL, NULL, 6561, LOCATE_parser___ReduceAction129___init};
12813 trace.prev = tracehead; tracehead = &trace;
12814 trace.file = LOCATE_parser;
12815 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction129].i]) return;
12816 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction129].i] = 1;
12817 tracehead = trace.prev;
12818 return;
12819 }
12820 void parser___ReduceAction130___action(val_t self, val_t param0) {
12821 struct trace_t trace = {NULL, NULL, 6565, LOCATE_parser___ReduceAction130___action};
12822 val_t variable0;
12823 val_t variable1;
12824 val_t variable2;
12825 val_t variable3;
12826 val_t variable4;
12827 val_t variable5;
12828 val_t variable6;
12829 val_t variable7;
12830 val_t variable8;
12831 val_t variable9;
12832 val_t variable10;
12833 val_t variable11;
12834 val_t variable12;
12835 val_t variable13;
12836 val_t variable14;
12837 val_t variable15;
12838 val_t variable16;
12839 val_t variable17;
12840 val_t variable18;
12841 val_t variable19;
12842 val_t variable20;
12843 val_t variable21;
12844 val_t variable22;
12845 val_t variable23;
12846 val_t variable24;
12847 val_t variable25;
12848 trace.prev = tracehead; tracehead = &trace;
12849 trace.file = LOCATE_parser;
12850 variable0 = param0;
12851 variable1 = NIT_NULL /*null*/;
12852 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12853 variable2 = variable3;
12854 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12855 variable3 = variable4;
12856 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12857 variable4 = variable5;
12858 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12859 variable5 = variable6;
12860 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12861 variable6 = variable7;
12862 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12863 variable7 = variable8;
12864 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12865 variable8 = variable9;
12866 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12867 variable9 = variable10;
12868 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12869 variable10 = variable11;
12870 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12871 variable11 = variable12;
12872 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12873 variable12 = variable13;
12874 variable13 = variable12 /*nodearraylist1*/;
12875 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12876 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6580); nit_exit(1);}
12877 variable14 = variable11 /*nodearraylist2*/;
12878 variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12879 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6582); nit_exit(1);}
12880 variable15 = variable10 /*nodearraylist3*/;
12881 variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12882 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6584); nit_exit(1);}
12883 variable17 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/
12884 variable16 = variable17;
12885 variable17 = variable9 /*nodearraylist4*/;
12886 variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12887 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6590); nit_exit(1);}
12888 variable18 = variable8 /*nodearraylist5*/;
12889 variable19 = TAG_Bool(( variable18 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable18 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
12890 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6592); nit_exit(1);}
12891 variable20 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable17 /*tkwredefnode7*/, variable18 /*tkwwritablenode8*/); /*new AWriteAble*/
12892 variable19 = variable20;
12893 variable20 = variable7 /*nodearraylist6*/;
12894 variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12895 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6598); nit_exit(1);}
12896 variable21 = variable6 /*nodearraylist7*/;
12897 variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12898 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6600); nit_exit(1);}
12899 variable22 = variable5 /*nodearraylist8*/;
12900 variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12901 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6602); nit_exit(1);}
12902 variable23 = variable2 /*nodearraylist11*/;
12903 variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
12904 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction130___action, LOCATE_parser, 6604); nit_exit(1);}
12905 variable25 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, variable19 /*pablenode6*/, NIT_NULL /*null*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, NIT_NULL /*null*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/
12906 variable24 = variable25;
12907 variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/;
12908 variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12909 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/;
12910 tracehead = trace.prev;
12911 return;
12912 }
12913 void parser___ReduceAction130___init(val_t self, int* init_table) {
12914 struct trace_t trace = {NULL, NULL, 6619, LOCATE_parser___ReduceAction130___init};
12915 trace.prev = tracehead; tracehead = &trace;
12916 trace.file = LOCATE_parser;
12917 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction130].i]) return;
12918 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction130].i] = 1;
12919 tracehead = trace.prev;
12920 return;
12921 }
12922 void parser___ReduceAction131___action(val_t self, val_t param0) {
12923 struct trace_t trace = {NULL, NULL, 6623, LOCATE_parser___ReduceAction131___action};
12924 val_t variable0;
12925 val_t variable1;
12926 val_t variable2;
12927 val_t variable3;
12928 val_t variable4;
12929 val_t variable5;
12930 val_t variable6;
12931 val_t variable7;
12932 val_t variable8;
12933 val_t variable9;
12934 val_t variable10;
12935 val_t variable11;
12936 val_t variable12;
12937 val_t variable13;
12938 val_t variable14;
12939 val_t variable15;
12940 val_t variable16;
12941 val_t variable17;
12942 val_t variable18;
12943 val_t variable19;
12944 val_t variable20;
12945 trace.prev = tracehead; tracehead = &trace;
12946 trace.file = LOCATE_parser;
12947 variable0 = param0;
12948 variable1 = NIT_NULL /*null*/;
12949 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12950 variable2 = variable3;
12951 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12952 variable3 = variable4;
12953 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12954 variable4 = variable5;
12955 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12956 variable5 = variable6;
12957 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12958 variable6 = variable7;
12959 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12960 variable7 = variable8;
12961 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12962 variable8 = variable9;
12963 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12964 variable9 = variable10;
12965 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
12966 variable10 = variable11;
12967 variable11 = variable10 /*nodearraylist1*/;
12968 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
12969 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction131___action, LOCATE_parser, 6636); nit_exit(1);}
12970 variable12 = variable9 /*nodearraylist2*/;
12971 variable13 = TAG_Bool(( variable12 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
12972 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction131___action, LOCATE_parser, 6638); nit_exit(1);}
12973 variable13 = variable8 /*nodearraylist3*/;
12974 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
12975 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction131___action, LOCATE_parser, 6640); nit_exit(1);}
12976 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable12 /*tkwredefnode4*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
12977 variable14 = variable15;
12978 variable15 = variable7 /*nodearraylist4*/;
12979 variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
12980 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction131___action, LOCATE_parser, 6646); nit_exit(1);}
12981 variable16 = variable6 /*nodearraylist5*/;
12982 variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
12983 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction131___action, LOCATE_parser, 6648); nit_exit(1);}
12984 variable17 = variable5 /*nodearraylist6*/;
12985 variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
12986 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction131___action, LOCATE_parser, 6650); nit_exit(1);}
12987 variable18 = variable2 /*nodearraylist9*/;
12988 variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
12989 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction131___action, LOCATE_parser, 6652); nit_exit(1);}
12990 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable14 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/
12991 variable19 = variable20;
12992 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
12993 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
12994 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
12995 tracehead = trace.prev;
12996 return;
12997 }
12998 void parser___ReduceAction131___init(val_t self, int* init_table) {
12999 struct trace_t trace = {NULL, NULL, 6667, LOCATE_parser___ReduceAction131___init};
13000 trace.prev = tracehead; tracehead = &trace;
13001 trace.file = LOCATE_parser;
13002 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction131].i]) return;
13003 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction131].i] = 1;
13004 tracehead = trace.prev;
13005 return;
13006 }
13007 void parser___ReduceAction132___action(val_t self, val_t param0) {
13008 struct trace_t trace = {NULL, NULL, 6671, LOCATE_parser___ReduceAction132___action};
13009 val_t variable0;
13010 val_t variable1;
13011 val_t variable2;
13012 val_t variable3;
13013 val_t variable4;
13014 val_t variable5;
13015 val_t variable6;
13016 val_t variable7;
13017 val_t variable8;
13018 val_t variable9;
13019 val_t variable10;
13020 val_t variable11;
13021 val_t variable12;
13022 val_t variable13;
13023 val_t variable14;
13024 val_t variable15;
13025 val_t variable16;
13026 val_t variable17;
13027 val_t variable18;
13028 trace.prev = tracehead; tracehead = &trace;
13029 trace.file = LOCATE_parser;
13030 variable0 = param0;
13031 variable1 = NIT_NULL /*null*/;
13032 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13033 variable2 = variable3;
13034 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13035 variable3 = variable4;
13036 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13037 variable4 = variable5;
13038 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13039 variable5 = variable6;
13040 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13041 variable6 = variable7;
13042 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13043 variable7 = variable8;
13044 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13045 variable8 = variable9;
13046 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13047 variable9 = variable10;
13048 variable10 = variable9 /*nodearraylist1*/;
13049 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13050 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction132___action, LOCATE_parser, 6683); nit_exit(1);}
13051 variable11 = variable8 /*nodearraylist2*/;
13052 variable12 = TAG_Bool(( variable11 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable11 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13053 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction132___action, LOCATE_parser, 6685); nit_exit(1);}
13054 variable13 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable11 /*tkwwritablenode6*/); /*new AWriteAble*/
13055 variable12 = variable13;
13056 variable13 = variable7 /*nodearraylist3*/;
13057 variable14 = TAG_Bool(( variable13 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13058 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction132___action, LOCATE_parser, 6691); nit_exit(1);}
13059 variable14 = variable6 /*nodearraylist4*/;
13060 variable15 = TAG_Bool(( variable14 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13061 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction132___action, LOCATE_parser, 6693); nit_exit(1);}
13062 variable15 = variable5 /*nodearraylist5*/;
13063 variable16 = TAG_Bool(( variable15 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13064 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction132___action, LOCATE_parser, 6695); nit_exit(1);}
13065 variable16 = variable2 /*nodearraylist8*/;
13066 variable17 = TAG_Bool(( variable16 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13067 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction132___action, LOCATE_parser, 6697); nit_exit(1);}
13068 variable18 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pablenode4*/, NIT_NULL /*null*/, variable13 /*pvisibilitynode8*/, variable14 /*tkwattrnode9*/, variable15 /*tattridnode10*/, NIT_NULL /*null*/, variable16 /*pexprnode12*/); /*new AAttrPropdef*/
13069 variable17 = variable18;
13070 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
13071 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13072 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
13073 tracehead = trace.prev;
13074 return;
13075 }
13076 void parser___ReduceAction132___init(val_t self, int* init_table) {
13077 struct trace_t trace = {NULL, NULL, 6712, LOCATE_parser___ReduceAction132___init};
13078 trace.prev = tracehead; tracehead = &trace;
13079 trace.file = LOCATE_parser;
13080 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction132].i]) return;
13081 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction132].i] = 1;
13082 tracehead = trace.prev;
13083 return;
13084 }
13085 void parser___ReduceAction133___action(val_t self, val_t param0) {
13086 struct trace_t trace = {NULL, NULL, 6716, LOCATE_parser___ReduceAction133___action};
13087 val_t variable0;
13088 val_t variable1;
13089 val_t variable2;
13090 val_t variable3;
13091 val_t variable4;
13092 val_t variable5;
13093 val_t variable6;
13094 val_t variable7;
13095 val_t variable8;
13096 val_t variable9;
13097 val_t variable10;
13098 val_t variable11;
13099 val_t variable12;
13100 val_t variable13;
13101 val_t variable14;
13102 val_t variable15;
13103 val_t variable16;
13104 val_t variable17;
13105 val_t variable18;
13106 val_t variable19;
13107 val_t variable20;
13108 trace.prev = tracehead; tracehead = &trace;
13109 trace.file = LOCATE_parser;
13110 variable0 = param0;
13111 variable1 = NIT_NULL /*null*/;
13112 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13113 variable2 = variable3;
13114 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13115 variable3 = variable4;
13116 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13117 variable4 = variable5;
13118 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13119 variable5 = variable6;
13120 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13121 variable6 = variable7;
13122 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13123 variable7 = variable8;
13124 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13125 variable8 = variable9;
13126 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13127 variable9 = variable10;
13128 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13129 variable10 = variable11;
13130 variable11 = variable10 /*nodearraylist1*/;
13131 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13132 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction133___action, LOCATE_parser, 6729); nit_exit(1);}
13133 variable12 = variable9 /*nodearraylist2*/;
13134 variable13 = TAG_Bool(( variable12 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13135 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction133___action, LOCATE_parser, 6731); nit_exit(1);}
13136 variable13 = variable8 /*nodearraylist3*/;
13137 variable14 = TAG_Bool(( variable13 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13138 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction133___action, LOCATE_parser, 6733); nit_exit(1);}
13139 variable15 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable12 /*tkwredefnode5*/, variable13 /*tkwwritablenode6*/); /*new AWriteAble*/
13140 variable14 = variable15;
13141 variable15 = variable7 /*nodearraylist4*/;
13142 variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13143 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction133___action, LOCATE_parser, 6739); nit_exit(1);}
13144 variable16 = variable6 /*nodearraylist5*/;
13145 variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13146 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction133___action, LOCATE_parser, 6741); nit_exit(1);}
13147 variable17 = variable5 /*nodearraylist6*/;
13148 variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13149 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction133___action, LOCATE_parser, 6743); nit_exit(1);}
13150 variable18 = variable2 /*nodearraylist9*/;
13151 variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13152 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction133___action, LOCATE_parser, 6745); nit_exit(1);}
13153 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pablenode4*/, NIT_NULL /*null*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/
13154 variable19 = variable20;
13155 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
13156 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13157 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
13158 tracehead = trace.prev;
13159 return;
13160 }
13161 void parser___ReduceAction133___init(val_t self, int* init_table) {
13162 struct trace_t trace = {NULL, NULL, 6760, LOCATE_parser___ReduceAction133___init};
13163 trace.prev = tracehead; tracehead = &trace;
13164 trace.file = LOCATE_parser;
13165 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction133].i]) return;
13166 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction133].i] = 1;
13167 tracehead = trace.prev;
13168 return;
13169 }
13170 void parser___ReduceAction134___action(val_t self, val_t param0) {
13171 struct trace_t trace = {NULL, NULL, 6764, LOCATE_parser___ReduceAction134___action};
13172 val_t variable0;
13173 val_t variable1;
13174 val_t variable2;
13175 val_t variable3;
13176 val_t variable4;
13177 val_t variable5;
13178 val_t variable6;
13179 val_t variable7;
13180 val_t variable8;
13181 val_t variable9;
13182 val_t variable10;
13183 val_t variable11;
13184 val_t variable12;
13185 val_t variable13;
13186 val_t variable14;
13187 val_t variable15;
13188 trace.prev = tracehead; tracehead = &trace;
13189 trace.file = LOCATE_parser;
13190 variable0 = param0;
13191 variable1 = NIT_NULL /*null*/;
13192 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13193 variable2 = variable3;
13194 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13195 variable3 = variable4;
13196 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13197 variable4 = variable5;
13198 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13199 variable5 = variable6;
13200 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13201 variable6 = variable7;
13202 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13203 variable7 = variable8;
13204 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13205 variable8 = variable9;
13206 variable9 = variable8 /*nodearraylist1*/;
13207 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13208 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction134___action, LOCATE_parser, 6775); nit_exit(1);}
13209 variable10 = variable7 /*nodearraylist2*/;
13210 variable11 = TAG_Bool(( variable10 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13211 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction134___action, LOCATE_parser, 6777); nit_exit(1);}
13212 variable11 = variable6 /*nodearraylist3*/;
13213 variable12 = TAG_Bool(( variable11 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable11 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13214 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction134___action, LOCATE_parser, 6779); nit_exit(1);}
13215 variable12 = variable5 /*nodearraylist4*/;
13216 variable13 = TAG_Bool(( variable12 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable12 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13217 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction134___action, LOCATE_parser, 6781); nit_exit(1);}
13218 variable13 = variable2 /*nodearraylist7*/;
13219 variable14 = TAG_Bool(( variable13 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13220 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction134___action, LOCATE_parser, 6783); nit_exit(1);}
13221 variable15 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode6*/, variable11 /*tkwattrnode7*/, variable12 /*tattridnode8*/, NIT_NULL /*null*/, variable13 /*pexprnode10*/); /*new AAttrPropdef*/
13222 variable14 = variable15;
13223 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
13224 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13225 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
13226 tracehead = trace.prev;
13227 return;
13228 }
13229 void parser___ReduceAction134___init(val_t self, int* init_table) {
13230 struct trace_t trace = {NULL, NULL, 6798, LOCATE_parser___ReduceAction134___init};
13231 trace.prev = tracehead; tracehead = &trace;
13232 trace.file = LOCATE_parser;
13233 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction134].i]) return;
13234 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction134].i] = 1;
13235 tracehead = trace.prev;
13236 return;
13237 }
13238 void parser___ReduceAction135___action(val_t self, val_t param0) {
13239 struct trace_t trace = {NULL, NULL, 6802, LOCATE_parser___ReduceAction135___action};
13240 val_t variable0;
13241 val_t variable1;
13242 val_t variable2;
13243 val_t variable3;
13244 val_t variable4;
13245 val_t variable5;
13246 val_t variable6;
13247 val_t variable7;
13248 val_t variable8;
13249 val_t variable9;
13250 val_t variable10;
13251 val_t variable11;
13252 val_t variable12;
13253 val_t variable13;
13254 val_t variable14;
13255 val_t variable15;
13256 val_t variable16;
13257 val_t variable17;
13258 val_t variable18;
13259 val_t variable19;
13260 val_t variable20;
13261 val_t variable21;
13262 val_t variable22;
13263 val_t variable23;
13264 trace.prev = tracehead; tracehead = &trace;
13265 trace.file = LOCATE_parser;
13266 variable0 = param0;
13267 variable1 = NIT_NULL /*null*/;
13268 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13269 variable2 = variable3;
13270 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13271 variable3 = variable4;
13272 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13273 variable4 = variable5;
13274 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13275 variable5 = variable6;
13276 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13277 variable6 = variable7;
13278 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13279 variable7 = variable8;
13280 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13281 variable8 = variable9;
13282 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13283 variable9 = variable10;
13284 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13285 variable10 = variable11;
13286 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13287 variable11 = variable12;
13288 variable12 = variable11 /*nodearraylist1*/;
13289 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13290 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6816); nit_exit(1);}
13291 variable13 = variable10 /*nodearraylist2*/;
13292 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
13293 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6818); nit_exit(1);}
13294 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
13295 variable14 = variable15;
13296 variable15 = variable9 /*nodearraylist3*/;
13297 variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13298 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6824); nit_exit(1);}
13299 variable17 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/
13300 variable16 = variable17;
13301 variable17 = variable8 /*nodearraylist4*/;
13302 variable18 = TAG_Bool(( variable17 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13303 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6830); nit_exit(1);}
13304 variable18 = variable7 /*nodearraylist5*/;
13305 variable19 = TAG_Bool(( variable18 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13306 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6832); nit_exit(1);}
13307 variable19 = variable6 /*nodearraylist6*/;
13308 variable20 = TAG_Bool(( variable19 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13309 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6834); nit_exit(1);}
13310 variable20 = variable5 /*nodearraylist7*/;
13311 variable21 = TAG_Bool(( variable20 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13312 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6836); nit_exit(1);}
13313 variable21 = variable2 /*nodearraylist10*/;
13314 variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13315 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction135___action, LOCATE_parser, 6838); nit_exit(1);}
13316 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, variable16 /*pablenode6*/, variable17 /*tkwredefnode9*/, variable18 /*pvisibilitynode10*/, variable19 /*tkwattrnode11*/, variable20 /*tattridnode12*/, NIT_NULL /*null*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/
13317 variable22 = variable23;
13318 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
13319 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13320 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
13321 tracehead = trace.prev;
13322 return;
13323 }
13324 void parser___ReduceAction135___init(val_t self, int* init_table) {
13325 struct trace_t trace = {NULL, NULL, 6853, LOCATE_parser___ReduceAction135___init};
13326 trace.prev = tracehead; tracehead = &trace;
13327 trace.file = LOCATE_parser;
13328 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction135].i]) return;
13329 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction135].i] = 1;
13330 tracehead = trace.prev;
13331 return;
13332 }
13333 void parser___ReduceAction136___action(val_t self, val_t param0) {
13334 struct trace_t trace = {NULL, NULL, 6857, LOCATE_parser___ReduceAction136___action};
13335 val_t variable0;
13336 val_t variable1;
13337 val_t variable2;
13338 val_t variable3;
13339 val_t variable4;
13340 val_t variable5;
13341 val_t variable6;
13342 val_t variable7;
13343 val_t variable8;
13344 val_t variable9;
13345 val_t variable10;
13346 val_t variable11;
13347 val_t variable12;
13348 val_t variable13;
13349 val_t variable14;
13350 val_t variable15;
13351 val_t variable16;
13352 val_t variable17;
13353 val_t variable18;
13354 val_t variable19;
13355 val_t variable20;
13356 val_t variable21;
13357 val_t variable22;
13358 val_t variable23;
13359 val_t variable24;
13360 val_t variable25;
13361 trace.prev = tracehead; tracehead = &trace;
13362 trace.file = LOCATE_parser;
13363 variable0 = param0;
13364 variable1 = NIT_NULL /*null*/;
13365 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13366 variable2 = variable3;
13367 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13368 variable3 = variable4;
13369 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13370 variable4 = variable5;
13371 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13372 variable5 = variable6;
13373 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13374 variable6 = variable7;
13375 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13376 variable7 = variable8;
13377 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13378 variable8 = variable9;
13379 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13380 variable9 = variable10;
13381 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13382 variable10 = variable11;
13383 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13384 variable11 = variable12;
13385 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13386 variable12 = variable13;
13387 variable13 = variable12 /*nodearraylist1*/;
13388 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13389 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6872); nit_exit(1);}
13390 variable14 = variable11 /*nodearraylist2*/;
13391 variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
13392 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6874); nit_exit(1);}
13393 variable16 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/
13394 variable15 = variable16;
13395 variable16 = variable10 /*nodearraylist3*/;
13396 variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13397 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6880); nit_exit(1);}
13398 variable17 = variable9 /*nodearraylist4*/;
13399 variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13400 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6882); nit_exit(1);}
13401 variable19 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable16 /*tkwredefnode7*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/
13402 variable18 = variable19;
13403 variable19 = variable8 /*nodearraylist5*/;
13404 variable20 = TAG_Bool(( variable19 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13405 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6888); nit_exit(1);}
13406 variable20 = variable7 /*nodearraylist6*/;
13407 variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13408 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6890); nit_exit(1);}
13409 variable21 = variable6 /*nodearraylist7*/;
13410 variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13411 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6892); nit_exit(1);}
13412 variable22 = variable5 /*nodearraylist8*/;
13413 variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13414 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6894); nit_exit(1);}
13415 variable23 = variable2 /*nodearraylist11*/;
13416 variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13417 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction136___action, LOCATE_parser, 6896); nit_exit(1);}
13418 variable25 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable15 /*pablenode3*/, variable18 /*pablenode6*/, variable19 /*tkwredefnode9*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, NIT_NULL /*null*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/
13419 variable24 = variable25;
13420 variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/;
13421 variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13422 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/;
13423 tracehead = trace.prev;
13424 return;
13425 }
13426 void parser___ReduceAction136___init(val_t self, int* init_table) {
13427 struct trace_t trace = {NULL, NULL, 6911, LOCATE_parser___ReduceAction136___init};
13428 trace.prev = tracehead; tracehead = &trace;
13429 trace.file = LOCATE_parser;
13430 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction136].i]) return;
13431 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction136].i] = 1;
13432 tracehead = trace.prev;
13433 return;
13434 }
13435 void parser___ReduceAction137___action(val_t self, val_t param0) {
13436 struct trace_t trace = {NULL, NULL, 6915, LOCATE_parser___ReduceAction137___action};
13437 val_t variable0;
13438 val_t variable1;
13439 val_t variable2;
13440 val_t variable3;
13441 val_t variable4;
13442 val_t variable5;
13443 val_t variable6;
13444 val_t variable7;
13445 val_t variable8;
13446 val_t variable9;
13447 val_t variable10;
13448 val_t variable11;
13449 val_t variable12;
13450 val_t variable13;
13451 val_t variable14;
13452 val_t variable15;
13453 val_t variable16;
13454 val_t variable17;
13455 val_t variable18;
13456 val_t variable19;
13457 val_t variable20;
13458 trace.prev = tracehead; tracehead = &trace;
13459 trace.file = LOCATE_parser;
13460 variable0 = param0;
13461 variable1 = NIT_NULL /*null*/;
13462 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13463 variable2 = variable3;
13464 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13465 variable3 = variable4;
13466 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13467 variable4 = variable5;
13468 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13469 variable5 = variable6;
13470 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13471 variable6 = variable7;
13472 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13473 variable7 = variable8;
13474 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13475 variable8 = variable9;
13476 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13477 variable9 = variable10;
13478 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13479 variable10 = variable11;
13480 variable11 = variable10 /*nodearraylist1*/;
13481 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13482 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction137___action, LOCATE_parser, 6928); nit_exit(1);}
13483 variable12 = variable9 /*nodearraylist2*/;
13484 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
13485 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction137___action, LOCATE_parser, 6930); nit_exit(1);}
13486 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
13487 variable13 = variable14;
13488 variable14 = variable8 /*nodearraylist3*/;
13489 variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13490 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction137___action, LOCATE_parser, 6936); nit_exit(1);}
13491 variable15 = variable7 /*nodearraylist4*/;
13492 variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13493 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction137___action, LOCATE_parser, 6938); nit_exit(1);}
13494 variable16 = variable6 /*nodearraylist5*/;
13495 variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13496 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction137___action, LOCATE_parser, 6940); nit_exit(1);}
13497 variable17 = variable5 /*nodearraylist6*/;
13498 variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13499 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction137___action, LOCATE_parser, 6942); nit_exit(1);}
13500 variable18 = variable2 /*nodearraylist9*/;
13501 variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13502 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction137___action, LOCATE_parser, 6944); nit_exit(1);}
13503 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, NIT_NULL /*null*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/
13504 variable19 = variable20;
13505 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
13506 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13507 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
13508 tracehead = trace.prev;
13509 return;
13510 }
13511 void parser___ReduceAction137___init(val_t self, int* init_table) {
13512 struct trace_t trace = {NULL, NULL, 6959, LOCATE_parser___ReduceAction137___init};
13513 trace.prev = tracehead; tracehead = &trace;
13514 trace.file = LOCATE_parser;
13515 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction137].i]) return;
13516 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction137].i] = 1;
13517 tracehead = trace.prev;
13518 return;
13519 }
13520 void parser___ReduceAction138___action(val_t self, val_t param0) {
13521 struct trace_t trace = {NULL, NULL, 6963, LOCATE_parser___ReduceAction138___action};
13522 val_t variable0;
13523 val_t variable1;
13524 val_t variable2;
13525 val_t variable3;
13526 val_t variable4;
13527 val_t variable5;
13528 val_t variable6;
13529 val_t variable7;
13530 val_t variable8;
13531 val_t variable9;
13532 val_t variable10;
13533 val_t variable11;
13534 val_t variable12;
13535 val_t variable13;
13536 val_t variable14;
13537 val_t variable15;
13538 val_t variable16;
13539 val_t variable17;
13540 val_t variable18;
13541 val_t variable19;
13542 val_t variable20;
13543 val_t variable21;
13544 val_t variable22;
13545 val_t variable23;
13546 val_t variable24;
13547 val_t variable25;
13548 trace.prev = tracehead; tracehead = &trace;
13549 trace.file = LOCATE_parser;
13550 variable0 = param0;
13551 variable1 = NIT_NULL /*null*/;
13552 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13553 variable2 = variable3;
13554 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13555 variable3 = variable4;
13556 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13557 variable4 = variable5;
13558 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13559 variable5 = variable6;
13560 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13561 variable6 = variable7;
13562 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13563 variable7 = variable8;
13564 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13565 variable8 = variable9;
13566 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13567 variable9 = variable10;
13568 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13569 variable10 = variable11;
13570 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13571 variable11 = variable12;
13572 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13573 variable12 = variable13;
13574 variable13 = variable12 /*nodearraylist1*/;
13575 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13576 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 6978); nit_exit(1);}
13577 variable14 = variable11 /*nodearraylist2*/;
13578 variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13579 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 6980); nit_exit(1);}
13580 variable15 = variable10 /*nodearraylist3*/;
13581 variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
13582 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 6982); nit_exit(1);}
13583 variable17 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/
13584 variable16 = variable17;
13585 variable17 = variable9 /*nodearraylist4*/;
13586 variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13587 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 6988); nit_exit(1);}
13588 variable19 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/
13589 variable18 = variable19;
13590 variable19 = variable8 /*nodearraylist5*/;
13591 variable20 = TAG_Bool(( variable19 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13592 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 6994); nit_exit(1);}
13593 variable20 = variable7 /*nodearraylist6*/;
13594 variable21 = TAG_Bool(( variable20 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable20 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13595 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 6996); nit_exit(1);}
13596 variable21 = variable6 /*nodearraylist7*/;
13597 variable22 = TAG_Bool(( variable21 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable21 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13598 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 6998); nit_exit(1);}
13599 variable22 = variable5 /*nodearraylist8*/;
13600 variable23 = TAG_Bool(( variable22 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable22 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13601 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 7000); nit_exit(1);}
13602 variable23 = variable2 /*nodearraylist11*/;
13603 variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13604 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction138___action, LOCATE_parser, 7002); nit_exit(1);}
13605 variable25 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, variable18 /*pablenode6*/, variable19 /*tkwredefnode9*/, variable20 /*pvisibilitynode10*/, variable21 /*tkwattrnode11*/, variable22 /*tattridnode12*/, NIT_NULL /*null*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/
13606 variable24 = variable25;
13607 variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/;
13608 variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13609 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/;
13610 tracehead = trace.prev;
13611 return;
13612 }
13613 void parser___ReduceAction138___init(val_t self, int* init_table) {
13614 struct trace_t trace = {NULL, NULL, 7017, LOCATE_parser___ReduceAction138___init};
13615 trace.prev = tracehead; tracehead = &trace;
13616 trace.file = LOCATE_parser;
13617 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction138].i]) return;
13618 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction138].i] = 1;
13619 tracehead = trace.prev;
13620 return;
13621 }
13622 void parser___ReduceAction139___action(val_t self, val_t param0) {
13623 struct trace_t trace = {NULL, NULL, 7021, LOCATE_parser___ReduceAction139___action};
13624 val_t variable0;
13625 val_t variable1;
13626 val_t variable2;
13627 val_t variable3;
13628 val_t variable4;
13629 val_t variable5;
13630 val_t variable6;
13631 val_t variable7;
13632 val_t variable8;
13633 val_t variable9;
13634 val_t variable10;
13635 val_t variable11;
13636 val_t variable12;
13637 val_t variable13;
13638 val_t variable14;
13639 val_t variable15;
13640 val_t variable16;
13641 val_t variable17;
13642 val_t variable18;
13643 val_t variable19;
13644 val_t variable20;
13645 val_t variable21;
13646 val_t variable22;
13647 val_t variable23;
13648 val_t variable24;
13649 val_t variable25;
13650 val_t variable26;
13651 val_t variable27;
13652 trace.prev = tracehead; tracehead = &trace;
13653 trace.file = LOCATE_parser;
13654 variable0 = param0;
13655 variable1 = NIT_NULL /*null*/;
13656 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13657 variable2 = variable3;
13658 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13659 variable3 = variable4;
13660 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13661 variable4 = variable5;
13662 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13663 variable5 = variable6;
13664 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13665 variable6 = variable7;
13666 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13667 variable7 = variable8;
13668 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13669 variable8 = variable9;
13670 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13671 variable9 = variable10;
13672 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13673 variable10 = variable11;
13674 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13675 variable11 = variable12;
13676 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13677 variable12 = variable13;
13678 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13679 variable13 = variable14;
13680 variable14 = variable13 /*nodearraylist1*/;
13681 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13682 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7037); nit_exit(1);}
13683 variable15 = variable12 /*nodearraylist2*/;
13684 variable16 = TAG_Bool(( variable15 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13685 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7039); nit_exit(1);}
13686 variable16 = variable11 /*nodearraylist3*/;
13687 variable17 = TAG_Bool(( variable16 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable16 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
13688 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7041); nit_exit(1);}
13689 variable18 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable15 /*tkwredefnode4*/, variable16 /*tkwreadablenode5*/); /*new AReadAble*/
13690 variable17 = variable18;
13691 variable18 = variable10 /*nodearraylist4*/;
13692 variable19 = TAG_Bool(( variable18 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13693 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7047); nit_exit(1);}
13694 variable19 = variable9 /*nodearraylist5*/;
13695 variable20 = TAG_Bool(( variable19 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable19 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13696 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7049); nit_exit(1);}
13697 variable21 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable18 /*tkwredefnode7*/, variable19 /*tkwwritablenode8*/); /*new AWriteAble*/
13698 variable20 = variable21;
13699 variable21 = variable8 /*nodearraylist6*/;
13700 variable22 = TAG_Bool(( variable21 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable21 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13701 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7055); nit_exit(1);}
13702 variable22 = variable7 /*nodearraylist7*/;
13703 variable23 = TAG_Bool(( variable22 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable22 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13704 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7057); nit_exit(1);}
13705 variable23 = variable6 /*nodearraylist8*/;
13706 variable24 = TAG_Bool(( variable23 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable23 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13707 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7059); nit_exit(1);}
13708 variable24 = variable5 /*nodearraylist9*/;
13709 variable25 = TAG_Bool(( variable24 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable24 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13710 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7061); nit_exit(1);}
13711 variable25 = variable2 /*nodearraylist12*/;
13712 variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13713 if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction139___action, LOCATE_parser, 7063); nit_exit(1);}
13714 variable27 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable17 /*pablenode3*/, variable20 /*pablenode6*/, variable21 /*tkwredefnode9*/, variable22 /*pvisibilitynode10*/, variable23 /*tkwattrnode11*/, variable24 /*tattridnode12*/, NIT_NULL /*null*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/
13715 variable26 = variable27;
13716 variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/;
13717 variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13718 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/;
13719 tracehead = trace.prev;
13720 return;
13721 }
13722 void parser___ReduceAction139___init(val_t self, int* init_table) {
13723 struct trace_t trace = {NULL, NULL, 7078, LOCATE_parser___ReduceAction139___init};
13724 trace.prev = tracehead; tracehead = &trace;
13725 trace.file = LOCATE_parser;
13726 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction139].i]) return;
13727 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction139].i] = 1;
13728 tracehead = trace.prev;
13729 return;
13730 }
13731 void parser___ReduceAction140___action(val_t self, val_t param0) {
13732 struct trace_t trace = {NULL, NULL, 7082, LOCATE_parser___ReduceAction140___action};
13733 val_t variable0;
13734 val_t variable1;
13735 val_t variable2;
13736 val_t variable3;
13737 val_t variable4;
13738 val_t variable5;
13739 val_t variable6;
13740 val_t variable7;
13741 val_t variable8;
13742 val_t variable9;
13743 val_t variable10;
13744 val_t variable11;
13745 val_t variable12;
13746 val_t variable13;
13747 val_t variable14;
13748 val_t variable15;
13749 val_t variable16;
13750 val_t variable17;
13751 val_t variable18;
13752 val_t variable19;
13753 val_t variable20;
13754 val_t variable21;
13755 val_t variable22;
13756 trace.prev = tracehead; tracehead = &trace;
13757 trace.file = LOCATE_parser;
13758 variable0 = param0;
13759 variable1 = NIT_NULL /*null*/;
13760 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13761 variable2 = variable3;
13762 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13763 variable3 = variable4;
13764 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13765 variable4 = variable5;
13766 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13767 variable5 = variable6;
13768 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13769 variable6 = variable7;
13770 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13771 variable7 = variable8;
13772 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13773 variable8 = variable9;
13774 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13775 variable9 = variable10;
13776 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13777 variable10 = variable11;
13778 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13779 variable11 = variable12;
13780 variable12 = variable11 /*nodearraylist1*/;
13781 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13782 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7096); nit_exit(1);}
13783 variable13 = variable10 /*nodearraylist2*/;
13784 variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13785 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7098); nit_exit(1);}
13786 variable14 = variable9 /*nodearraylist3*/;
13787 variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
13788 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7100); nit_exit(1);}
13789 variable16 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/
13790 variable15 = variable16;
13791 variable16 = variable8 /*nodearraylist4*/;
13792 variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13793 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7106); nit_exit(1);}
13794 variable17 = variable7 /*nodearraylist5*/;
13795 variable18 = TAG_Bool(( variable17 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13796 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7108); nit_exit(1);}
13797 variable18 = variable6 /*nodearraylist6*/;
13798 variable19 = TAG_Bool(( variable18 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13799 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7110); nit_exit(1);}
13800 variable19 = variable5 /*nodearraylist7*/;
13801 variable20 = TAG_Bool(( variable19 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13802 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7112); nit_exit(1);}
13803 variable20 = variable2 /*nodearraylist10*/;
13804 variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13805 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction140___action, LOCATE_parser, 7114); nit_exit(1);}
13806 variable22 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, NIT_NULL /*null*/, variable16 /*tkwredefnode7*/, variable17 /*pvisibilitynode8*/, variable18 /*tkwattrnode9*/, variable19 /*tattridnode10*/, NIT_NULL /*null*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/
13807 variable21 = variable22;
13808 variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/;
13809 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13810 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
13811 tracehead = trace.prev;
13812 return;
13813 }
13814 void parser___ReduceAction140___init(val_t self, int* init_table) {
13815 struct trace_t trace = {NULL, NULL, 7129, LOCATE_parser___ReduceAction140___init};
13816 trace.prev = tracehead; tracehead = &trace;
13817 trace.file = LOCATE_parser;
13818 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction140].i]) return;
13819 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction140].i] = 1;
13820 tracehead = trace.prev;
13821 return;
13822 }
13823 void parser___ReduceAction141___action(val_t self, val_t param0) {
13824 struct trace_t trace = {NULL, NULL, 7133, LOCATE_parser___ReduceAction141___action};
13825 val_t variable0;
13826 val_t variable1;
13827 val_t variable2;
13828 val_t variable3;
13829 val_t variable4;
13830 val_t variable5;
13831 val_t variable6;
13832 val_t variable7;
13833 val_t variable8;
13834 val_t variable9;
13835 val_t variable10;
13836 val_t variable11;
13837 val_t variable12;
13838 val_t variable13;
13839 val_t variable14;
13840 val_t variable15;
13841 val_t variable16;
13842 val_t variable17;
13843 val_t variable18;
13844 val_t variable19;
13845 val_t variable20;
13846 trace.prev = tracehead; tracehead = &trace;
13847 trace.file = LOCATE_parser;
13848 variable0 = param0;
13849 variable1 = NIT_NULL /*null*/;
13850 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13851 variable2 = variable3;
13852 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13853 variable3 = variable4;
13854 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13855 variable4 = variable5;
13856 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13857 variable5 = variable6;
13858 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13859 variable6 = variable7;
13860 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13861 variable7 = variable8;
13862 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13863 variable8 = variable9;
13864 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13865 variable9 = variable10;
13866 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13867 variable10 = variable11;
13868 variable11 = variable10 /*nodearraylist1*/;
13869 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13870 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction141___action, LOCATE_parser, 7146); nit_exit(1);}
13871 variable12 = variable9 /*nodearraylist2*/;
13872 variable13 = TAG_Bool(( variable12 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13873 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction141___action, LOCATE_parser, 7148); nit_exit(1);}
13874 variable14 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode6*/); /*new AWriteAble*/
13875 variable13 = variable14;
13876 variable14 = variable8 /*nodearraylist3*/;
13877 variable15 = TAG_Bool(( variable14 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13878 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction141___action, LOCATE_parser, 7154); nit_exit(1);}
13879 variable15 = variable7 /*nodearraylist4*/;
13880 variable16 = TAG_Bool(( variable15 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable15 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13881 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction141___action, LOCATE_parser, 7156); nit_exit(1);}
13882 variable16 = variable6 /*nodearraylist5*/;
13883 variable17 = TAG_Bool(( variable16 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable16 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13884 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction141___action, LOCATE_parser, 7158); nit_exit(1);}
13885 variable17 = variable5 /*nodearraylist6*/;
13886 variable18 = TAG_Bool(( variable17 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable17 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13887 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction141___action, LOCATE_parser, 7160); nit_exit(1);}
13888 variable18 = variable2 /*nodearraylist9*/;
13889 variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13890 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction141___action, LOCATE_parser, 7162); nit_exit(1);}
13891 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pablenode4*/, variable14 /*tkwredefnode7*/, variable15 /*pvisibilitynode8*/, variable16 /*tkwattrnode9*/, variable17 /*tattridnode10*/, NIT_NULL /*null*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/
13892 variable19 = variable20;
13893 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
13894 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13895 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
13896 tracehead = trace.prev;
13897 return;
13898 }
13899 void parser___ReduceAction141___init(val_t self, int* init_table) {
13900 struct trace_t trace = {NULL, NULL, 7177, LOCATE_parser___ReduceAction141___init};
13901 trace.prev = tracehead; tracehead = &trace;
13902 trace.file = LOCATE_parser;
13903 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction141].i]) return;
13904 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction141].i] = 1;
13905 tracehead = trace.prev;
13906 return;
13907 }
13908 void parser___ReduceAction142___action(val_t self, val_t param0) {
13909 struct trace_t trace = {NULL, NULL, 7181, LOCATE_parser___ReduceAction142___action};
13910 val_t variable0;
13911 val_t variable1;
13912 val_t variable2;
13913 val_t variable3;
13914 val_t variable4;
13915 val_t variable5;
13916 val_t variable6;
13917 val_t variable7;
13918 val_t variable8;
13919 val_t variable9;
13920 val_t variable10;
13921 val_t variable11;
13922 val_t variable12;
13923 val_t variable13;
13924 val_t variable14;
13925 val_t variable15;
13926 val_t variable16;
13927 val_t variable17;
13928 val_t variable18;
13929 val_t variable19;
13930 val_t variable20;
13931 val_t variable21;
13932 val_t variable22;
13933 trace.prev = tracehead; tracehead = &trace;
13934 trace.file = LOCATE_parser;
13935 variable0 = param0;
13936 variable1 = NIT_NULL /*null*/;
13937 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13938 variable2 = variable3;
13939 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13940 variable3 = variable4;
13941 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13942 variable4 = variable5;
13943 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13944 variable5 = variable6;
13945 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13946 variable6 = variable7;
13947 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13948 variable7 = variable8;
13949 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13950 variable8 = variable9;
13951 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13952 variable9 = variable10;
13953 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13954 variable10 = variable11;
13955 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
13956 variable11 = variable12;
13957 variable12 = variable11 /*nodearraylist1*/;
13958 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
13959 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7195); nit_exit(1);}
13960 variable13 = variable10 /*nodearraylist2*/;
13961 variable14 = TAG_Bool(( variable13 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13962 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7197); nit_exit(1);}
13963 variable14 = variable9 /*nodearraylist3*/;
13964 variable15 = TAG_Bool(( variable14 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
13965 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7199); nit_exit(1);}
13966 variable16 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode5*/, variable14 /*tkwwritablenode6*/); /*new AWriteAble*/
13967 variable15 = variable16;
13968 variable16 = variable8 /*nodearraylist4*/;
13969 variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
13970 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7205); nit_exit(1);}
13971 variable17 = variable7 /*nodearraylist5*/;
13972 variable18 = TAG_Bool(( variable17 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
13973 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7207); nit_exit(1);}
13974 variable18 = variable6 /*nodearraylist6*/;
13975 variable19 = TAG_Bool(( variable18 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
13976 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7209); nit_exit(1);}
13977 variable19 = variable5 /*nodearraylist7*/;
13978 variable20 = TAG_Bool(( variable19 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
13979 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7211); nit_exit(1);}
13980 variable20 = variable2 /*nodearraylist10*/;
13981 variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
13982 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction142___action, LOCATE_parser, 7213); nit_exit(1);}
13983 variable22 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pablenode4*/, variable16 /*tkwredefnode7*/, variable17 /*pvisibilitynode8*/, variable18 /*tkwattrnode9*/, variable19 /*tattridnode10*/, NIT_NULL /*null*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/
13984 variable21 = variable22;
13985 variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/;
13986 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
13987 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
13988 tracehead = trace.prev;
13989 return;
13990 }
13991 void parser___ReduceAction142___init(val_t self, int* init_table) {
13992 struct trace_t trace = {NULL, NULL, 7228, LOCATE_parser___ReduceAction142___init};
13993 trace.prev = tracehead; tracehead = &trace;
13994 trace.file = LOCATE_parser;
13995 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction142].i]) return;
13996 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction142].i] = 1;
13997 tracehead = trace.prev;
13998 return;
13999 }
14000 void parser___ReduceAction143___action(val_t self, val_t param0) {
14001 struct trace_t trace = {NULL, NULL, 7232, LOCATE_parser___ReduceAction143___action};
14002 val_t variable0;
14003 val_t variable1;
14004 val_t variable2;
14005 val_t variable3;
14006 val_t variable4;
14007 val_t variable5;
14008 val_t variable6;
14009 val_t variable7;
14010 val_t variable8;
14011 val_t variable9;
14012 val_t variable10;
14013 val_t variable11;
14014 val_t variable12;
14015 val_t variable13;
14016 val_t variable14;
14017 val_t variable15;
14018 val_t variable16;
14019 val_t variable17;
14020 trace.prev = tracehead; tracehead = &trace;
14021 trace.file = LOCATE_parser;
14022 variable0 = param0;
14023 variable1 = NIT_NULL /*null*/;
14024 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14025 variable2 = variable3;
14026 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14027 variable3 = variable4;
14028 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14029 variable4 = variable5;
14030 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14031 variable5 = variable6;
14032 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14033 variable6 = variable7;
14034 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14035 variable7 = variable8;
14036 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14037 variable8 = variable9;
14038 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14039 variable9 = variable10;
14040 variable10 = variable9 /*nodearraylist1*/;
14041 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14042 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction143___action, LOCATE_parser, 7244); nit_exit(1);}
14043 variable11 = variable8 /*nodearraylist2*/;
14044 variable12 = TAG_Bool(( variable11 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14045 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction143___action, LOCATE_parser, 7246); nit_exit(1);}
14046 variable12 = variable7 /*nodearraylist3*/;
14047 variable13 = TAG_Bool(( variable12 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14048 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction143___action, LOCATE_parser, 7248); nit_exit(1);}
14049 variable13 = variable6 /*nodearraylist4*/;
14050 variable14 = TAG_Bool(( variable13 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable13 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14051 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction143___action, LOCATE_parser, 7250); nit_exit(1);}
14052 variable14 = variable5 /*nodearraylist5*/;
14053 variable15 = TAG_Bool(( variable14 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable14 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14054 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction143___action, LOCATE_parser, 7252); nit_exit(1);}
14055 variable15 = variable2 /*nodearraylist8*/;
14056 variable16 = TAG_Bool(( variable15 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14057 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction143___action, LOCATE_parser, 7254); nit_exit(1);}
14058 variable17 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable11 /*tkwredefnode5*/, variable12 /*pvisibilitynode6*/, variable13 /*tkwattrnode7*/, variable14 /*tattridnode8*/, NIT_NULL /*null*/, variable15 /*pexprnode10*/); /*new AAttrPropdef*/
14059 variable16 = variable17;
14060 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
14061 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14062 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
14063 tracehead = trace.prev;
14064 return;
14065 }
14066 void parser___ReduceAction143___init(val_t self, int* init_table) {
14067 struct trace_t trace = {NULL, NULL, 7269, LOCATE_parser___ReduceAction143___init};
14068 trace.prev = tracehead; tracehead = &trace;
14069 trace.file = LOCATE_parser;
14070 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction143].i]) return;
14071 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction143].i] = 1;
14072 tracehead = trace.prev;
14073 return;
14074 }
14075 void parser___ReduceAction144___action(val_t self, val_t param0) {
14076 struct trace_t trace = {NULL, NULL, 7273, LOCATE_parser___ReduceAction144___action};
14077 val_t variable0;
14078 val_t variable1;
14079 val_t variable2;
14080 val_t variable3;
14081 val_t variable4;
14082 val_t variable5;
14083 val_t variable6;
14084 val_t variable7;
14085 val_t variable8;
14086 val_t variable9;
14087 val_t variable10;
14088 val_t variable11;
14089 val_t variable12;
14090 val_t variable13;
14091 val_t variable14;
14092 val_t variable15;
14093 val_t variable16;
14094 val_t variable17;
14095 val_t variable18;
14096 val_t variable19;
14097 val_t variable20;
14098 val_t variable21;
14099 val_t variable22;
14100 val_t variable23;
14101 trace.prev = tracehead; tracehead = &trace;
14102 trace.file = LOCATE_parser;
14103 variable0 = param0;
14104 variable1 = NIT_NULL /*null*/;
14105 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14106 variable2 = variable3;
14107 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14108 variable3 = variable4;
14109 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14110 variable4 = variable5;
14111 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14112 variable5 = variable6;
14113 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14114 variable6 = variable7;
14115 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14116 variable7 = variable8;
14117 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14118 variable8 = variable9;
14119 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14120 variable9 = variable10;
14121 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14122 variable10 = variable11;
14123 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14124 variable11 = variable12;
14125 variable12 = variable11 /*nodearraylist1*/;
14126 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14127 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7287); nit_exit(1);}
14128 variable13 = variable10 /*nodearraylist2*/;
14129 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
14130 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7289); nit_exit(1);}
14131 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
14132 variable14 = variable15;
14133 variable15 = variable9 /*nodearraylist3*/;
14134 variable16 = TAG_Bool(( variable15 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
14135 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7295); nit_exit(1);}
14136 variable17 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable15 /*tkwwritablenode8*/); /*new AWriteAble*/
14137 variable16 = variable17;
14138 variable17 = variable8 /*nodearraylist4*/;
14139 variable18 = TAG_Bool(( variable17 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable17 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14140 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7301); nit_exit(1);}
14141 variable18 = variable7 /*nodearraylist5*/;
14142 variable19 = TAG_Bool(( variable18 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable18 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14143 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7303); nit_exit(1);}
14144 variable19 = variable6 /*nodearraylist6*/;
14145 variable20 = TAG_Bool(( variable19 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable19 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14146 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7305); nit_exit(1);}
14147 variable20 = variable5 /*nodearraylist7*/;
14148 variable21 = TAG_Bool(( variable20 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable20 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
14149 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7307); nit_exit(1);}
14150 variable21 = variable2 /*nodearraylist10*/;
14151 variable22 = TAG_Bool(( variable21 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable21 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14152 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction144___action, LOCATE_parser, 7309); nit_exit(1);}
14153 variable23 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, variable16 /*pablenode6*/, NIT_NULL /*null*/, variable17 /*pvisibilitynode10*/, variable18 /*tkwattrnode11*/, variable19 /*tattridnode12*/, variable20 /*ptypenode13*/, variable21 /*pexprnode14*/); /*new AAttrPropdef*/
14154 variable22 = variable23;
14155 variable1 = variable22 /*ppropdefnode1*/ /*node_list=*/;
14156 variable23 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14157 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable23, variable1 /*node_list*/) /*Parser::push*/;
14158 tracehead = trace.prev;
14159 return;
14160 }
14161 void parser___ReduceAction144___init(val_t self, int* init_table) {
14162 struct trace_t trace = {NULL, NULL, 7324, LOCATE_parser___ReduceAction144___init};
14163 trace.prev = tracehead; tracehead = &trace;
14164 trace.file = LOCATE_parser;
14165 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction144].i]) return;
14166 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction144].i] = 1;
14167 tracehead = trace.prev;
14168 return;
14169 }
14170 void parser___ReduceAction145___action(val_t self, val_t param0) {
14171 struct trace_t trace = {NULL, NULL, 7328, LOCATE_parser___ReduceAction145___action};
14172 val_t variable0;
14173 val_t variable1;
14174 val_t variable2;
14175 val_t variable3;
14176 val_t variable4;
14177 val_t variable5;
14178 val_t variable6;
14179 val_t variable7;
14180 val_t variable8;
14181 val_t variable9;
14182 val_t variable10;
14183 val_t variable11;
14184 val_t variable12;
14185 val_t variable13;
14186 val_t variable14;
14187 val_t variable15;
14188 val_t variable16;
14189 val_t variable17;
14190 val_t variable18;
14191 val_t variable19;
14192 val_t variable20;
14193 val_t variable21;
14194 val_t variable22;
14195 val_t variable23;
14196 val_t variable24;
14197 val_t variable25;
14198 trace.prev = tracehead; tracehead = &trace;
14199 trace.file = LOCATE_parser;
14200 variable0 = param0;
14201 variable1 = NIT_NULL /*null*/;
14202 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14203 variable2 = variable3;
14204 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14205 variable3 = variable4;
14206 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14207 variable4 = variable5;
14208 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14209 variable5 = variable6;
14210 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14211 variable6 = variable7;
14212 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14213 variable7 = variable8;
14214 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14215 variable8 = variable9;
14216 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14217 variable9 = variable10;
14218 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14219 variable10 = variable11;
14220 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14221 variable11 = variable12;
14222 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14223 variable12 = variable13;
14224 variable13 = variable12 /*nodearraylist1*/;
14225 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14226 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7343); nit_exit(1);}
14227 variable14 = variable11 /*nodearraylist2*/;
14228 variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
14229 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7345); nit_exit(1);}
14230 variable16 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/
14231 variable15 = variable16;
14232 variable16 = variable10 /*nodearraylist3*/;
14233 variable17 = TAG_Bool(( variable16 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14234 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7351); nit_exit(1);}
14235 variable17 = variable9 /*nodearraylist4*/;
14236 variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
14237 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7353); nit_exit(1);}
14238 variable19 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable16 /*tkwredefnode7*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/
14239 variable18 = variable19;
14240 variable19 = variable8 /*nodearraylist5*/;
14241 variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14242 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7359); nit_exit(1);}
14243 variable20 = variable7 /*nodearraylist6*/;
14244 variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14245 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7361); nit_exit(1);}
14246 variable21 = variable6 /*nodearraylist7*/;
14247 variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14248 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7363); nit_exit(1);}
14249 variable22 = variable5 /*nodearraylist8*/;
14250 variable23 = TAG_Bool(( variable22 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable22 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
14251 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7365); nit_exit(1);}
14252 variable23 = variable2 /*nodearraylist11*/;
14253 variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14254 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction145___action, LOCATE_parser, 7367); nit_exit(1);}
14255 variable25 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable15 /*pablenode3*/, variable18 /*pablenode6*/, NIT_NULL /*null*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, variable22 /*ptypenode13*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/
14256 variable24 = variable25;
14257 variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/;
14258 variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14259 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/;
14260 tracehead = trace.prev;
14261 return;
14262 }
14263 void parser___ReduceAction145___init(val_t self, int* init_table) {
14264 struct trace_t trace = {NULL, NULL, 7382, LOCATE_parser___ReduceAction145___init};
14265 trace.prev = tracehead; tracehead = &trace;
14266 trace.file = LOCATE_parser;
14267 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction145].i]) return;
14268 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction145].i] = 1;
14269 tracehead = trace.prev;
14270 return;
14271 }
14272 void parser___ReduceAction146___action(val_t self, val_t param0) {
14273 struct trace_t trace = {NULL, NULL, 7386, LOCATE_parser___ReduceAction146___action};
14274 val_t variable0;
14275 val_t variable1;
14276 val_t variable2;
14277 val_t variable3;
14278 val_t variable4;
14279 val_t variable5;
14280 val_t variable6;
14281 val_t variable7;
14282 val_t variable8;
14283 val_t variable9;
14284 val_t variable10;
14285 val_t variable11;
14286 val_t variable12;
14287 val_t variable13;
14288 val_t variable14;
14289 val_t variable15;
14290 val_t variable16;
14291 val_t variable17;
14292 val_t variable18;
14293 val_t variable19;
14294 val_t variable20;
14295 trace.prev = tracehead; tracehead = &trace;
14296 trace.file = LOCATE_parser;
14297 variable0 = param0;
14298 variable1 = NIT_NULL /*null*/;
14299 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14300 variable2 = variable3;
14301 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14302 variable3 = variable4;
14303 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14304 variable4 = variable5;
14305 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14306 variable5 = variable6;
14307 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14308 variable6 = variable7;
14309 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14310 variable7 = variable8;
14311 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14312 variable8 = variable9;
14313 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14314 variable9 = variable10;
14315 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14316 variable10 = variable11;
14317 variable11 = variable10 /*nodearraylist1*/;
14318 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14319 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction146___action, LOCATE_parser, 7399); nit_exit(1);}
14320 variable12 = variable9 /*nodearraylist2*/;
14321 variable13 = TAG_Bool(( variable12 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
14322 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction146___action, LOCATE_parser, 7401); nit_exit(1);}
14323 variable14 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable12 /*tkwreadablenode5*/); /*new AReadAble*/
14324 variable13 = variable14;
14325 variable14 = variable8 /*nodearraylist3*/;
14326 variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14327 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction146___action, LOCATE_parser, 7407); nit_exit(1);}
14328 variable15 = variable7 /*nodearraylist4*/;
14329 variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14330 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction146___action, LOCATE_parser, 7409); nit_exit(1);}
14331 variable16 = variable6 /*nodearraylist5*/;
14332 variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14333 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction146___action, LOCATE_parser, 7411); nit_exit(1);}
14334 variable17 = variable5 /*nodearraylist6*/;
14335 variable18 = TAG_Bool(( variable17 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable17 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
14336 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction146___action, LOCATE_parser, 7413); nit_exit(1);}
14337 variable18 = variable2 /*nodearraylist9*/;
14338 variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14339 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction146___action, LOCATE_parser, 7415); nit_exit(1);}
14340 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, variable13 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, variable17 /*ptypenode11*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/
14341 variable19 = variable20;
14342 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
14343 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14344 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
14345 tracehead = trace.prev;
14346 return;
14347 }
14348 void parser___ReduceAction146___init(val_t self, int* init_table) {
14349 struct trace_t trace = {NULL, NULL, 7430, LOCATE_parser___ReduceAction146___init};
14350 trace.prev = tracehead; tracehead = &trace;
14351 trace.file = LOCATE_parser;
14352 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction146].i]) return;
14353 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction146].i] = 1;
14354 tracehead = trace.prev;
14355 return;
14356 }
14357 void parser___ReduceAction147___action(val_t self, val_t param0) {
14358 struct trace_t trace = {NULL, NULL, 7434, LOCATE_parser___ReduceAction147___action};
14359 val_t variable0;
14360 val_t variable1;
14361 val_t variable2;
14362 val_t variable3;
14363 val_t variable4;
14364 val_t variable5;
14365 val_t variable6;
14366 val_t variable7;
14367 val_t variable8;
14368 val_t variable9;
14369 val_t variable10;
14370 val_t variable11;
14371 val_t variable12;
14372 val_t variable13;
14373 val_t variable14;
14374 val_t variable15;
14375 val_t variable16;
14376 val_t variable17;
14377 val_t variable18;
14378 val_t variable19;
14379 val_t variable20;
14380 val_t variable21;
14381 val_t variable22;
14382 val_t variable23;
14383 val_t variable24;
14384 val_t variable25;
14385 trace.prev = tracehead; tracehead = &trace;
14386 trace.file = LOCATE_parser;
14387 variable0 = param0;
14388 variable1 = NIT_NULL /*null*/;
14389 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14390 variable2 = variable3;
14391 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14392 variable3 = variable4;
14393 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14394 variable4 = variable5;
14395 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14396 variable5 = variable6;
14397 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14398 variable6 = variable7;
14399 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14400 variable7 = variable8;
14401 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14402 variable8 = variable9;
14403 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14404 variable9 = variable10;
14405 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14406 variable10 = variable11;
14407 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14408 variable11 = variable12;
14409 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14410 variable12 = variable13;
14411 variable13 = variable12 /*nodearraylist1*/;
14412 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14413 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7449); nit_exit(1);}
14414 variable14 = variable11 /*nodearraylist2*/;
14415 variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14416 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7451); nit_exit(1);}
14417 variable15 = variable10 /*nodearraylist3*/;
14418 variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
14419 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7453); nit_exit(1);}
14420 variable17 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/
14421 variable16 = variable17;
14422 variable17 = variable9 /*nodearraylist4*/;
14423 variable18 = TAG_Bool(( variable17 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable17 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
14424 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7459); nit_exit(1);}
14425 variable19 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable17 /*tkwwritablenode8*/); /*new AWriteAble*/
14426 variable18 = variable19;
14427 variable19 = variable8 /*nodearraylist5*/;
14428 variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14429 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7465); nit_exit(1);}
14430 variable20 = variable7 /*nodearraylist6*/;
14431 variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14432 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7467); nit_exit(1);}
14433 variable21 = variable6 /*nodearraylist7*/;
14434 variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14435 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7469); nit_exit(1);}
14436 variable22 = variable5 /*nodearraylist8*/;
14437 variable23 = TAG_Bool(( variable22 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable22 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
14438 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7471); nit_exit(1);}
14439 variable23 = variable2 /*nodearraylist11*/;
14440 variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14441 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction147___action, LOCATE_parser, 7473); nit_exit(1);}
14442 variable25 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, variable18 /*pablenode6*/, NIT_NULL /*null*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, variable22 /*ptypenode13*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/
14443 variable24 = variable25;
14444 variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/;
14445 variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14446 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/;
14447 tracehead = trace.prev;
14448 return;
14449 }
14450 void parser___ReduceAction147___init(val_t self, int* init_table) {
14451 struct trace_t trace = {NULL, NULL, 7488, LOCATE_parser___ReduceAction147___init};
14452 trace.prev = tracehead; tracehead = &trace;
14453 trace.file = LOCATE_parser;
14454 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction147].i]) return;
14455 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction147].i] = 1;
14456 tracehead = trace.prev;
14457 return;
14458 }
14459 void parser___ReduceAction148___action(val_t self, val_t param0) {
14460 struct trace_t trace = {NULL, NULL, 7492, LOCATE_parser___ReduceAction148___action};
14461 val_t variable0;
14462 val_t variable1;
14463 val_t variable2;
14464 val_t variable3;
14465 val_t variable4;
14466 val_t variable5;
14467 val_t variable6;
14468 val_t variable7;
14469 val_t variable8;
14470 val_t variable9;
14471 val_t variable10;
14472 val_t variable11;
14473 val_t variable12;
14474 val_t variable13;
14475 val_t variable14;
14476 val_t variable15;
14477 val_t variable16;
14478 val_t variable17;
14479 val_t variable18;
14480 val_t variable19;
14481 val_t variable20;
14482 val_t variable21;
14483 val_t variable22;
14484 val_t variable23;
14485 val_t variable24;
14486 val_t variable25;
14487 val_t variable26;
14488 val_t variable27;
14489 trace.prev = tracehead; tracehead = &trace;
14490 trace.file = LOCATE_parser;
14491 variable0 = param0;
14492 variable1 = NIT_NULL /*null*/;
14493 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14494 variable2 = variable3;
14495 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14496 variable3 = variable4;
14497 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14498 variable4 = variable5;
14499 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14500 variable5 = variable6;
14501 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14502 variable6 = variable7;
14503 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14504 variable7 = variable8;
14505 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14506 variable8 = variable9;
14507 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14508 variable9 = variable10;
14509 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14510 variable10 = variable11;
14511 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14512 variable11 = variable12;
14513 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14514 variable12 = variable13;
14515 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14516 variable13 = variable14;
14517 variable14 = variable13 /*nodearraylist1*/;
14518 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14519 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7508); nit_exit(1);}
14520 variable15 = variable12 /*nodearraylist2*/;
14521 variable16 = TAG_Bool(( variable15 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14522 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7510); nit_exit(1);}
14523 variable16 = variable11 /*nodearraylist3*/;
14524 variable17 = TAG_Bool(( variable16 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable16 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
14525 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7512); nit_exit(1);}
14526 variable18 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable15 /*tkwredefnode4*/, variable16 /*tkwreadablenode5*/); /*new AReadAble*/
14527 variable17 = variable18;
14528 variable18 = variable10 /*nodearraylist4*/;
14529 variable19 = TAG_Bool(( variable18 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14530 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7518); nit_exit(1);}
14531 variable19 = variable9 /*nodearraylist5*/;
14532 variable20 = TAG_Bool(( variable19 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable19 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
14533 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7520); nit_exit(1);}
14534 variable21 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable18 /*tkwredefnode7*/, variable19 /*tkwwritablenode8*/); /*new AWriteAble*/
14535 variable20 = variable21;
14536 variable21 = variable8 /*nodearraylist6*/;
14537 variable22 = TAG_Bool(( variable21 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable21 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14538 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7526); nit_exit(1);}
14539 variable22 = variable7 /*nodearraylist7*/;
14540 variable23 = TAG_Bool(( variable22 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable22 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14541 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7528); nit_exit(1);}
14542 variable23 = variable6 /*nodearraylist8*/;
14543 variable24 = TAG_Bool(( variable23 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable23 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14544 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7530); nit_exit(1);}
14545 variable24 = variable5 /*nodearraylist9*/;
14546 variable25 = TAG_Bool(( variable24 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable24 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
14547 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7532); nit_exit(1);}
14548 variable25 = variable2 /*nodearraylist12*/;
14549 variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14550 if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction148___action, LOCATE_parser, 7534); nit_exit(1);}
14551 variable27 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable17 /*pablenode3*/, variable20 /*pablenode6*/, NIT_NULL /*null*/, variable21 /*pvisibilitynode10*/, variable22 /*tkwattrnode11*/, variable23 /*tattridnode12*/, variable24 /*ptypenode13*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/
14552 variable26 = variable27;
14553 variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/;
14554 variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14555 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/;
14556 tracehead = trace.prev;
14557 return;
14558 }
14559 void parser___ReduceAction148___init(val_t self, int* init_table) {
14560 struct trace_t trace = {NULL, NULL, 7549, LOCATE_parser___ReduceAction148___init};
14561 trace.prev = tracehead; tracehead = &trace;
14562 trace.file = LOCATE_parser;
14563 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction148].i]) return;
14564 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction148].i] = 1;
14565 tracehead = trace.prev;
14566 return;
14567 }
14568 void parser___ReduceAction149___action(val_t self, val_t param0) {
14569 struct trace_t trace = {NULL, NULL, 7553, LOCATE_parser___ReduceAction149___action};
14570 val_t variable0;
14571 val_t variable1;
14572 val_t variable2;
14573 val_t variable3;
14574 val_t variable4;
14575 val_t variable5;
14576 val_t variable6;
14577 val_t variable7;
14578 val_t variable8;
14579 val_t variable9;
14580 val_t variable10;
14581 val_t variable11;
14582 val_t variable12;
14583 val_t variable13;
14584 val_t variable14;
14585 val_t variable15;
14586 val_t variable16;
14587 val_t variable17;
14588 val_t variable18;
14589 val_t variable19;
14590 val_t variable20;
14591 val_t variable21;
14592 val_t variable22;
14593 trace.prev = tracehead; tracehead = &trace;
14594 trace.file = LOCATE_parser;
14595 variable0 = param0;
14596 variable1 = NIT_NULL /*null*/;
14597 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14598 variable2 = variable3;
14599 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14600 variable3 = variable4;
14601 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14602 variable4 = variable5;
14603 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14604 variable5 = variable6;
14605 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14606 variable6 = variable7;
14607 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14608 variable7 = variable8;
14609 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14610 variable8 = variable9;
14611 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14612 variable9 = variable10;
14613 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14614 variable10 = variable11;
14615 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14616 variable11 = variable12;
14617 variable12 = variable11 /*nodearraylist1*/;
14618 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14619 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7567); nit_exit(1);}
14620 variable13 = variable10 /*nodearraylist2*/;
14621 variable14 = TAG_Bool(( variable13 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14622 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7569); nit_exit(1);}
14623 variable14 = variable9 /*nodearraylist3*/;
14624 variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
14625 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7571); nit_exit(1);}
14626 variable16 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable13 /*tkwredefnode4*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/
14627 variable15 = variable16;
14628 variable16 = variable8 /*nodearraylist4*/;
14629 variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14630 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7577); nit_exit(1);}
14631 variable17 = variable7 /*nodearraylist5*/;
14632 variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14633 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7579); nit_exit(1);}
14634 variable18 = variable6 /*nodearraylist6*/;
14635 variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14636 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7581); nit_exit(1);}
14637 variable19 = variable5 /*nodearraylist7*/;
14638 variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
14639 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7583); nit_exit(1);}
14640 variable20 = variable2 /*nodearraylist10*/;
14641 variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14642 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction149___action, LOCATE_parser, 7585); nit_exit(1);}
14643 variable22 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable15 /*pablenode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/
14644 variable21 = variable22;
14645 variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/;
14646 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14647 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
14648 tracehead = trace.prev;
14649 return;
14650 }
14651 void parser___ReduceAction149___init(val_t self, int* init_table) {
14652 struct trace_t trace = {NULL, NULL, 7600, LOCATE_parser___ReduceAction149___init};
14653 trace.prev = tracehead; tracehead = &trace;
14654 trace.file = LOCATE_parser;
14655 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction149].i]) return;
14656 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction149].i] = 1;
14657 tracehead = trace.prev;
14658 return;
14659 }
14660 void parser___ReduceAction150___action(val_t self, val_t param0) {
14661 struct trace_t trace = {NULL, NULL, 7604, LOCATE_parser___ReduceAction150___action};
14662 val_t variable0;
14663 val_t variable1;
14664 val_t variable2;
14665 val_t variable3;
14666 val_t variable4;
14667 val_t variable5;
14668 val_t variable6;
14669 val_t variable7;
14670 val_t variable8;
14671 val_t variable9;
14672 val_t variable10;
14673 val_t variable11;
14674 val_t variable12;
14675 val_t variable13;
14676 val_t variable14;
14677 val_t variable15;
14678 val_t variable16;
14679 val_t variable17;
14680 val_t variable18;
14681 val_t variable19;
14682 val_t variable20;
14683 trace.prev = tracehead; tracehead = &trace;
14684 trace.file = LOCATE_parser;
14685 variable0 = param0;
14686 variable1 = NIT_NULL /*null*/;
14687 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14688 variable2 = variable3;
14689 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14690 variable3 = variable4;
14691 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14692 variable4 = variable5;
14693 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14694 variable5 = variable6;
14695 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14696 variable6 = variable7;
14697 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14698 variable7 = variable8;
14699 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14700 variable8 = variable9;
14701 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14702 variable9 = variable10;
14703 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14704 variable10 = variable11;
14705 variable11 = variable10 /*nodearraylist1*/;
14706 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14707 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction150___action, LOCATE_parser, 7617); nit_exit(1);}
14708 variable12 = variable9 /*nodearraylist2*/;
14709 variable13 = TAG_Bool(( variable12 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable12 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
14710 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction150___action, LOCATE_parser, 7619); nit_exit(1);}
14711 variable14 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable12 /*tkwwritablenode6*/); /*new AWriteAble*/
14712 variable13 = variable14;
14713 variable14 = variable8 /*nodearraylist3*/;
14714 variable15 = TAG_Bool(( variable14 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14715 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction150___action, LOCATE_parser, 7625); nit_exit(1);}
14716 variable15 = variable7 /*nodearraylist4*/;
14717 variable16 = TAG_Bool(( variable15 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable15 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14718 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction150___action, LOCATE_parser, 7627); nit_exit(1);}
14719 variable16 = variable6 /*nodearraylist5*/;
14720 variable17 = TAG_Bool(( variable16 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable16 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14721 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction150___action, LOCATE_parser, 7629); nit_exit(1);}
14722 variable17 = variable5 /*nodearraylist6*/;
14723 variable18 = TAG_Bool(( variable17 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable17 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
14724 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction150___action, LOCATE_parser, 7631); nit_exit(1);}
14725 variable18 = variable2 /*nodearraylist9*/;
14726 variable19 = TAG_Bool(( variable18 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14727 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction150___action, LOCATE_parser, 7633); nit_exit(1);}
14728 variable20 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable13 /*pablenode4*/, NIT_NULL /*null*/, variable14 /*pvisibilitynode8*/, variable15 /*tkwattrnode9*/, variable16 /*tattridnode10*/, variable17 /*ptypenode11*/, variable18 /*pexprnode12*/); /*new AAttrPropdef*/
14729 variable19 = variable20;
14730 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
14731 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14732 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
14733 tracehead = trace.prev;
14734 return;
14735 }
14736 void parser___ReduceAction150___init(val_t self, int* init_table) {
14737 struct trace_t trace = {NULL, NULL, 7648, LOCATE_parser___ReduceAction150___init};
14738 trace.prev = tracehead; tracehead = &trace;
14739 trace.file = LOCATE_parser;
14740 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction150].i]) return;
14741 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction150].i] = 1;
14742 tracehead = trace.prev;
14743 return;
14744 }
14745 void parser___ReduceAction151___action(val_t self, val_t param0) {
14746 struct trace_t trace = {NULL, NULL, 7652, LOCATE_parser___ReduceAction151___action};
14747 val_t variable0;
14748 val_t variable1;
14749 val_t variable2;
14750 val_t variable3;
14751 val_t variable4;
14752 val_t variable5;
14753 val_t variable6;
14754 val_t variable7;
14755 val_t variable8;
14756 val_t variable9;
14757 val_t variable10;
14758 val_t variable11;
14759 val_t variable12;
14760 val_t variable13;
14761 val_t variable14;
14762 val_t variable15;
14763 val_t variable16;
14764 val_t variable17;
14765 val_t variable18;
14766 val_t variable19;
14767 val_t variable20;
14768 val_t variable21;
14769 val_t variable22;
14770 trace.prev = tracehead; tracehead = &trace;
14771 trace.file = LOCATE_parser;
14772 variable0 = param0;
14773 variable1 = NIT_NULL /*null*/;
14774 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14775 variable2 = variable3;
14776 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14777 variable3 = variable4;
14778 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14779 variable4 = variable5;
14780 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14781 variable5 = variable6;
14782 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14783 variable6 = variable7;
14784 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14785 variable7 = variable8;
14786 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14787 variable8 = variable9;
14788 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14789 variable9 = variable10;
14790 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14791 variable10 = variable11;
14792 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14793 variable11 = variable12;
14794 variable12 = variable11 /*nodearraylist1*/;
14795 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14796 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7666); nit_exit(1);}
14797 variable13 = variable10 /*nodearraylist2*/;
14798 variable14 = TAG_Bool(( variable13 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14799 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7668); nit_exit(1);}
14800 variable14 = variable9 /*nodearraylist3*/;
14801 variable15 = TAG_Bool(( variable14 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable14 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
14802 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7670); nit_exit(1);}
14803 variable16 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable13 /*tkwredefnode5*/, variable14 /*tkwwritablenode6*/); /*new AWriteAble*/
14804 variable15 = variable16;
14805 variable16 = variable8 /*nodearraylist4*/;
14806 variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14807 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7676); nit_exit(1);}
14808 variable17 = variable7 /*nodearraylist5*/;
14809 variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14810 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7678); nit_exit(1);}
14811 variable18 = variable6 /*nodearraylist6*/;
14812 variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14813 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7680); nit_exit(1);}
14814 variable19 = variable5 /*nodearraylist7*/;
14815 variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
14816 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7682); nit_exit(1);}
14817 variable20 = variable2 /*nodearraylist10*/;
14818 variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14819 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction151___action, LOCATE_parser, 7684); nit_exit(1);}
14820 variable22 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable15 /*pablenode4*/, NIT_NULL /*null*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/
14821 variable21 = variable22;
14822 variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/;
14823 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14824 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
14825 tracehead = trace.prev;
14826 return;
14827 }
14828 void parser___ReduceAction151___init(val_t self, int* init_table) {
14829 struct trace_t trace = {NULL, NULL, 7699, LOCATE_parser___ReduceAction151___init};
14830 trace.prev = tracehead; tracehead = &trace;
14831 trace.file = LOCATE_parser;
14832 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction151].i]) return;
14833 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction151].i] = 1;
14834 tracehead = trace.prev;
14835 return;
14836 }
14837 void parser___ReduceAction152___action(val_t self, val_t param0) {
14838 struct trace_t trace = {NULL, NULL, 7703, LOCATE_parser___ReduceAction152___action};
14839 val_t variable0;
14840 val_t variable1;
14841 val_t variable2;
14842 val_t variable3;
14843 val_t variable4;
14844 val_t variable5;
14845 val_t variable6;
14846 val_t variable7;
14847 val_t variable8;
14848 val_t variable9;
14849 val_t variable10;
14850 val_t variable11;
14851 val_t variable12;
14852 val_t variable13;
14853 val_t variable14;
14854 val_t variable15;
14855 val_t variable16;
14856 val_t variable17;
14857 trace.prev = tracehead; tracehead = &trace;
14858 trace.file = LOCATE_parser;
14859 variable0 = param0;
14860 variable1 = NIT_NULL /*null*/;
14861 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14862 variable2 = variable3;
14863 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14864 variable3 = variable4;
14865 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14866 variable4 = variable5;
14867 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14868 variable5 = variable6;
14869 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14870 variable6 = variable7;
14871 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14872 variable7 = variable8;
14873 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14874 variable8 = variable9;
14875 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14876 variable9 = variable10;
14877 variable10 = variable9 /*nodearraylist1*/;
14878 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14879 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction152___action, LOCATE_parser, 7715); nit_exit(1);}
14880 variable11 = variable8 /*nodearraylist2*/;
14881 variable12 = TAG_Bool(( variable11 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14882 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction152___action, LOCATE_parser, 7717); nit_exit(1);}
14883 variable12 = variable7 /*nodearraylist3*/;
14884 variable13 = TAG_Bool(( variable12 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable12 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14885 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction152___action, LOCATE_parser, 7719); nit_exit(1);}
14886 variable13 = variable6 /*nodearraylist4*/;
14887 variable14 = TAG_Bool(( variable13 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable13 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14888 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction152___action, LOCATE_parser, 7721); nit_exit(1);}
14889 variable14 = variable5 /*nodearraylist5*/;
14890 variable15 = TAG_Bool(( variable14 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/;
14891 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction152___action, LOCATE_parser, 7723); nit_exit(1);}
14892 variable15 = variable2 /*nodearraylist8*/;
14893 variable16 = TAG_Bool(( variable15 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14894 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction152___action, LOCATE_parser, 7725); nit_exit(1);}
14895 variable17 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode6*/, variable12 /*tkwattrnode7*/, variable13 /*tattridnode8*/, variable14 /*ptypenode9*/, variable15 /*pexprnode10*/); /*new AAttrPropdef*/
14896 variable16 = variable17;
14897 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
14898 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
14899 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
14900 tracehead = trace.prev;
14901 return;
14902 }
14903 void parser___ReduceAction152___init(val_t self, int* init_table) {
14904 struct trace_t trace = {NULL, NULL, 7740, LOCATE_parser___ReduceAction152___init};
14905 trace.prev = tracehead; tracehead = &trace;
14906 trace.file = LOCATE_parser;
14907 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction152].i]) return;
14908 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction152].i] = 1;
14909 tracehead = trace.prev;
14910 return;
14911 }
14912 void parser___ReduceAction153___action(val_t self, val_t param0) {
14913 struct trace_t trace = {NULL, NULL, 7744, LOCATE_parser___ReduceAction153___action};
14914 val_t variable0;
14915 val_t variable1;
14916 val_t variable2;
14917 val_t variable3;
14918 val_t variable4;
14919 val_t variable5;
14920 val_t variable6;
14921 val_t variable7;
14922 val_t variable8;
14923 val_t variable9;
14924 val_t variable10;
14925 val_t variable11;
14926 val_t variable12;
14927 val_t variable13;
14928 val_t variable14;
14929 val_t variable15;
14930 val_t variable16;
14931 val_t variable17;
14932 val_t variable18;
14933 val_t variable19;
14934 val_t variable20;
14935 val_t variable21;
14936 val_t variable22;
14937 val_t variable23;
14938 val_t variable24;
14939 val_t variable25;
14940 trace.prev = tracehead; tracehead = &trace;
14941 trace.file = LOCATE_parser;
14942 variable0 = param0;
14943 variable1 = NIT_NULL /*null*/;
14944 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14945 variable2 = variable3;
14946 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14947 variable3 = variable4;
14948 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14949 variable4 = variable5;
14950 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14951 variable5 = variable6;
14952 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14953 variable6 = variable7;
14954 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14955 variable7 = variable8;
14956 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14957 variable8 = variable9;
14958 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14959 variable9 = variable10;
14960 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14961 variable10 = variable11;
14962 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14963 variable11 = variable12;
14964 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
14965 variable12 = variable13;
14966 variable13 = variable12 /*nodearraylist1*/;
14967 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
14968 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7759); nit_exit(1);}
14969 variable14 = variable11 /*nodearraylist2*/;
14970 variable15 = TAG_Bool(( variable14 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
14971 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7761); nit_exit(1);}
14972 variable16 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable14 /*tkwreadablenode5*/); /*new AReadAble*/
14973 variable15 = variable16;
14974 variable16 = variable10 /*nodearraylist3*/;
14975 variable17 = TAG_Bool(( variable16 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable16 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
14976 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7767); nit_exit(1);}
14977 variable18 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable16 /*tkwwritablenode8*/); /*new AWriteAble*/
14978 variable17 = variable18;
14979 variable18 = variable9 /*nodearraylist4*/;
14980 variable19 = TAG_Bool(( variable18 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable18 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
14981 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7773); nit_exit(1);}
14982 variable19 = variable8 /*nodearraylist5*/;
14983 variable20 = TAG_Bool(( variable19 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable19 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
14984 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7775); nit_exit(1);}
14985 variable20 = variable7 /*nodearraylist6*/;
14986 variable21 = TAG_Bool(( variable20 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable20 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
14987 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7777); nit_exit(1);}
14988 variable21 = variable6 /*nodearraylist7*/;
14989 variable22 = TAG_Bool(( variable21 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable21 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
14990 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7779); nit_exit(1);}
14991 variable22 = variable5 /*nodearraylist8*/;
14992 variable23 = TAG_Bool(( variable22 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable22 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
14993 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7781); nit_exit(1);}
14994 variable23 = variable2 /*nodearraylist11*/;
14995 variable24 = TAG_Bool(( variable23 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable23 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
14996 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction153___action, LOCATE_parser, 7783); nit_exit(1);}
14997 variable25 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable15 /*pablenode3*/, variable17 /*pablenode6*/, variable18 /*tkwredefnode9*/, variable19 /*pvisibilitynode10*/, variable20 /*tkwattrnode11*/, variable21 /*tattridnode12*/, variable22 /*ptypenode13*/, variable23 /*pexprnode14*/); /*new AAttrPropdef*/
14998 variable24 = variable25;
14999 variable1 = variable24 /*ppropdefnode1*/ /*node_list=*/;
15000 variable25 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15001 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable25, variable1 /*node_list*/) /*Parser::push*/;
15002 tracehead = trace.prev;
15003 return;
15004 }
15005 void parser___ReduceAction153___init(val_t self, int* init_table) {
15006 struct trace_t trace = {NULL, NULL, 7798, LOCATE_parser___ReduceAction153___init};
15007 trace.prev = tracehead; tracehead = &trace;
15008 trace.file = LOCATE_parser;
15009 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction153].i]) return;
15010 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction153].i] = 1;
15011 tracehead = trace.prev;
15012 return;
15013 }
15014 void parser___ReduceAction154___action(val_t self, val_t param0) {
15015 struct trace_t trace = {NULL, NULL, 7802, LOCATE_parser___ReduceAction154___action};
15016 val_t variable0;
15017 val_t variable1;
15018 val_t variable2;
15019 val_t variable3;
15020 val_t variable4;
15021 val_t variable5;
15022 val_t variable6;
15023 val_t variable7;
15024 val_t variable8;
15025 val_t variable9;
15026 val_t variable10;
15027 val_t variable11;
15028 val_t variable12;
15029 val_t variable13;
15030 val_t variable14;
15031 val_t variable15;
15032 val_t variable16;
15033 val_t variable17;
15034 val_t variable18;
15035 val_t variable19;
15036 val_t variable20;
15037 val_t variable21;
15038 val_t variable22;
15039 val_t variable23;
15040 val_t variable24;
15041 val_t variable25;
15042 val_t variable26;
15043 val_t variable27;
15044 trace.prev = tracehead; tracehead = &trace;
15045 trace.file = LOCATE_parser;
15046 variable0 = param0;
15047 variable1 = NIT_NULL /*null*/;
15048 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15049 variable2 = variable3;
15050 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15051 variable3 = variable4;
15052 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15053 variable4 = variable5;
15054 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15055 variable5 = variable6;
15056 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15057 variable6 = variable7;
15058 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15059 variable7 = variable8;
15060 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15061 variable8 = variable9;
15062 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15063 variable9 = variable10;
15064 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15065 variable10 = variable11;
15066 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15067 variable11 = variable12;
15068 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15069 variable12 = variable13;
15070 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15071 variable13 = variable14;
15072 variable14 = variable13 /*nodearraylist1*/;
15073 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15074 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7818); nit_exit(1);}
15075 variable15 = variable12 /*nodearraylist2*/;
15076 variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
15077 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7820); nit_exit(1);}
15078 variable17 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/
15079 variable16 = variable17;
15080 variable17 = variable11 /*nodearraylist3*/;
15081 variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15082 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7826); nit_exit(1);}
15083 variable18 = variable10 /*nodearraylist4*/;
15084 variable19 = TAG_Bool(( variable18 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable18 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
15085 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7828); nit_exit(1);}
15086 variable20 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable17 /*tkwredefnode7*/, variable18 /*tkwwritablenode8*/); /*new AWriteAble*/
15087 variable19 = variable20;
15088 variable20 = variable9 /*nodearraylist5*/;
15089 variable21 = TAG_Bool(( variable20 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable20 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15090 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7834); nit_exit(1);}
15091 variable21 = variable8 /*nodearraylist6*/;
15092 variable22 = TAG_Bool(( variable21 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable21 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15093 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7836); nit_exit(1);}
15094 variable22 = variable7 /*nodearraylist7*/;
15095 variable23 = TAG_Bool(( variable22 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable22 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15096 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7838); nit_exit(1);}
15097 variable23 = variable6 /*nodearraylist8*/;
15098 variable24 = TAG_Bool(( variable23 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable23 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15099 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7840); nit_exit(1);}
15100 variable24 = variable5 /*nodearraylist9*/;
15101 variable25 = TAG_Bool(( variable24 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable24 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
15102 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7842); nit_exit(1);}
15103 variable25 = variable2 /*nodearraylist12*/;
15104 variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15105 if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction154___action, LOCATE_parser, 7844); nit_exit(1);}
15106 variable27 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable16 /*pablenode3*/, variable19 /*pablenode6*/, variable20 /*tkwredefnode9*/, variable21 /*pvisibilitynode10*/, variable22 /*tkwattrnode11*/, variable23 /*tattridnode12*/, variable24 /*ptypenode13*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/
15107 variable26 = variable27;
15108 variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/;
15109 variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15110 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/;
15111 tracehead = trace.prev;
15112 return;
15113 }
15114 void parser___ReduceAction154___init(val_t self, int* init_table) {
15115 struct trace_t trace = {NULL, NULL, 7859, LOCATE_parser___ReduceAction154___init};
15116 trace.prev = tracehead; tracehead = &trace;
15117 trace.file = LOCATE_parser;
15118 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction154].i]) return;
15119 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction154].i] = 1;
15120 tracehead = trace.prev;
15121 return;
15122 }
15123 void parser___ReduceAction155___action(val_t self, val_t param0) {
15124 struct trace_t trace = {NULL, NULL, 7863, LOCATE_parser___ReduceAction155___action};
15125 val_t variable0;
15126 val_t variable1;
15127 val_t variable2;
15128 val_t variable3;
15129 val_t variable4;
15130 val_t variable5;
15131 val_t variable6;
15132 val_t variable7;
15133 val_t variable8;
15134 val_t variable9;
15135 val_t variable10;
15136 val_t variable11;
15137 val_t variable12;
15138 val_t variable13;
15139 val_t variable14;
15140 val_t variable15;
15141 val_t variable16;
15142 val_t variable17;
15143 val_t variable18;
15144 val_t variable19;
15145 val_t variable20;
15146 val_t variable21;
15147 val_t variable22;
15148 trace.prev = tracehead; tracehead = &trace;
15149 trace.file = LOCATE_parser;
15150 variable0 = param0;
15151 variable1 = NIT_NULL /*null*/;
15152 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15153 variable2 = variable3;
15154 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15155 variable3 = variable4;
15156 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15157 variable4 = variable5;
15158 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15159 variable5 = variable6;
15160 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15161 variable6 = variable7;
15162 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15163 variable7 = variable8;
15164 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15165 variable8 = variable9;
15166 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15167 variable9 = variable10;
15168 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15169 variable10 = variable11;
15170 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15171 variable11 = variable12;
15172 variable12 = variable11 /*nodearraylist1*/;
15173 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15174 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7877); nit_exit(1);}
15175 variable13 = variable10 /*nodearraylist2*/;
15176 variable14 = TAG_Bool(( variable13 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
15177 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7879); nit_exit(1);}
15178 variable15 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( NIT_NULL /*null*/, variable13 /*tkwreadablenode5*/); /*new AReadAble*/
15179 variable14 = variable15;
15180 variable15 = variable9 /*nodearraylist3*/;
15181 variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15182 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7885); nit_exit(1);}
15183 variable16 = variable8 /*nodearraylist4*/;
15184 variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15185 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7887); nit_exit(1);}
15186 variable17 = variable7 /*nodearraylist5*/;
15187 variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15188 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7889); nit_exit(1);}
15189 variable18 = variable6 /*nodearraylist6*/;
15190 variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15191 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7891); nit_exit(1);}
15192 variable19 = variable5 /*nodearraylist7*/;
15193 variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
15194 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7893); nit_exit(1);}
15195 variable20 = variable2 /*nodearraylist10*/;
15196 variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15197 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction155___action, LOCATE_parser, 7895); nit_exit(1);}
15198 variable22 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, variable14 /*pablenode3*/, NIT_NULL /*null*/, variable15 /*tkwredefnode7*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/
15199 variable21 = variable22;
15200 variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/;
15201 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15202 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
15203 tracehead = trace.prev;
15204 return;
15205 }
15206 void parser___ReduceAction155___init(val_t self, int* init_table) {
15207 struct trace_t trace = {NULL, NULL, 7910, LOCATE_parser___ReduceAction155___init};
15208 trace.prev = tracehead; tracehead = &trace;
15209 trace.file = LOCATE_parser;
15210 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction155].i]) return;
15211 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction155].i] = 1;
15212 tracehead = trace.prev;
15213 return;
15214 }
15215 void parser___ReduceAction156___action(val_t self, val_t param0) {
15216 struct trace_t trace = {NULL, NULL, 7914, LOCATE_parser___ReduceAction156___action};
15217 val_t variable0;
15218 val_t variable1;
15219 val_t variable2;
15220 val_t variable3;
15221 val_t variable4;
15222 val_t variable5;
15223 val_t variable6;
15224 val_t variable7;
15225 val_t variable8;
15226 val_t variable9;
15227 val_t variable10;
15228 val_t variable11;
15229 val_t variable12;
15230 val_t variable13;
15231 val_t variable14;
15232 val_t variable15;
15233 val_t variable16;
15234 val_t variable17;
15235 val_t variable18;
15236 val_t variable19;
15237 val_t variable20;
15238 val_t variable21;
15239 val_t variable22;
15240 val_t variable23;
15241 val_t variable24;
15242 val_t variable25;
15243 val_t variable26;
15244 val_t variable27;
15245 trace.prev = tracehead; tracehead = &trace;
15246 trace.file = LOCATE_parser;
15247 variable0 = param0;
15248 variable1 = NIT_NULL /*null*/;
15249 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15250 variable2 = variable3;
15251 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15252 variable3 = variable4;
15253 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15254 variable4 = variable5;
15255 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15256 variable5 = variable6;
15257 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15258 variable6 = variable7;
15259 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15260 variable7 = variable8;
15261 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15262 variable8 = variable9;
15263 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15264 variable9 = variable10;
15265 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15266 variable10 = variable11;
15267 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15268 variable11 = variable12;
15269 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15270 variable12 = variable13;
15271 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15272 variable13 = variable14;
15273 variable14 = variable13 /*nodearraylist1*/;
15274 variable15 = TAG_Bool(( variable14 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable14 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15275 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7930); nit_exit(1);}
15276 variable15 = variable12 /*nodearraylist2*/;
15277 variable16 = TAG_Bool(( variable15 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15278 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7932); nit_exit(1);}
15279 variable16 = variable11 /*nodearraylist3*/;
15280 variable17 = TAG_Bool(( variable16 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable16 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
15281 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7934); nit_exit(1);}
15282 variable18 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable15 /*tkwredefnode4*/, variable16 /*tkwreadablenode5*/); /*new AReadAble*/
15283 variable17 = variable18;
15284 variable18 = variable10 /*nodearraylist4*/;
15285 variable19 = TAG_Bool(( variable18 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable18 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
15286 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7940); nit_exit(1);}
15287 variable20 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable18 /*tkwwritablenode8*/); /*new AWriteAble*/
15288 variable19 = variable20;
15289 variable20 = variable9 /*nodearraylist5*/;
15290 variable21 = TAG_Bool(( variable20 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable20 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15291 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7946); nit_exit(1);}
15292 variable21 = variable8 /*nodearraylist6*/;
15293 variable22 = TAG_Bool(( variable21 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable21 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15294 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7948); nit_exit(1);}
15295 variable22 = variable7 /*nodearraylist7*/;
15296 variable23 = TAG_Bool(( variable22 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable22 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15297 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7950); nit_exit(1);}
15298 variable23 = variable6 /*nodearraylist8*/;
15299 variable24 = TAG_Bool(( variable23 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable23 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15300 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7952); nit_exit(1);}
15301 variable24 = variable5 /*nodearraylist9*/;
15302 variable25 = TAG_Bool(( variable24 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable24 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
15303 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7954); nit_exit(1);}
15304 variable25 = variable2 /*nodearraylist12*/;
15305 variable26 = TAG_Bool(( variable25 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable25 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15306 if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction156___action, LOCATE_parser, 7956); nit_exit(1);}
15307 variable27 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable14 /*pdocnode2*/, variable17 /*pablenode3*/, variable19 /*pablenode6*/, variable20 /*tkwredefnode9*/, variable21 /*pvisibilitynode10*/, variable22 /*tkwattrnode11*/, variable23 /*tattridnode12*/, variable24 /*ptypenode13*/, variable25 /*pexprnode14*/); /*new AAttrPropdef*/
15308 variable26 = variable27;
15309 variable1 = variable26 /*ppropdefnode1*/ /*node_list=*/;
15310 variable27 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15311 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable27, variable1 /*node_list*/) /*Parser::push*/;
15312 tracehead = trace.prev;
15313 return;
15314 }
15315 void parser___ReduceAction156___init(val_t self, int* init_table) {
15316 struct trace_t trace = {NULL, NULL, 7971, LOCATE_parser___ReduceAction156___init};
15317 trace.prev = tracehead; tracehead = &trace;
15318 trace.file = LOCATE_parser;
15319 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction156].i]) return;
15320 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction156].i] = 1;
15321 tracehead = trace.prev;
15322 return;
15323 }
15324 void parser___ReduceAction157___action(val_t self, val_t param0) {
15325 struct trace_t trace = {NULL, NULL, 7975, LOCATE_parser___ReduceAction157___action};
15326 val_t variable0;
15327 val_t variable1;
15328 val_t variable2;
15329 val_t variable3;
15330 val_t variable4;
15331 val_t variable5;
15332 val_t variable6;
15333 val_t variable7;
15334 val_t variable8;
15335 val_t variable9;
15336 val_t variable10;
15337 val_t variable11;
15338 val_t variable12;
15339 val_t variable13;
15340 val_t variable14;
15341 val_t variable15;
15342 val_t variable16;
15343 val_t variable17;
15344 val_t variable18;
15345 val_t variable19;
15346 val_t variable20;
15347 val_t variable21;
15348 val_t variable22;
15349 val_t variable23;
15350 val_t variable24;
15351 val_t variable25;
15352 val_t variable26;
15353 val_t variable27;
15354 val_t variable28;
15355 val_t variable29;
15356 trace.prev = tracehead; tracehead = &trace;
15357 trace.file = LOCATE_parser;
15358 variable0 = param0;
15359 variable1 = NIT_NULL /*null*/;
15360 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15361 variable2 = variable3;
15362 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15363 variable3 = variable4;
15364 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15365 variable4 = variable5;
15366 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15367 variable5 = variable6;
15368 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15369 variable6 = variable7;
15370 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15371 variable7 = variable8;
15372 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15373 variable8 = variable9;
15374 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15375 variable9 = variable10;
15376 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15377 variable10 = variable11;
15378 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15379 variable11 = variable12;
15380 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15381 variable12 = variable13;
15382 variable14 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15383 variable13 = variable14;
15384 variable15 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15385 variable14 = variable15;
15386 variable15 = variable14 /*nodearraylist1*/;
15387 variable16 = TAG_Bool(( variable15 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable15 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15388 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 7992); nit_exit(1);}
15389 variable16 = variable13 /*nodearraylist2*/;
15390 variable17 = TAG_Bool(( variable16 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable16 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15391 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 7994); nit_exit(1);}
15392 variable17 = variable12 /*nodearraylist3*/;
15393 variable18 = TAG_Bool(( variable17 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable17 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
15394 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 7996); nit_exit(1);}
15395 variable19 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable16 /*tkwredefnode4*/, variable17 /*tkwreadablenode5*/); /*new AReadAble*/
15396 variable18 = variable19;
15397 variable19 = variable11 /*nodearraylist4*/;
15398 variable20 = TAG_Bool(( variable19 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable19 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15399 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8002); nit_exit(1);}
15400 variable20 = variable10 /*nodearraylist5*/;
15401 variable21 = TAG_Bool(( variable20 /*tkwwritablenode8*/==NIT_NULL) || VAL_ISA( variable20 /*tkwwritablenode8*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
15402 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8004); nit_exit(1);}
15403 variable22 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable19 /*tkwredefnode7*/, variable20 /*tkwwritablenode8*/); /*new AWriteAble*/
15404 variable21 = variable22;
15405 variable22 = variable9 /*nodearraylist6*/;
15406 variable23 = TAG_Bool(( variable22 /*tkwredefnode9*/==NIT_NULL) || VAL_ISA( variable22 /*tkwredefnode9*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15407 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8010); nit_exit(1);}
15408 variable23 = variable8 /*nodearraylist7*/;
15409 variable24 = TAG_Bool(( variable23 /*pvisibilitynode10*/==NIT_NULL) || VAL_ISA( variable23 /*pvisibilitynode10*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15410 if (!UNTAG_Bool(variable24)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8012); nit_exit(1);}
15411 variable24 = variable7 /*nodearraylist8*/;
15412 variable25 = TAG_Bool(( variable24 /*tkwattrnode11*/==NIT_NULL) || VAL_ISA( variable24 /*tkwattrnode11*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15413 if (!UNTAG_Bool(variable25)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8014); nit_exit(1);}
15414 variable25 = variable6 /*nodearraylist9*/;
15415 variable26 = TAG_Bool(( variable25 /*tattridnode12*/==NIT_NULL) || VAL_ISA( variable25 /*tattridnode12*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15416 if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8016); nit_exit(1);}
15417 variable26 = variable5 /*nodearraylist10*/;
15418 variable27 = TAG_Bool(( variable26 /*ptypenode13*/==NIT_NULL) || VAL_ISA( variable26 /*ptypenode13*/, COLOR_PType, ID_PType)) /*cast PType*/;
15419 if (!UNTAG_Bool(variable27)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8018); nit_exit(1);}
15420 variable27 = variable2 /*nodearraylist13*/;
15421 variable28 = TAG_Bool(( variable27 /*pexprnode14*/==NIT_NULL) || VAL_ISA( variable27 /*pexprnode14*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15422 if (!UNTAG_Bool(variable28)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction157___action, LOCATE_parser, 8020); nit_exit(1);}
15423 variable29 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable15 /*pdocnode2*/, variable18 /*pablenode3*/, variable21 /*pablenode6*/, variable22 /*tkwredefnode9*/, variable23 /*pvisibilitynode10*/, variable24 /*tkwattrnode11*/, variable25 /*tattridnode12*/, variable26 /*ptypenode13*/, variable27 /*pexprnode14*/); /*new AAttrPropdef*/
15424 variable28 = variable29;
15425 variable1 = variable28 /*ppropdefnode1*/ /*node_list=*/;
15426 variable29 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15427 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable29, variable1 /*node_list*/) /*Parser::push*/;
15428 tracehead = trace.prev;
15429 return;
15430 }
15431 void parser___ReduceAction157___init(val_t self, int* init_table) {
15432 struct trace_t trace = {NULL, NULL, 8035, LOCATE_parser___ReduceAction157___init};
15433 trace.prev = tracehead; tracehead = &trace;
15434 trace.file = LOCATE_parser;
15435 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction157].i]) return;
15436 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction157].i] = 1;
15437 tracehead = trace.prev;
15438 return;
15439 }
15440 void parser___ReduceAction158___action(val_t self, val_t param0) {
15441 struct trace_t trace = {NULL, NULL, 8039, LOCATE_parser___ReduceAction158___action};
15442 val_t variable0;
15443 val_t variable1;
15444 val_t variable2;
15445 val_t variable3;
15446 val_t variable4;
15447 val_t variable5;
15448 val_t variable6;
15449 val_t variable7;
15450 val_t variable8;
15451 val_t variable9;
15452 val_t variable10;
15453 val_t variable11;
15454 val_t variable12;
15455 val_t variable13;
15456 val_t variable14;
15457 val_t variable15;
15458 val_t variable16;
15459 val_t variable17;
15460 val_t variable18;
15461 val_t variable19;
15462 val_t variable20;
15463 val_t variable21;
15464 val_t variable22;
15465 val_t variable23;
15466 val_t variable24;
15467 trace.prev = tracehead; tracehead = &trace;
15468 trace.file = LOCATE_parser;
15469 variable0 = param0;
15470 variable1 = NIT_NULL /*null*/;
15471 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15472 variable2 = variable3;
15473 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15474 variable3 = variable4;
15475 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15476 variable4 = variable5;
15477 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15478 variable5 = variable6;
15479 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15480 variable6 = variable7;
15481 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15482 variable7 = variable8;
15483 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15484 variable8 = variable9;
15485 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15486 variable9 = variable10;
15487 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15488 variable10 = variable11;
15489 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15490 variable11 = variable12;
15491 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15492 variable12 = variable13;
15493 variable13 = variable12 /*nodearraylist1*/;
15494 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15495 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8054); nit_exit(1);}
15496 variable14 = variable11 /*nodearraylist2*/;
15497 variable15 = TAG_Bool(( variable14 /*tkwredefnode4*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode4*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15498 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8056); nit_exit(1);}
15499 variable15 = variable10 /*nodearraylist3*/;
15500 variable16 = TAG_Bool(( variable15 /*tkwreadablenode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwreadablenode5*/, COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
15501 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8058); nit_exit(1);}
15502 variable17 = NEW_AReadAble_parser_prod___AReadAble___init_areadable( variable14 /*tkwredefnode4*/, variable15 /*tkwreadablenode5*/); /*new AReadAble*/
15503 variable16 = variable17;
15504 variable17 = variable9 /*nodearraylist4*/;
15505 variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15506 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8064); nit_exit(1);}
15507 variable18 = variable8 /*nodearraylist5*/;
15508 variable19 = TAG_Bool(( variable18 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15509 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8066); nit_exit(1);}
15510 variable19 = variable7 /*nodearraylist6*/;
15511 variable20 = TAG_Bool(( variable19 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15512 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8068); nit_exit(1);}
15513 variable20 = variable6 /*nodearraylist7*/;
15514 variable21 = TAG_Bool(( variable20 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15515 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8070); nit_exit(1);}
15516 variable21 = variable5 /*nodearraylist8*/;
15517 variable22 = TAG_Bool(( variable21 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
15518 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8072); nit_exit(1);}
15519 variable22 = variable2 /*nodearraylist11*/;
15520 variable23 = TAG_Bool(( variable22 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable22 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15521 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction158___action, LOCATE_parser, 8074); nit_exit(1);}
15522 variable24 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, variable16 /*pablenode3*/, NIT_NULL /*null*/, variable17 /*tkwredefnode7*/, variable18 /*pvisibilitynode8*/, variable19 /*tkwattrnode9*/, variable20 /*tattridnode10*/, variable21 /*ptypenode11*/, variable22 /*pexprnode12*/); /*new AAttrPropdef*/
15523 variable23 = variable24;
15524 variable1 = variable23 /*ppropdefnode1*/ /*node_list=*/;
15525 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15526 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
15527 tracehead = trace.prev;
15528 return;
15529 }
15530 void parser___ReduceAction158___init(val_t self, int* init_table) {
15531 struct trace_t trace = {NULL, NULL, 8089, LOCATE_parser___ReduceAction158___init};
15532 trace.prev = tracehead; tracehead = &trace;
15533 trace.file = LOCATE_parser;
15534 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction158].i]) return;
15535 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction158].i] = 1;
15536 tracehead = trace.prev;
15537 return;
15538 }
15539 void parser___ReduceAction159___action(val_t self, val_t param0) {
15540 struct trace_t trace = {NULL, NULL, 8093, LOCATE_parser___ReduceAction159___action};
15541 val_t variable0;
15542 val_t variable1;
15543 val_t variable2;
15544 val_t variable3;
15545 val_t variable4;
15546 val_t variable5;
15547 val_t variable6;
15548 val_t variable7;
15549 val_t variable8;
15550 val_t variable9;
15551 val_t variable10;
15552 val_t variable11;
15553 val_t variable12;
15554 val_t variable13;
15555 val_t variable14;
15556 val_t variable15;
15557 val_t variable16;
15558 val_t variable17;
15559 val_t variable18;
15560 val_t variable19;
15561 val_t variable20;
15562 val_t variable21;
15563 val_t variable22;
15564 trace.prev = tracehead; tracehead = &trace;
15565 trace.file = LOCATE_parser;
15566 variable0 = param0;
15567 variable1 = NIT_NULL /*null*/;
15568 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15569 variable2 = variable3;
15570 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15571 variable3 = variable4;
15572 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15573 variable4 = variable5;
15574 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15575 variable5 = variable6;
15576 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15577 variable6 = variable7;
15578 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15579 variable7 = variable8;
15580 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15581 variable8 = variable9;
15582 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15583 variable9 = variable10;
15584 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15585 variable10 = variable11;
15586 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15587 variable11 = variable12;
15588 variable12 = variable11 /*nodearraylist1*/;
15589 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15590 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8107); nit_exit(1);}
15591 variable13 = variable10 /*nodearraylist2*/;
15592 variable14 = TAG_Bool(( variable13 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable13 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
15593 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8109); nit_exit(1);}
15594 variable15 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( NIT_NULL /*null*/, variable13 /*tkwwritablenode6*/); /*new AWriteAble*/
15595 variable14 = variable15;
15596 variable15 = variable9 /*nodearraylist3*/;
15597 variable16 = TAG_Bool(( variable15 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable15 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15598 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8115); nit_exit(1);}
15599 variable16 = variable8 /*nodearraylist4*/;
15600 variable17 = TAG_Bool(( variable16 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable16 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15601 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8117); nit_exit(1);}
15602 variable17 = variable7 /*nodearraylist5*/;
15603 variable18 = TAG_Bool(( variable17 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable17 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15604 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8119); nit_exit(1);}
15605 variable18 = variable6 /*nodearraylist6*/;
15606 variable19 = TAG_Bool(( variable18 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable18 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15607 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8121); nit_exit(1);}
15608 variable19 = variable5 /*nodearraylist7*/;
15609 variable20 = TAG_Bool(( variable19 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable19 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
15610 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8123); nit_exit(1);}
15611 variable20 = variable2 /*nodearraylist10*/;
15612 variable21 = TAG_Bool(( variable20 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable20 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15613 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction159___action, LOCATE_parser, 8125); nit_exit(1);}
15614 variable22 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable12 /*pdocnode2*/, NIT_NULL /*null*/, variable14 /*pablenode4*/, variable15 /*tkwredefnode7*/, variable16 /*pvisibilitynode8*/, variable17 /*tkwattrnode9*/, variable18 /*tattridnode10*/, variable19 /*ptypenode11*/, variable20 /*pexprnode12*/); /*new AAttrPropdef*/
15615 variable21 = variable22;
15616 variable1 = variable21 /*ppropdefnode1*/ /*node_list=*/;
15617 variable22 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15618 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable22, variable1 /*node_list*/) /*Parser::push*/;
15619 tracehead = trace.prev;
15620 return;
15621 }
15622 void parser___ReduceAction159___init(val_t self, int* init_table) {
15623 struct trace_t trace = {NULL, NULL, 8140, LOCATE_parser___ReduceAction159___init};
15624 trace.prev = tracehead; tracehead = &trace;
15625 trace.file = LOCATE_parser;
15626 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction159].i]) return;
15627 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction159].i] = 1;
15628 tracehead = trace.prev;
15629 return;
15630 }
15631 void parser___ReduceAction160___action(val_t self, val_t param0) {
15632 struct trace_t trace = {NULL, NULL, 8144, LOCATE_parser___ReduceAction160___action};
15633 val_t variable0;
15634 val_t variable1;
15635 val_t variable2;
15636 val_t variable3;
15637 val_t variable4;
15638 val_t variable5;
15639 val_t variable6;
15640 val_t variable7;
15641 val_t variable8;
15642 val_t variable9;
15643 val_t variable10;
15644 val_t variable11;
15645 val_t variable12;
15646 val_t variable13;
15647 val_t variable14;
15648 val_t variable15;
15649 val_t variable16;
15650 val_t variable17;
15651 val_t variable18;
15652 val_t variable19;
15653 val_t variable20;
15654 val_t variable21;
15655 val_t variable22;
15656 val_t variable23;
15657 val_t variable24;
15658 trace.prev = tracehead; tracehead = &trace;
15659 trace.file = LOCATE_parser;
15660 variable0 = param0;
15661 variable1 = NIT_NULL /*null*/;
15662 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15663 variable2 = variable3;
15664 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15665 variable3 = variable4;
15666 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15667 variable4 = variable5;
15668 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15669 variable5 = variable6;
15670 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15671 variable6 = variable7;
15672 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15673 variable7 = variable8;
15674 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15675 variable8 = variable9;
15676 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15677 variable9 = variable10;
15678 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15679 variable10 = variable11;
15680 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15681 variable11 = variable12;
15682 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15683 variable12 = variable13;
15684 variable13 = variable12 /*nodearraylist1*/;
15685 variable14 = TAG_Bool(( variable13 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable13 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15686 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8159); nit_exit(1);}
15687 variable14 = variable11 /*nodearraylist2*/;
15688 variable15 = TAG_Bool(( variable14 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15689 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8161); nit_exit(1);}
15690 variable15 = variable10 /*nodearraylist3*/;
15691 variable16 = TAG_Bool(( variable15 /*tkwwritablenode6*/==NIT_NULL) || VAL_ISA( variable15 /*tkwwritablenode6*/, COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
15692 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8163); nit_exit(1);}
15693 variable17 = NEW_AWriteAble_parser_prod___AWriteAble___init_awriteable( variable14 /*tkwredefnode5*/, variable15 /*tkwwritablenode6*/); /*new AWriteAble*/
15694 variable16 = variable17;
15695 variable17 = variable9 /*nodearraylist4*/;
15696 variable18 = TAG_Bool(( variable17 /*tkwredefnode7*/==NIT_NULL) || VAL_ISA( variable17 /*tkwredefnode7*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15697 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8169); nit_exit(1);}
15698 variable18 = variable8 /*nodearraylist5*/;
15699 variable19 = TAG_Bool(( variable18 /*pvisibilitynode8*/==NIT_NULL) || VAL_ISA( variable18 /*pvisibilitynode8*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15700 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8171); nit_exit(1);}
15701 variable19 = variable7 /*nodearraylist6*/;
15702 variable20 = TAG_Bool(( variable19 /*tkwattrnode9*/==NIT_NULL) || VAL_ISA( variable19 /*tkwattrnode9*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15703 if (!UNTAG_Bool(variable20)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8173); nit_exit(1);}
15704 variable20 = variable6 /*nodearraylist7*/;
15705 variable21 = TAG_Bool(( variable20 /*tattridnode10*/==NIT_NULL) || VAL_ISA( variable20 /*tattridnode10*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15706 if (!UNTAG_Bool(variable21)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8175); nit_exit(1);}
15707 variable21 = variable5 /*nodearraylist8*/;
15708 variable22 = TAG_Bool(( variable21 /*ptypenode11*/==NIT_NULL) || VAL_ISA( variable21 /*ptypenode11*/, COLOR_PType, ID_PType)) /*cast PType*/;
15709 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8177); nit_exit(1);}
15710 variable22 = variable2 /*nodearraylist11*/;
15711 variable23 = TAG_Bool(( variable22 /*pexprnode12*/==NIT_NULL) || VAL_ISA( variable22 /*pexprnode12*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15712 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction160___action, LOCATE_parser, 8179); nit_exit(1);}
15713 variable24 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable13 /*pdocnode2*/, NIT_NULL /*null*/, variable16 /*pablenode4*/, variable17 /*tkwredefnode7*/, variable18 /*pvisibilitynode8*/, variable19 /*tkwattrnode9*/, variable20 /*tattridnode10*/, variable21 /*ptypenode11*/, variable22 /*pexprnode12*/); /*new AAttrPropdef*/
15714 variable23 = variable24;
15715 variable1 = variable23 /*ppropdefnode1*/ /*node_list=*/;
15716 variable24 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15717 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable24, variable1 /*node_list*/) /*Parser::push*/;
15718 tracehead = trace.prev;
15719 return;
15720 }
15721 void parser___ReduceAction160___init(val_t self, int* init_table) {
15722 struct trace_t trace = {NULL, NULL, 8194, LOCATE_parser___ReduceAction160___init};
15723 trace.prev = tracehead; tracehead = &trace;
15724 trace.file = LOCATE_parser;
15725 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction160].i]) return;
15726 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction160].i] = 1;
15727 tracehead = trace.prev;
15728 return;
15729 }
15730 void parser___ReduceAction161___action(val_t self, val_t param0) {
15731 struct trace_t trace = {NULL, NULL, 8198, LOCATE_parser___ReduceAction161___action};
15732 val_t variable0;
15733 val_t variable1;
15734 val_t variable2;
15735 val_t variable3;
15736 val_t variable4;
15737 val_t variable5;
15738 val_t variable6;
15739 val_t variable7;
15740 val_t variable8;
15741 val_t variable9;
15742 val_t variable10;
15743 val_t variable11;
15744 val_t variable12;
15745 val_t variable13;
15746 val_t variable14;
15747 val_t variable15;
15748 val_t variable16;
15749 val_t variable17;
15750 val_t variable18;
15751 val_t variable19;
15752 trace.prev = tracehead; tracehead = &trace;
15753 trace.file = LOCATE_parser;
15754 variable0 = param0;
15755 variable1 = NIT_NULL /*null*/;
15756 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15757 variable2 = variable3;
15758 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15759 variable3 = variable4;
15760 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15761 variable4 = variable5;
15762 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15763 variable5 = variable6;
15764 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15765 variable6 = variable7;
15766 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15767 variable7 = variable8;
15768 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15769 variable8 = variable9;
15770 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15771 variable9 = variable10;
15772 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15773 variable10 = variable11;
15774 variable11 = variable10 /*nodearraylist1*/;
15775 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15776 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction161___action, LOCATE_parser, 8211); nit_exit(1);}
15777 variable12 = variable9 /*nodearraylist2*/;
15778 variable13 = TAG_Bool(( variable12 /*tkwredefnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode5*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15779 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction161___action, LOCATE_parser, 8213); nit_exit(1);}
15780 variable13 = variable8 /*nodearraylist3*/;
15781 variable14 = TAG_Bool(( variable13 /*pvisibilitynode6*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode6*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15782 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction161___action, LOCATE_parser, 8215); nit_exit(1);}
15783 variable14 = variable7 /*nodearraylist4*/;
15784 variable15 = TAG_Bool(( variable14 /*tkwattrnode7*/==NIT_NULL) || VAL_ISA( variable14 /*tkwattrnode7*/, COLOR_TKwattr, ID_TKwattr)) /*cast TKwattr*/;
15785 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction161___action, LOCATE_parser, 8217); nit_exit(1);}
15786 variable15 = variable6 /*nodearraylist5*/;
15787 variable16 = TAG_Bool(( variable15 /*tattridnode8*/==NIT_NULL) || VAL_ISA( variable15 /*tattridnode8*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
15788 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction161___action, LOCATE_parser, 8219); nit_exit(1);}
15789 variable16 = variable5 /*nodearraylist6*/;
15790 variable17 = TAG_Bool(( variable16 /*ptypenode9*/==NIT_NULL) || VAL_ISA( variable16 /*ptypenode9*/, COLOR_PType, ID_PType)) /*cast PType*/;
15791 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction161___action, LOCATE_parser, 8221); nit_exit(1);}
15792 variable17 = variable2 /*nodearraylist9*/;
15793 variable18 = TAG_Bool(( variable17 /*pexprnode10*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode10*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
15794 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction161___action, LOCATE_parser, 8223); nit_exit(1);}
15795 variable19 = NEW_AAttrPropdef_parser_prod___AAttrPropdef___init_aattrpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/, variable12 /*tkwredefnode5*/, variable13 /*pvisibilitynode6*/, variable14 /*tkwattrnode7*/, variable15 /*tattridnode8*/, variable16 /*ptypenode9*/, variable17 /*pexprnode10*/); /*new AAttrPropdef*/
15796 variable18 = variable19;
15797 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
15798 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15799 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
15800 tracehead = trace.prev;
15801 return;
15802 }
15803 void parser___ReduceAction161___init(val_t self, int* init_table) {
15804 struct trace_t trace = {NULL, NULL, 8238, LOCATE_parser___ReduceAction161___init};
15805 trace.prev = tracehead; tracehead = &trace;
15806 trace.file = LOCATE_parser;
15807 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction161].i]) return;
15808 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction161].i] = 1;
15809 tracehead = trace.prev;
15810 return;
15811 }
15812 void parser___ReduceAction162___action(val_t self, val_t param0) {
15813 struct trace_t trace = {NULL, NULL, 8242, LOCATE_parser___ReduceAction162___action};
15814 val_t variable0;
15815 val_t variable1;
15816 val_t variable2;
15817 val_t variable3;
15818 val_t variable4;
15819 val_t variable5;
15820 val_t variable6;
15821 val_t variable7;
15822 val_t variable8;
15823 val_t variable9;
15824 val_t variable10;
15825 val_t variable11;
15826 val_t variable12;
15827 val_t variable13;
15828 val_t variable14;
15829 val_t variable15;
15830 trace.prev = tracehead; tracehead = &trace;
15831 trace.file = LOCATE_parser;
15832 variable0 = param0;
15833 variable1 = NIT_NULL /*null*/;
15834 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15835 variable2 = variable3;
15836 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15837 variable3 = variable4;
15838 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15839 variable4 = variable5;
15840 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15841 variable5 = variable6;
15842 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15843 variable6 = variable7;
15844 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15845 variable7 = variable8;
15846 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15847 variable8 = variable9;
15848 variable9 = variable8 /*nodearraylist1*/;
15849 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15850 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction162___action, LOCATE_parser, 8253); nit_exit(1);}
15851 variable10 = variable7 /*nodearraylist2*/;
15852 variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15853 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction162___action, LOCATE_parser, 8255); nit_exit(1);}
15854 variable11 = variable6 /*nodearraylist3*/;
15855 variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
15856 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction162___action, LOCATE_parser, 8257); nit_exit(1);}
15857 variable12 = variable5 /*nodearraylist4*/;
15858 variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
15859 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction162___action, LOCATE_parser, 8259); nit_exit(1);}
15860 variable13 = variable4 /*nodearraylist5*/;
15861 variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
15862 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction162___action, LOCATE_parser, 8261); nit_exit(1);}
15863 variable15 = NEW_ADeferredMethPropdef_parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/); /*new ADeferredMethPropdef*/
15864 variable14 = variable15;
15865 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
15866 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15867 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
15868 tracehead = trace.prev;
15869 return;
15870 }
15871 void parser___ReduceAction162___init(val_t self, int* init_table) {
15872 struct trace_t trace = {NULL, NULL, 8273, LOCATE_parser___ReduceAction162___init};
15873 trace.prev = tracehead; tracehead = &trace;
15874 trace.file = LOCATE_parser;
15875 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction162].i]) return;
15876 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction162].i] = 1;
15877 tracehead = trace.prev;
15878 return;
15879 }
15880 void parser___ReduceAction163___action(val_t self, val_t param0) {
15881 struct trace_t trace = {NULL, NULL, 8277, LOCATE_parser___ReduceAction163___action};
15882 val_t variable0;
15883 val_t variable1;
15884 val_t variable2;
15885 val_t variable3;
15886 val_t variable4;
15887 val_t variable5;
15888 val_t variable6;
15889 val_t variable7;
15890 val_t variable8;
15891 val_t variable9;
15892 val_t variable10;
15893 val_t variable11;
15894 val_t variable12;
15895 val_t variable13;
15896 val_t variable14;
15897 val_t variable15;
15898 val_t variable16;
15899 val_t variable17;
15900 trace.prev = tracehead; tracehead = &trace;
15901 trace.file = LOCATE_parser;
15902 variable0 = param0;
15903 variable1 = NIT_NULL /*null*/;
15904 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15905 variable2 = variable3;
15906 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15907 variable3 = variable4;
15908 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15909 variable4 = variable5;
15910 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15911 variable5 = variable6;
15912 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15913 variable6 = variable7;
15914 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15915 variable7 = variable8;
15916 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15917 variable8 = variable9;
15918 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15919 variable9 = variable10;
15920 variable10 = variable9 /*nodearraylist1*/;
15921 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15922 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction163___action, LOCATE_parser, 8289); nit_exit(1);}
15923 variable11 = variable8 /*nodearraylist2*/;
15924 variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
15925 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction163___action, LOCATE_parser, 8291); nit_exit(1);}
15926 variable12 = variable7 /*nodearraylist3*/;
15927 variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15928 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction163___action, LOCATE_parser, 8293); nit_exit(1);}
15929 variable13 = variable6 /*nodearraylist4*/;
15930 variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
15931 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction163___action, LOCATE_parser, 8295); nit_exit(1);}
15932 variable14 = variable5 /*nodearraylist5*/;
15933 variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
15934 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction163___action, LOCATE_parser, 8297); nit_exit(1);}
15935 variable15 = variable4 /*nodearraylist6*/;
15936 variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
15937 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction163___action, LOCATE_parser, 8299); nit_exit(1);}
15938 variable17 = NEW_ADeferredMethPropdef_parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/); /*new ADeferredMethPropdef*/
15939 variable16 = variable17;
15940 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
15941 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
15942 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
15943 tracehead = trace.prev;
15944 return;
15945 }
15946 void parser___ReduceAction163___init(val_t self, int* init_table) {
15947 struct trace_t trace = {NULL, NULL, 8311, LOCATE_parser___ReduceAction163___init};
15948 trace.prev = tracehead; tracehead = &trace;
15949 trace.file = LOCATE_parser;
15950 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction163].i]) return;
15951 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction163].i] = 1;
15952 tracehead = trace.prev;
15953 return;
15954 }
15955 void parser___ReduceAction164___action(val_t self, val_t param0) {
15956 struct trace_t trace = {NULL, NULL, 8315, LOCATE_parser___ReduceAction164___action};
15957 val_t variable0;
15958 val_t variable1;
15959 val_t variable2;
15960 val_t variable3;
15961 val_t variable4;
15962 val_t variable5;
15963 val_t variable6;
15964 val_t variable7;
15965 val_t variable8;
15966 val_t variable9;
15967 val_t variable10;
15968 val_t variable11;
15969 val_t variable12;
15970 val_t variable13;
15971 val_t variable14;
15972 val_t variable15;
15973 trace.prev = tracehead; tracehead = &trace;
15974 trace.file = LOCATE_parser;
15975 variable0 = param0;
15976 variable1 = NIT_NULL /*null*/;
15977 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15978 variable2 = variable3;
15979 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15980 variable3 = variable4;
15981 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15982 variable4 = variable5;
15983 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15984 variable5 = variable6;
15985 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15986 variable6 = variable7;
15987 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15988 variable7 = variable8;
15989 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
15990 variable8 = variable9;
15991 variable9 = variable8 /*nodearraylist1*/;
15992 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
15993 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction164___action, LOCATE_parser, 8326); nit_exit(1);}
15994 variable10 = variable7 /*nodearraylist2*/;
15995 variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
15996 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction164___action, LOCATE_parser, 8328); nit_exit(1);}
15997 variable11 = variable6 /*nodearraylist3*/;
15998 variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
15999 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction164___action, LOCATE_parser, 8330); nit_exit(1);}
16000 variable12 = variable5 /*nodearraylist4*/;
16001 variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16002 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction164___action, LOCATE_parser, 8332); nit_exit(1);}
16003 variable13 = variable4 /*nodearraylist5*/;
16004 variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16005 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction164___action, LOCATE_parser, 8334); nit_exit(1);}
16006 variable15 = NEW_AInternMethPropdef_parser_prod___AInternMethPropdef___init_ainternmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/); /*new AInternMethPropdef*/
16007 variable14 = variable15;
16008 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
16009 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16010 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
16011 tracehead = trace.prev;
16012 return;
16013 }
16014 void parser___ReduceAction164___init(val_t self, int* init_table) {
16015 struct trace_t trace = {NULL, NULL, 8346, LOCATE_parser___ReduceAction164___init};
16016 trace.prev = tracehead; tracehead = &trace;
16017 trace.file = LOCATE_parser;
16018 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction164].i]) return;
16019 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction164].i] = 1;
16020 tracehead = trace.prev;
16021 return;
16022 }
16023 void parser___ReduceAction165___action(val_t self, val_t param0) {
16024 struct trace_t trace = {NULL, NULL, 8350, LOCATE_parser___ReduceAction165___action};
16025 val_t variable0;
16026 val_t variable1;
16027 val_t variable2;
16028 val_t variable3;
16029 val_t variable4;
16030 val_t variable5;
16031 val_t variable6;
16032 val_t variable7;
16033 val_t variable8;
16034 val_t variable9;
16035 val_t variable10;
16036 val_t variable11;
16037 val_t variable12;
16038 val_t variable13;
16039 val_t variable14;
16040 val_t variable15;
16041 val_t variable16;
16042 val_t variable17;
16043 trace.prev = tracehead; tracehead = &trace;
16044 trace.file = LOCATE_parser;
16045 variable0 = param0;
16046 variable1 = NIT_NULL /*null*/;
16047 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16048 variable2 = variable3;
16049 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16050 variable3 = variable4;
16051 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16052 variable4 = variable5;
16053 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16054 variable5 = variable6;
16055 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16056 variable6 = variable7;
16057 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16058 variable7 = variable8;
16059 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16060 variable8 = variable9;
16061 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16062 variable9 = variable10;
16063 variable10 = variable9 /*nodearraylist1*/;
16064 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16065 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction165___action, LOCATE_parser, 8362); nit_exit(1);}
16066 variable11 = variable8 /*nodearraylist2*/;
16067 variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
16068 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction165___action, LOCATE_parser, 8364); nit_exit(1);}
16069 variable12 = variable7 /*nodearraylist3*/;
16070 variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16071 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction165___action, LOCATE_parser, 8366); nit_exit(1);}
16072 variable13 = variable6 /*nodearraylist4*/;
16073 variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16074 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction165___action, LOCATE_parser, 8368); nit_exit(1);}
16075 variable14 = variable5 /*nodearraylist5*/;
16076 variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16077 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction165___action, LOCATE_parser, 8370); nit_exit(1);}
16078 variable15 = variable4 /*nodearraylist6*/;
16079 variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16080 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction165___action, LOCATE_parser, 8372); nit_exit(1);}
16081 variable17 = NEW_AInternMethPropdef_parser_prod___AInternMethPropdef___init_ainternmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/); /*new AInternMethPropdef*/
16082 variable16 = variable17;
16083 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
16084 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16085 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
16086 tracehead = trace.prev;
16087 return;
16088 }
16089 void parser___ReduceAction165___init(val_t self, int* init_table) {
16090 struct trace_t trace = {NULL, NULL, 8384, LOCATE_parser___ReduceAction165___init};
16091 trace.prev = tracehead; tracehead = &trace;
16092 trace.file = LOCATE_parser;
16093 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction165].i]) return;
16094 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction165].i] = 1;
16095 tracehead = trace.prev;
16096 return;
16097 }
16098 void parser___ReduceAction166___action(val_t self, val_t param0) {
16099 struct trace_t trace = {NULL, NULL, 8388, LOCATE_parser___ReduceAction166___action};
16100 val_t variable0;
16101 val_t variable1;
16102 val_t variable2;
16103 val_t variable3;
16104 val_t variable4;
16105 val_t variable5;
16106 val_t variable6;
16107 val_t variable7;
16108 val_t variable8;
16109 val_t variable9;
16110 val_t variable10;
16111 val_t variable11;
16112 val_t variable12;
16113 val_t variable13;
16114 val_t variable14;
16115 val_t variable15;
16116 trace.prev = tracehead; tracehead = &trace;
16117 trace.file = LOCATE_parser;
16118 variable0 = param0;
16119 variable1 = NIT_NULL /*null*/;
16120 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16121 variable2 = variable3;
16122 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16123 variable3 = variable4;
16124 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16125 variable4 = variable5;
16126 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16127 variable5 = variable6;
16128 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16129 variable6 = variable7;
16130 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16131 variable7 = variable8;
16132 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16133 variable8 = variable9;
16134 variable9 = variable8 /*nodearraylist1*/;
16135 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16136 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction166___action, LOCATE_parser, 8399); nit_exit(1);}
16137 variable10 = variable7 /*nodearraylist2*/;
16138 variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16139 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction166___action, LOCATE_parser, 8401); nit_exit(1);}
16140 variable11 = variable6 /*nodearraylist3*/;
16141 variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16142 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction166___action, LOCATE_parser, 8403); nit_exit(1);}
16143 variable12 = variable5 /*nodearraylist4*/;
16144 variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16145 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction166___action, LOCATE_parser, 8405); nit_exit(1);}
16146 variable13 = variable4 /*nodearraylist5*/;
16147 variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16148 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction166___action, LOCATE_parser, 8407); nit_exit(1);}
16149 variable15 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/
16150 variable14 = variable15;
16151 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
16152 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16153 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
16154 tracehead = trace.prev;
16155 return;
16156 }
16157 void parser___ReduceAction166___init(val_t self, int* init_table) {
16158 struct trace_t trace = {NULL, NULL, 8420, LOCATE_parser___ReduceAction166___init};
16159 trace.prev = tracehead; tracehead = &trace;
16160 trace.file = LOCATE_parser;
16161 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction166].i]) return;
16162 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction166].i] = 1;
16163 tracehead = trace.prev;
16164 return;
16165 }
16166 void parser___ReduceAction167___action(val_t self, val_t param0) {
16167 struct trace_t trace = {NULL, NULL, 8424, LOCATE_parser___ReduceAction167___action};
16168 val_t variable0;
16169 val_t variable1;
16170 val_t variable2;
16171 val_t variable3;
16172 val_t variable4;
16173 val_t variable5;
16174 val_t variable6;
16175 val_t variable7;
16176 val_t variable8;
16177 val_t variable9;
16178 val_t variable10;
16179 val_t variable11;
16180 val_t variable12;
16181 val_t variable13;
16182 val_t variable14;
16183 val_t variable15;
16184 val_t variable16;
16185 val_t variable17;
16186 trace.prev = tracehead; tracehead = &trace;
16187 trace.file = LOCATE_parser;
16188 variable0 = param0;
16189 variable1 = NIT_NULL /*null*/;
16190 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16191 variable2 = variable3;
16192 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16193 variable3 = variable4;
16194 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16195 variable4 = variable5;
16196 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16197 variable5 = variable6;
16198 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16199 variable6 = variable7;
16200 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16201 variable7 = variable8;
16202 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16203 variable8 = variable9;
16204 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16205 variable9 = variable10;
16206 variable10 = variable9 /*nodearraylist1*/;
16207 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16208 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction167___action, LOCATE_parser, 8436); nit_exit(1);}
16209 variable11 = variable8 /*nodearraylist2*/;
16210 variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
16211 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction167___action, LOCATE_parser, 8438); nit_exit(1);}
16212 variable12 = variable7 /*nodearraylist3*/;
16213 variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16214 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction167___action, LOCATE_parser, 8440); nit_exit(1);}
16215 variable13 = variable6 /*nodearraylist4*/;
16216 variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16217 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction167___action, LOCATE_parser, 8442); nit_exit(1);}
16218 variable14 = variable5 /*nodearraylist5*/;
16219 variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16220 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction167___action, LOCATE_parser, 8444); nit_exit(1);}
16221 variable15 = variable4 /*nodearraylist6*/;
16222 variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16223 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction167___action, LOCATE_parser, 8446); nit_exit(1);}
16224 variable17 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/
16225 variable16 = variable17;
16226 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
16227 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16228 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
16229 tracehead = trace.prev;
16230 return;
16231 }
16232 void parser___ReduceAction167___init(val_t self, int* init_table) {
16233 struct trace_t trace = {NULL, NULL, 8459, LOCATE_parser___ReduceAction167___init};
16234 trace.prev = tracehead; tracehead = &trace;
16235 trace.file = LOCATE_parser;
16236 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction167].i]) return;
16237 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction167].i] = 1;
16238 tracehead = trace.prev;
16239 return;
16240 }
16241 void parser___ReduceAction168___action(val_t self, val_t param0) {
16242 struct trace_t trace = {NULL, NULL, 8463, LOCATE_parser___ReduceAction168___action};
16243 val_t variable0;
16244 val_t variable1;
16245 val_t variable2;
16246 val_t variable3;
16247 val_t variable4;
16248 val_t variable5;
16249 val_t variable6;
16250 val_t variable7;
16251 val_t variable8;
16252 val_t variable9;
16253 val_t variable10;
16254 val_t variable11;
16255 val_t variable12;
16256 val_t variable13;
16257 val_t variable14;
16258 val_t variable15;
16259 val_t variable16;
16260 val_t variable17;
16261 trace.prev = tracehead; tracehead = &trace;
16262 trace.file = LOCATE_parser;
16263 variable0 = param0;
16264 variable1 = NIT_NULL /*null*/;
16265 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16266 variable2 = variable3;
16267 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16268 variable3 = variable4;
16269 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16270 variable4 = variable5;
16271 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16272 variable5 = variable6;
16273 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16274 variable6 = variable7;
16275 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16276 variable7 = variable8;
16277 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16278 variable8 = variable9;
16279 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16280 variable9 = variable10;
16281 variable10 = variable9 /*nodearraylist1*/;
16282 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16283 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction168___action, LOCATE_parser, 8475); nit_exit(1);}
16284 variable11 = variable8 /*nodearraylist2*/;
16285 variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16286 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction168___action, LOCATE_parser, 8477); nit_exit(1);}
16287 variable12 = variable7 /*nodearraylist3*/;
16288 variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16289 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction168___action, LOCATE_parser, 8479); nit_exit(1);}
16290 variable13 = variable6 /*nodearraylist4*/;
16291 variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16292 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction168___action, LOCATE_parser, 8481); nit_exit(1);}
16293 variable14 = variable5 /*nodearraylist5*/;
16294 variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16295 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction168___action, LOCATE_parser, 8483); nit_exit(1);}
16296 variable15 = variable2 /*nodearraylist8*/;
16297 variable16 = TAG_Bool(( variable15 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable15 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/;
16298 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction168___action, LOCATE_parser, 8485); nit_exit(1);}
16299 variable17 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*tstringnode8*/); /*new AExternMethPropdef*/
16300 variable16 = variable17;
16301 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
16302 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16303 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
16304 tracehead = trace.prev;
16305 return;
16306 }
16307 void parser___ReduceAction168___init(val_t self, int* init_table) {
16308 struct trace_t trace = {NULL, NULL, 8498, LOCATE_parser___ReduceAction168___init};
16309 trace.prev = tracehead; tracehead = &trace;
16310 trace.file = LOCATE_parser;
16311 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction168].i]) return;
16312 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction168].i] = 1;
16313 tracehead = trace.prev;
16314 return;
16315 }
16316 void parser___ReduceAction169___action(val_t self, val_t param0) {
16317 struct trace_t trace = {NULL, NULL, 8502, LOCATE_parser___ReduceAction169___action};
16318 val_t variable0;
16319 val_t variable1;
16320 val_t variable2;
16321 val_t variable3;
16322 val_t variable4;
16323 val_t variable5;
16324 val_t variable6;
16325 val_t variable7;
16326 val_t variable8;
16327 val_t variable9;
16328 val_t variable10;
16329 val_t variable11;
16330 val_t variable12;
16331 val_t variable13;
16332 val_t variable14;
16333 val_t variable15;
16334 val_t variable16;
16335 val_t variable17;
16336 val_t variable18;
16337 val_t variable19;
16338 trace.prev = tracehead; tracehead = &trace;
16339 trace.file = LOCATE_parser;
16340 variable0 = param0;
16341 variable1 = NIT_NULL /*null*/;
16342 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16343 variable2 = variable3;
16344 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16345 variable3 = variable4;
16346 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16347 variable4 = variable5;
16348 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16349 variable5 = variable6;
16350 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16351 variable6 = variable7;
16352 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16353 variable7 = variable8;
16354 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16355 variable8 = variable9;
16356 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16357 variable9 = variable10;
16358 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16359 variable10 = variable11;
16360 variable11 = variable10 /*nodearraylist1*/;
16361 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16362 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction169___action, LOCATE_parser, 8515); nit_exit(1);}
16363 variable12 = variable9 /*nodearraylist2*/;
16364 variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
16365 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction169___action, LOCATE_parser, 8517); nit_exit(1);}
16366 variable13 = variable8 /*nodearraylist3*/;
16367 variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16368 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction169___action, LOCATE_parser, 8519); nit_exit(1);}
16369 variable14 = variable7 /*nodearraylist4*/;
16370 variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16371 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction169___action, LOCATE_parser, 8521); nit_exit(1);}
16372 variable15 = variable6 /*nodearraylist5*/;
16373 variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16374 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction169___action, LOCATE_parser, 8523); nit_exit(1);}
16375 variable16 = variable5 /*nodearraylist6*/;
16376 variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16377 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction169___action, LOCATE_parser, 8525); nit_exit(1);}
16378 variable17 = variable2 /*nodearraylist9*/;
16379 variable18 = TAG_Bool(( variable17 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable17 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/;
16380 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction169___action, LOCATE_parser, 8527); nit_exit(1);}
16381 variable19 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*tstringnode8*/); /*new AExternMethPropdef*/
16382 variable18 = variable19;
16383 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
16384 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16385 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
16386 tracehead = trace.prev;
16387 return;
16388 }
16389 void parser___ReduceAction169___init(val_t self, int* init_table) {
16390 struct trace_t trace = {NULL, NULL, 8540, LOCATE_parser___ReduceAction169___init};
16391 trace.prev = tracehead; tracehead = &trace;
16392 trace.file = LOCATE_parser;
16393 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction169].i]) return;
16394 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction169].i] = 1;
16395 tracehead = trace.prev;
16396 return;
16397 }
16398 void parser___ReduceAction170___action(val_t self, val_t param0) {
16399 struct trace_t trace = {NULL, NULL, 8544, LOCATE_parser___ReduceAction170___action};
16400 val_t variable0;
16401 val_t variable1;
16402 val_t variable2;
16403 val_t variable3;
16404 val_t variable4;
16405 val_t variable5;
16406 val_t variable6;
16407 val_t variable7;
16408 val_t variable8;
16409 val_t variable9;
16410 val_t variable10;
16411 val_t variable11;
16412 val_t variable12;
16413 val_t variable13;
16414 val_t variable14;
16415 val_t variable15;
16416 val_t variable16;
16417 val_t variable17;
16418 trace.prev = tracehead; tracehead = &trace;
16419 trace.file = LOCATE_parser;
16420 variable0 = param0;
16421 variable1 = NIT_NULL /*null*/;
16422 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16423 variable2 = variable3;
16424 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16425 variable3 = variable4;
16426 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16427 variable4 = variable5;
16428 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16429 variable5 = variable6;
16430 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16431 variable6 = variable7;
16432 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16433 variable7 = variable8;
16434 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16435 variable8 = variable9;
16436 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16437 variable9 = variable10;
16438 variable10 = variable9 /*nodearraylist1*/;
16439 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16440 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction170___action, LOCATE_parser, 8556); nit_exit(1);}
16441 variable11 = variable8 /*nodearraylist2*/;
16442 variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16443 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction170___action, LOCATE_parser, 8558); nit_exit(1);}
16444 variable12 = variable7 /*nodearraylist3*/;
16445 variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16446 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction170___action, LOCATE_parser, 8560); nit_exit(1);}
16447 variable13 = variable6 /*nodearraylist4*/;
16448 variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16449 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction170___action, LOCATE_parser, 8562); nit_exit(1);}
16450 variable14 = variable5 /*nodearraylist5*/;
16451 variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16452 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction170___action, LOCATE_parser, 8564); nit_exit(1);}
16453 variable15 = variable2 /*nodearraylist8*/;
16454 variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
16455 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction170___action, LOCATE_parser, 8566); nit_exit(1);}
16456 variable17 = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteMethPropdef*/
16457 variable16 = variable17;
16458 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
16459 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16460 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
16461 tracehead = trace.prev;
16462 return;
16463 }
16464 void parser___ReduceAction170___init(val_t self, int* init_table) {
16465 struct trace_t trace = {NULL, NULL, 8579, LOCATE_parser___ReduceAction170___init};
16466 trace.prev = tracehead; tracehead = &trace;
16467 trace.file = LOCATE_parser;
16468 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction170].i]) return;
16469 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction170].i] = 1;
16470 tracehead = trace.prev;
16471 return;
16472 }
16473 void parser___ReduceAction171___action(val_t self, val_t param0) {
16474 struct trace_t trace = {NULL, NULL, 8583, LOCATE_parser___ReduceAction171___action};
16475 val_t variable0;
16476 val_t variable1;
16477 val_t variable2;
16478 val_t variable3;
16479 val_t variable4;
16480 val_t variable5;
16481 val_t variable6;
16482 val_t variable7;
16483 val_t variable8;
16484 val_t variable9;
16485 val_t variable10;
16486 val_t variable11;
16487 val_t variable12;
16488 val_t variable13;
16489 val_t variable14;
16490 val_t variable15;
16491 val_t variable16;
16492 val_t variable17;
16493 val_t variable18;
16494 val_t variable19;
16495 trace.prev = tracehead; tracehead = &trace;
16496 trace.file = LOCATE_parser;
16497 variable0 = param0;
16498 variable1 = NIT_NULL /*null*/;
16499 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16500 variable2 = variable3;
16501 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16502 variable3 = variable4;
16503 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16504 variable4 = variable5;
16505 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16506 variable5 = variable6;
16507 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16508 variable6 = variable7;
16509 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16510 variable7 = variable8;
16511 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16512 variable8 = variable9;
16513 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16514 variable9 = variable10;
16515 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16516 variable10 = variable11;
16517 variable11 = variable10 /*nodearraylist1*/;
16518 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16519 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction171___action, LOCATE_parser, 8596); nit_exit(1);}
16520 variable12 = variable9 /*nodearraylist2*/;
16521 variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
16522 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction171___action, LOCATE_parser, 8598); nit_exit(1);}
16523 variable13 = variable8 /*nodearraylist3*/;
16524 variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16525 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction171___action, LOCATE_parser, 8600); nit_exit(1);}
16526 variable14 = variable7 /*nodearraylist4*/;
16527 variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16528 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction171___action, LOCATE_parser, 8602); nit_exit(1);}
16529 variable15 = variable6 /*nodearraylist5*/;
16530 variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16531 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction171___action, LOCATE_parser, 8604); nit_exit(1);}
16532 variable16 = variable5 /*nodearraylist6*/;
16533 variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16534 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction171___action, LOCATE_parser, 8606); nit_exit(1);}
16535 variable17 = variable2 /*nodearraylist9*/;
16536 variable18 = TAG_Bool(( variable17 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
16537 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction171___action, LOCATE_parser, 8608); nit_exit(1);}
16538 variable19 = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*pexprnode8*/); /*new AConcreteMethPropdef*/
16539 variable18 = variable19;
16540 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
16541 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16542 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
16543 tracehead = trace.prev;
16544 return;
16545 }
16546 void parser___ReduceAction171___init(val_t self, int* init_table) {
16547 struct trace_t trace = {NULL, NULL, 8621, LOCATE_parser___ReduceAction171___init};
16548 trace.prev = tracehead; tracehead = &trace;
16549 trace.file = LOCATE_parser;
16550 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction171].i]) return;
16551 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction171].i] = 1;
16552 tracehead = trace.prev;
16553 return;
16554 }
16555 void parser___ReduceAction172___action(val_t self, val_t param0) {
16556 struct trace_t trace = {NULL, NULL, 8625, LOCATE_parser___ReduceAction172___action};
16557 val_t variable0;
16558 val_t variable1;
16559 val_t variable2;
16560 val_t variable3;
16561 val_t variable4;
16562 val_t variable5;
16563 val_t variable6;
16564 val_t variable7;
16565 val_t variable8;
16566 val_t variable9;
16567 val_t variable10;
16568 val_t variable11;
16569 val_t variable12;
16570 val_t variable13;
16571 val_t variable14;
16572 val_t variable15;
16573 val_t variable16;
16574 val_t variable17;
16575 val_t variable18;
16576 trace.prev = tracehead; tracehead = &trace;
16577 trace.file = LOCATE_parser;
16578 variable0 = param0;
16579 variable1 = NIT_NULL /*null*/;
16580 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16581 variable2 = variable3;
16582 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16583 variable3 = variable4;
16584 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16585 variable4 = variable5;
16586 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16587 variable5 = variable6;
16588 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16589 variable6 = variable7;
16590 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16591 variable7 = variable8;
16592 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16593 variable8 = variable9;
16594 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16595 variable9 = variable10;
16596 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16597 variable10 = variable11;
16598 variable11 = variable10 /*nodearraylist1*/;
16599 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16600 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction172___action, LOCATE_parser, 8638); nit_exit(1);}
16601 variable12 = variable9 /*nodearraylist2*/;
16602 variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16603 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction172___action, LOCATE_parser, 8640); nit_exit(1);}
16604 variable13 = variable8 /*nodearraylist3*/;
16605 variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16606 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction172___action, LOCATE_parser, 8642); nit_exit(1);}
16607 variable14 = variable7 /*nodearraylist4*/;
16608 variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16609 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction172___action, LOCATE_parser, 8644); nit_exit(1);}
16610 variable15 = variable6 /*nodearraylist5*/;
16611 variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16612 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction172___action, LOCATE_parser, 8646); nit_exit(1);}
16613 variable16 = variable3 /*nodearraylist8*/;
16614 variable17 = TAG_Bool(( variable16 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
16615 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction172___action, LOCATE_parser, 8648); nit_exit(1);}
16616 variable18 = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, variable16 /*pexprnode8*/); /*new AConcreteMethPropdef*/
16617 variable17 = variable18;
16618 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
16619 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16620 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
16621 tracehead = trace.prev;
16622 return;
16623 }
16624 void parser___ReduceAction172___init(val_t self, int* init_table) {
16625 struct trace_t trace = {NULL, NULL, 8661, LOCATE_parser___ReduceAction172___init};
16626 trace.prev = tracehead; tracehead = &trace;
16627 trace.file = LOCATE_parser;
16628 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction172].i]) return;
16629 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction172].i] = 1;
16630 tracehead = trace.prev;
16631 return;
16632 }
16633 void parser___ReduceAction173___action(val_t self, val_t param0) {
16634 struct trace_t trace = {NULL, NULL, 8665, LOCATE_parser___ReduceAction173___action};
16635 val_t variable0;
16636 val_t variable1;
16637 val_t variable2;
16638 val_t variable3;
16639 val_t variable4;
16640 val_t variable5;
16641 val_t variable6;
16642 val_t variable7;
16643 val_t variable8;
16644 val_t variable9;
16645 val_t variable10;
16646 val_t variable11;
16647 val_t variable12;
16648 val_t variable13;
16649 val_t variable14;
16650 val_t variable15;
16651 val_t variable16;
16652 val_t variable17;
16653 val_t variable18;
16654 val_t variable19;
16655 val_t variable20;
16656 trace.prev = tracehead; tracehead = &trace;
16657 trace.file = LOCATE_parser;
16658 variable0 = param0;
16659 variable1 = NIT_NULL /*null*/;
16660 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16661 variable2 = variable3;
16662 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16663 variable3 = variable4;
16664 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16665 variable4 = variable5;
16666 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16667 variable5 = variable6;
16668 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16669 variable6 = variable7;
16670 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16671 variable7 = variable8;
16672 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16673 variable8 = variable9;
16674 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16675 variable9 = variable10;
16676 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16677 variable10 = variable11;
16678 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16679 variable11 = variable12;
16680 variable12 = variable11 /*nodearraylist1*/;
16681 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16682 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction173___action, LOCATE_parser, 8679); nit_exit(1);}
16683 variable13 = variable10 /*nodearraylist2*/;
16684 variable14 = TAG_Bool(( variable13 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
16685 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction173___action, LOCATE_parser, 8681); nit_exit(1);}
16686 variable14 = variable9 /*nodearraylist3*/;
16687 variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16688 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction173___action, LOCATE_parser, 8683); nit_exit(1);}
16689 variable15 = variable8 /*nodearraylist4*/;
16690 variable16 = TAG_Bool(( variable15 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
16691 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction173___action, LOCATE_parser, 8685); nit_exit(1);}
16692 variable16 = variable7 /*nodearraylist5*/;
16693 variable17 = TAG_Bool(( variable16 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16694 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction173___action, LOCATE_parser, 8687); nit_exit(1);}
16695 variable17 = variable6 /*nodearraylist6*/;
16696 variable18 = TAG_Bool(( variable17 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable17 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16697 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction173___action, LOCATE_parser, 8689); nit_exit(1);}
16698 variable18 = variable3 /*nodearraylist9*/;
16699 variable19 = TAG_Bool(( variable18 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
16700 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction173___action, LOCATE_parser, 8691); nit_exit(1);}
16701 variable20 = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable12 /*pdocnode2*/, variable13 /*tkwredefnode3*/, variable14 /*pvisibilitynode4*/, variable15 /*tkwmethnode5*/, variable16 /*pmethidnode6*/, variable17 /*psignaturenode7*/, variable18 /*pexprnode8*/); /*new AConcreteMethPropdef*/
16702 variable19 = variable20;
16703 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
16704 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16705 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
16706 tracehead = trace.prev;
16707 return;
16708 }
16709 void parser___ReduceAction173___init(val_t self, int* init_table) {
16710 struct trace_t trace = {NULL, NULL, 8704, LOCATE_parser___ReduceAction173___init};
16711 trace.prev = tracehead; tracehead = &trace;
16712 trace.file = LOCATE_parser;
16713 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction173].i]) return;
16714 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction173].i] = 1;
16715 tracehead = trace.prev;
16716 return;
16717 }
16718 void parser___ReduceAction174___action(val_t self, val_t param0) {
16719 struct trace_t trace = {NULL, NULL, 8708, LOCATE_parser___ReduceAction174___action};
16720 val_t variable0;
16721 val_t variable1;
16722 val_t variable2;
16723 val_t variable3;
16724 val_t variable4;
16725 val_t variable5;
16726 val_t variable6;
16727 val_t variable7;
16728 val_t variable8;
16729 val_t variable9;
16730 val_t variable10;
16731 val_t variable11;
16732 val_t variable12;
16733 val_t variable13;
16734 val_t variable14;
16735 val_t variable15;
16736 trace.prev = tracehead; tracehead = &trace;
16737 trace.file = LOCATE_parser;
16738 variable0 = param0;
16739 variable1 = NIT_NULL /*null*/;
16740 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16741 variable2 = variable3;
16742 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16743 variable3 = variable4;
16744 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16745 variable4 = variable5;
16746 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16747 variable5 = variable6;
16748 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16749 variable6 = variable7;
16750 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16751 variable7 = variable8;
16752 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16753 variable8 = variable9;
16754 variable9 = variable8 /*nodearraylist1*/;
16755 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16756 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction174___action, LOCATE_parser, 8719); nit_exit(1);}
16757 variable10 = variable7 /*nodearraylist2*/;
16758 variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16759 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction174___action, LOCATE_parser, 8721); nit_exit(1);}
16760 variable11 = variable6 /*nodearraylist3*/;
16761 variable12 = TAG_Bool(( variable11 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
16762 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction174___action, LOCATE_parser, 8723); nit_exit(1);}
16763 variable12 = variable5 /*nodearraylist4*/;
16764 variable13 = TAG_Bool(( variable12 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable12 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16765 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction174___action, LOCATE_parser, 8725); nit_exit(1);}
16766 variable13 = variable2 /*nodearraylist7*/;
16767 variable14 = TAG_Bool(( variable13 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
16768 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction174___action, LOCATE_parser, 8727); nit_exit(1);}
16769 variable15 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwinitnode5*/, NIT_NULL /*null*/, variable12 /*psignaturenode7*/, variable13 /*pexprnode8*/); /*new AConcreteInitPropdef*/
16770 variable14 = variable15;
16771 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
16772 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16773 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
16774 tracehead = trace.prev;
16775 return;
16776 }
16777 void parser___ReduceAction174___init(val_t self, int* init_table) {
16778 struct trace_t trace = {NULL, NULL, 8740, LOCATE_parser___ReduceAction174___init};
16779 trace.prev = tracehead; tracehead = &trace;
16780 trace.file = LOCATE_parser;
16781 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction174].i]) return;
16782 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction174].i] = 1;
16783 tracehead = trace.prev;
16784 return;
16785 }
16786 void parser___ReduceAction175___action(val_t self, val_t param0) {
16787 struct trace_t trace = {NULL, NULL, 8744, LOCATE_parser___ReduceAction175___action};
16788 val_t variable0;
16789 val_t variable1;
16790 val_t variable2;
16791 val_t variable3;
16792 val_t variable4;
16793 val_t variable5;
16794 val_t variable6;
16795 val_t variable7;
16796 val_t variable8;
16797 val_t variable9;
16798 val_t variable10;
16799 val_t variable11;
16800 val_t variable12;
16801 val_t variable13;
16802 val_t variable14;
16803 val_t variable15;
16804 val_t variable16;
16805 val_t variable17;
16806 trace.prev = tracehead; tracehead = &trace;
16807 trace.file = LOCATE_parser;
16808 variable0 = param0;
16809 variable1 = NIT_NULL /*null*/;
16810 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16811 variable2 = variable3;
16812 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16813 variable3 = variable4;
16814 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16815 variable4 = variable5;
16816 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16817 variable5 = variable6;
16818 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16819 variable6 = variable7;
16820 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16821 variable7 = variable8;
16822 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16823 variable8 = variable9;
16824 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16825 variable9 = variable10;
16826 variable10 = variable9 /*nodearraylist1*/;
16827 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16828 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction175___action, LOCATE_parser, 8756); nit_exit(1);}
16829 variable11 = variable8 /*nodearraylist2*/;
16830 variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
16831 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction175___action, LOCATE_parser, 8758); nit_exit(1);}
16832 variable12 = variable7 /*nodearraylist3*/;
16833 variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16834 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction175___action, LOCATE_parser, 8760); nit_exit(1);}
16835 variable13 = variable6 /*nodearraylist4*/;
16836 variable14 = TAG_Bool(( variable13 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
16837 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction175___action, LOCATE_parser, 8762); nit_exit(1);}
16838 variable14 = variable5 /*nodearraylist5*/;
16839 variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16840 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction175___action, LOCATE_parser, 8764); nit_exit(1);}
16841 variable15 = variable2 /*nodearraylist8*/;
16842 variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
16843 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction175___action, LOCATE_parser, 8766); nit_exit(1);}
16844 variable17 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwinitnode5*/, NIT_NULL /*null*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteInitPropdef*/
16845 variable16 = variable17;
16846 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
16847 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16848 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
16849 tracehead = trace.prev;
16850 return;
16851 }
16852 void parser___ReduceAction175___init(val_t self, int* init_table) {
16853 struct trace_t trace = {NULL, NULL, 8779, LOCATE_parser___ReduceAction175___init};
16854 trace.prev = tracehead; tracehead = &trace;
16855 trace.file = LOCATE_parser;
16856 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction175].i]) return;
16857 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction175].i] = 1;
16858 tracehead = trace.prev;
16859 return;
16860 }
16861 void parser___ReduceAction176___action(val_t self, val_t param0) {
16862 struct trace_t trace = {NULL, NULL, 8783, LOCATE_parser___ReduceAction176___action};
16863 val_t variable0;
16864 val_t variable1;
16865 val_t variable2;
16866 val_t variable3;
16867 val_t variable4;
16868 val_t variable5;
16869 val_t variable6;
16870 val_t variable7;
16871 val_t variable8;
16872 val_t variable9;
16873 val_t variable10;
16874 val_t variable11;
16875 val_t variable12;
16876 val_t variable13;
16877 val_t variable14;
16878 val_t variable15;
16879 val_t variable16;
16880 val_t variable17;
16881 trace.prev = tracehead; tracehead = &trace;
16882 trace.file = LOCATE_parser;
16883 variable0 = param0;
16884 variable1 = NIT_NULL /*null*/;
16885 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16886 variable2 = variable3;
16887 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16888 variable3 = variable4;
16889 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16890 variable4 = variable5;
16891 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16892 variable5 = variable6;
16893 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16894 variable6 = variable7;
16895 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16896 variable7 = variable8;
16897 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16898 variable8 = variable9;
16899 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16900 variable9 = variable10;
16901 variable10 = variable9 /*nodearraylist1*/;
16902 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16903 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction176___action, LOCATE_parser, 8795); nit_exit(1);}
16904 variable11 = variable8 /*nodearraylist2*/;
16905 variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16906 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction176___action, LOCATE_parser, 8797); nit_exit(1);}
16907 variable12 = variable7 /*nodearraylist3*/;
16908 variable13 = TAG_Bool(( variable12 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
16909 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction176___action, LOCATE_parser, 8799); nit_exit(1);}
16910 variable13 = variable6 /*nodearraylist4*/;
16911 variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16912 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction176___action, LOCATE_parser, 8801); nit_exit(1);}
16913 variable14 = variable5 /*nodearraylist5*/;
16914 variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16915 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction176___action, LOCATE_parser, 8803); nit_exit(1);}
16916 variable15 = variable2 /*nodearraylist8*/;
16917 variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
16918 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction176___action, LOCATE_parser, 8805); nit_exit(1);}
16919 variable17 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwinitnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteInitPropdef*/
16920 variable16 = variable17;
16921 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
16922 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
16923 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
16924 tracehead = trace.prev;
16925 return;
16926 }
16927 void parser___ReduceAction176___init(val_t self, int* init_table) {
16928 struct trace_t trace = {NULL, NULL, 8818, LOCATE_parser___ReduceAction176___init};
16929 trace.prev = tracehead; tracehead = &trace;
16930 trace.file = LOCATE_parser;
16931 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction176].i]) return;
16932 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction176].i] = 1;
16933 tracehead = trace.prev;
16934 return;
16935 }
16936 void parser___ReduceAction177___action(val_t self, val_t param0) {
16937 struct trace_t trace = {NULL, NULL, 8822, LOCATE_parser___ReduceAction177___action};
16938 val_t variable0;
16939 val_t variable1;
16940 val_t variable2;
16941 val_t variable3;
16942 val_t variable4;
16943 val_t variable5;
16944 val_t variable6;
16945 val_t variable7;
16946 val_t variable8;
16947 val_t variable9;
16948 val_t variable10;
16949 val_t variable11;
16950 val_t variable12;
16951 val_t variable13;
16952 val_t variable14;
16953 val_t variable15;
16954 val_t variable16;
16955 val_t variable17;
16956 val_t variable18;
16957 val_t variable19;
16958 trace.prev = tracehead; tracehead = &trace;
16959 trace.file = LOCATE_parser;
16960 variable0 = param0;
16961 variable1 = NIT_NULL /*null*/;
16962 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16963 variable2 = variable3;
16964 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16965 variable3 = variable4;
16966 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16967 variable4 = variable5;
16968 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16969 variable5 = variable6;
16970 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16971 variable6 = variable7;
16972 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16973 variable7 = variable8;
16974 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16975 variable8 = variable9;
16976 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16977 variable9 = variable10;
16978 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
16979 variable10 = variable11;
16980 variable11 = variable10 /*nodearraylist1*/;
16981 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
16982 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction177___action, LOCATE_parser, 8835); nit_exit(1);}
16983 variable12 = variable9 /*nodearraylist2*/;
16984 variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
16985 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction177___action, LOCATE_parser, 8837); nit_exit(1);}
16986 variable13 = variable8 /*nodearraylist3*/;
16987 variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
16988 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction177___action, LOCATE_parser, 8839); nit_exit(1);}
16989 variable14 = variable7 /*nodearraylist4*/;
16990 variable15 = TAG_Bool(( variable14 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
16991 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction177___action, LOCATE_parser, 8841); nit_exit(1);}
16992 variable15 = variable6 /*nodearraylist5*/;
16993 variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
16994 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction177___action, LOCATE_parser, 8843); nit_exit(1);}
16995 variable16 = variable5 /*nodearraylist6*/;
16996 variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
16997 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction177___action, LOCATE_parser, 8845); nit_exit(1);}
16998 variable17 = variable2 /*nodearraylist9*/;
16999 variable18 = TAG_Bool(( variable17 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
17000 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction177___action, LOCATE_parser, 8847); nit_exit(1);}
17001 variable19 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwinitnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*pexprnode8*/); /*new AConcreteInitPropdef*/
17002 variable18 = variable19;
17003 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
17004 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
17005 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
17006 tracehead = trace.prev;
17007 return;
17008 }
17009 void parser___ReduceAction177___init(val_t self, int* init_table) {
17010 struct trace_t trace = {NULL, NULL, 8860, LOCATE_parser___ReduceAction177___init};
17011 trace.prev = tracehead; tracehead = &trace;
17012 trace.file = LOCATE_parser;
17013 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction177].i]) return;
17014 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction177].i] = 1;
17015 tracehead = trace.prev;
17016 return;
17017 }
17018 void parser___ReduceAction178___action(val_t self, val_t param0) {
17019 struct trace_t trace = {NULL, NULL, 8864, LOCATE_parser___ReduceAction178___action};
17020 val_t variable0;
17021 val_t variable1;
17022 val_t variable2;
17023 val_t variable3;
17024 val_t variable4;
17025 val_t variable5;
17026 val_t variable6;
17027 val_t variable7;
17028 val_t variable8;
17029 val_t variable9;
17030 val_t variable10;
17031 val_t variable11;
17032 val_t variable12;
17033 val_t variable13;
17034 val_t variable14;
17035 val_t variable15;
17036 val_t variable16;
17037 trace.prev = tracehead; tracehead = &trace;
17038 trace.file = LOCATE_parser;
17039 variable0 = param0;
17040 variable1 = NIT_NULL /*null*/;
17041 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17042 variable2 = variable3;
17043 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17044 variable3 = variable4;
17045 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17046 variable4 = variable5;
17047 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17048 variable5 = variable6;
17049 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17050 variable6 = variable7;
17051 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17052 variable7 = variable8;
17053 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17054 variable8 = variable9;
17055 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17056 variable9 = variable10;
17057 variable10 = variable9 /*nodearraylist1*/;
17058 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17059 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction178___action, LOCATE_parser, 8876); nit_exit(1);}
17060 variable11 = variable8 /*nodearraylist2*/;
17061 variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17062 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction178___action, LOCATE_parser, 8878); nit_exit(1);}
17063 variable12 = variable7 /*nodearraylist3*/;
17064 variable13 = TAG_Bool(( variable12 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
17065 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction178___action, LOCATE_parser, 8880); nit_exit(1);}
17066 variable13 = variable6 /*nodearraylist4*/;
17067 variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17068 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction178___action, LOCATE_parser, 8882); nit_exit(1);}
17069 variable14 = variable3 /*nodearraylist7*/;
17070 variable15 = TAG_Bool(( variable14 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
17071 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction178___action, LOCATE_parser, 8884); nit_exit(1);}
17072 variable16 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwinitnode5*/, NIT_NULL /*null*/, variable13 /*psignaturenode7*/, variable14 /*pexprnode8*/); /*new AConcreteInitPropdef*/
17073 variable15 = variable16;
17074 variable1 = variable15 /*ppropdefnode1*/ /*node_list=*/;
17075 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
17076 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
17077 tracehead = trace.prev;
17078 return;
17079 }
17080 void parser___ReduceAction178___init(val_t self, int* init_table) {
17081 struct trace_t trace = {NULL, NULL, 8897, LOCATE_parser___ReduceAction178___init};
17082 trace.prev = tracehead; tracehead = &trace;
17083 trace.file = LOCATE_parser;
17084 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction178].i]) return;
17085 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction178].i] = 1;
17086 tracehead = trace.prev;
17087 return;
17088 }
17089 void parser___ReduceAction179___action(val_t self, val_t param0) {
17090 struct trace_t trace = {NULL, NULL, 8901, LOCATE_parser___ReduceAction179___action};
17091 val_t variable0;
17092 val_t variable1;
17093 val_t variable2;
17094 val_t variable3;
17095 val_t variable4;
17096 val_t variable5;
17097 val_t variable6;
17098 val_t variable7;
17099 val_t variable8;
17100 val_t variable9;
17101 val_t variable10;
17102 val_t variable11;
17103 val_t variable12;
17104 val_t variable13;
17105 val_t variable14;
17106 val_t variable15;
17107 val_t variable16;
17108 val_t variable17;
17109 val_t variable18;
17110 trace.prev = tracehead; tracehead = &trace;
17111 trace.file = LOCATE_parser;
17112 variable0 = param0;
17113 variable1 = NIT_NULL /*null*/;
17114 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17115 variable2 = variable3;
17116 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17117 variable3 = variable4;
17118 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17119 variable4 = variable5;
17120 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17121 variable5 = variable6;
17122 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17123 variable6 = variable7;
17124 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17125 variable7 = variable8;
17126 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17127 variable8 = variable9;
17128 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17129 variable9 = variable10;
17130 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17131 variable10 = variable11;
17132 variable11 = variable10 /*nodearraylist1*/;
17133 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17134 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction179___action, LOCATE_parser, 8914); nit_exit(1);}
17135 variable12 = variable9 /*nodearraylist2*/;
17136 variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
17137 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction179___action, LOCATE_parser, 8916); nit_exit(1);}
17138 variable13 = variable8 /*nodearraylist3*/;
17139 variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17140 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction179___action, LOCATE_parser, 8918); nit_exit(1);}
17141 variable14 = variable7 /*nodearraylist4*/;
17142 variable15 = TAG_Bool(( variable14 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
17143 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction179___action, LOCATE_parser, 8920); nit_exit(1);}
17144 variable15 = variable6 /*nodearraylist5*/;
17145 variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17146 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction179___action, LOCATE_parser, 8922); nit_exit(1);}
17147 variable16 = variable3 /*nodearraylist8*/;
17148 variable17 = TAG_Bool(( variable16 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
17149 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction179___action, LOCATE_parser, 8924); nit_exit(1);}
17150 variable18 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwinitnode5*/, NIT_NULL /*null*/, variable15 /*psignaturenode7*/, variable16 /*pexprnode8*/); /*new AConcreteInitPropdef*/
17151 variable17 = variable18;
17152 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
17153 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
17154 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
17155 tracehead = trace.prev;
17156 return;
17157 }
17158 void parser___ReduceAction179___init(val_t self, int* init_table) {
17159 struct trace_t trace = {NULL, NULL, 8937, LOCATE_parser___ReduceAction179___init};
17160 trace.prev = tracehead; tracehead = &trace;
17161 trace.file = LOCATE_parser;
17162 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction179].i]) return;
17163 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction179].i] = 1;
17164 tracehead = trace.prev;
17165 return;
17166 }
17167 void parser___ReduceAction180___action(val_t self, val_t param0) {
17168 struct trace_t trace = {NULL, NULL, 8941, LOCATE_parser___ReduceAction180___action};
17169 val_t variable0;
17170 val_t variable1;
17171 val_t variable2;
17172 val_t variable3;
17173 val_t variable4;
17174 val_t variable5;
17175 val_t variable6;
17176 val_t variable7;
17177 val_t variable8;
17178 val_t variable9;
17179 val_t variable10;
17180 val_t variable11;
17181 val_t variable12;
17182 val_t variable13;
17183 val_t variable14;
17184 val_t variable15;
17185 val_t variable16;
17186 val_t variable17;
17187 val_t variable18;
17188 trace.prev = tracehead; tracehead = &trace;
17189 trace.file = LOCATE_parser;
17190 variable0 = param0;
17191 variable1 = NIT_NULL /*null*/;
17192 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17193 variable2 = variable3;
17194 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17195 variable3 = variable4;
17196 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17197 variable4 = variable5;
17198 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17199 variable5 = variable6;
17200 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17201 variable6 = variable7;
17202 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17203 variable7 = variable8;
17204 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17205 variable8 = variable9;
17206 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17207 variable9 = variable10;
17208 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17209 variable10 = variable11;
17210 variable11 = variable10 /*nodearraylist1*/;
17211 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17212 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction180___action, LOCATE_parser, 8954); nit_exit(1);}
17213 variable12 = variable9 /*nodearraylist2*/;
17214 variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17215 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction180___action, LOCATE_parser, 8956); nit_exit(1);}
17216 variable13 = variable8 /*nodearraylist3*/;
17217 variable14 = TAG_Bool(( variable13 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
17218 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction180___action, LOCATE_parser, 8958); nit_exit(1);}
17219 variable14 = variable7 /*nodearraylist4*/;
17220 variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17221 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction180___action, LOCATE_parser, 8960); nit_exit(1);}
17222 variable15 = variable6 /*nodearraylist5*/;
17223 variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17224 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction180___action, LOCATE_parser, 8962); nit_exit(1);}
17225 variable16 = variable3 /*nodearraylist8*/;
17226 variable17 = TAG_Bool(( variable16 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
17227 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction180___action, LOCATE_parser, 8964); nit_exit(1);}
17228 variable18 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable11 /*pdocnode2*/, NIT_NULL /*null*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwinitnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, variable16 /*pexprnode8*/); /*new AConcreteInitPropdef*/
17229 variable17 = variable18;
17230 variable1 = variable17 /*ppropdefnode1*/ /*node_list=*/;
17231 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
17232 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
17233 tracehead = trace.prev;
17234 return;
17235 }
17236 void parser___ReduceAction180___init(val_t self, int* init_table) {
17237 struct trace_t trace = {NULL, NULL, 8977, LOCATE_parser___ReduceAction180___init};
17238 trace.prev = tracehead; tracehead = &trace;
17239 trace.file = LOCATE_parser;
17240 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction180].i]) return;
17241 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction180].i] = 1;
17242 tracehead = trace.prev;
17243 return;
17244 }
17245 void parser___ReduceAction181___action(val_t self, val_t param0) {
17246 struct trace_t trace = {NULL, NULL, 8981, LOCATE_parser___ReduceAction181___action};
17247 val_t variable0;
17248 val_t variable1;
17249 val_t variable2;
17250 val_t variable3;
17251 val_t variable4;
17252 val_t variable5;
17253 val_t variable6;
17254 val_t variable7;
17255 val_t variable8;
17256 val_t variable9;
17257 val_t variable10;
17258 val_t variable11;
17259 val_t variable12;
17260 val_t variable13;
17261 val_t variable14;
17262 val_t variable15;
17263 val_t variable16;
17264 val_t variable17;
17265 val_t variable18;
17266 val_t variable19;
17267 val_t variable20;
17268 trace.prev = tracehead; tracehead = &trace;
17269 trace.file = LOCATE_parser;
17270 variable0 = param0;
17271 variable1 = NIT_NULL /*null*/;
17272 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17273 variable2 = variable3;
17274 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17275 variable3 = variable4;
17276 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17277 variable4 = variable5;
17278 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17279 variable5 = variable6;
17280 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17281 variable6 = variable7;
17282 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17283 variable7 = variable8;
17284 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17285 variable8 = variable9;
17286 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17287 variable9 = variable10;
17288 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17289 variable10 = variable11;
17290 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17291 variable11 = variable12;
17292 variable12 = variable11 /*nodearraylist1*/;
17293 variable13 = TAG_Bool(( variable12 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17294 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction181___action, LOCATE_parser, 8995); nit_exit(1);}
17295 variable13 = variable10 /*nodearraylist2*/;
17296 variable14 = TAG_Bool(( variable13 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
17297 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction181___action, LOCATE_parser, 8997); nit_exit(1);}
17298 variable14 = variable9 /*nodearraylist3*/;
17299 variable15 = TAG_Bool(( variable14 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable14 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17300 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction181___action, LOCATE_parser, 8999); nit_exit(1);}
17301 variable15 = variable8 /*nodearraylist4*/;
17302 variable16 = TAG_Bool(( variable15 /*tkwinitnode5*/==NIT_NULL) || VAL_ISA( variable15 /*tkwinitnode5*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
17303 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction181___action, LOCATE_parser, 9001); nit_exit(1);}
17304 variable16 = variable7 /*nodearraylist5*/;
17305 variable17 = TAG_Bool(( variable16 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable16 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17306 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction181___action, LOCATE_parser, 9003); nit_exit(1);}
17307 variable17 = variable6 /*nodearraylist6*/;
17308 variable18 = TAG_Bool(( variable17 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable17 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17309 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction181___action, LOCATE_parser, 9005); nit_exit(1);}
17310 variable18 = variable3 /*nodearraylist9*/;
17311 variable19 = TAG_Bool(( variable18 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
17312 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction181___action, LOCATE_parser, 9007); nit_exit(1);}
17313 variable20 = NEW_AConcreteInitPropdef_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef( variable12 /*pdocnode2*/, variable13 /*tkwredefnode3*/, variable14 /*pvisibilitynode4*/, variable15 /*tkwinitnode5*/, variable16 /*pmethidnode6*/, variable17 /*psignaturenode7*/, variable18 /*pexprnode8*/); /*new AConcreteInitPropdef*/
17314 variable19 = variable20;
17315 variable1 = variable19 /*ppropdefnode1*/ /*node_list=*/;
17316 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
17317 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
17318 tracehead = trace.prev;
17319 return;
17320 }
17321 void parser___ReduceAction181___init(val_t self, int* init_table) {
17322 struct trace_t trace = {NULL, NULL, 9020, LOCATE_parser___ReduceAction181___init};
17323 trace.prev = tracehead; tracehead = &trace;
17324 trace.file = LOCATE_parser;
17325 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction181].i]) return;
17326 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction181].i] = 1;
17327 tracehead = trace.prev;
17328 return;
17329 }
17330 void parser___ReduceAction182___action(val_t self, val_t param0) {
17331 struct trace_t trace = {NULL, NULL, 9024, LOCATE_parser___ReduceAction182___action};
17332 val_t variable0;
17333 val_t variable1;
17334 val_t variable2;
17335 val_t variable3;
17336 val_t variable4;
17337 val_t variable5;
17338 val_t variable6;
17339 val_t variable7;
17340 val_t variable8;
17341 val_t variable9;
17342 val_t variable10;
17343 val_t variable11;
17344 val_t variable12;
17345 val_t variable13;
17346 trace.prev = tracehead; tracehead = &trace;
17347 trace.file = LOCATE_parser;
17348 variable0 = param0;
17349 variable1 = NIT_NULL /*null*/;
17350 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17351 variable2 = variable3;
17352 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17353 variable3 = variable4;
17354 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17355 variable4 = variable5;
17356 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17357 variable5 = variable6;
17358 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17359 variable6 = variable7;
17360 variable7 = variable6 /*nodearraylist1*/;
17361 variable8 = TAG_Bool(( variable7 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17362 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction182___action, LOCATE_parser, 9033); nit_exit(1);}
17363 variable8 = variable5 /*nodearraylist2*/;
17364 variable9 = TAG_Bool(( variable8 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable8 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17365 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction182___action, LOCATE_parser, 9035); nit_exit(1);}
17366 variable9 = variable4 /*nodearraylist3*/;
17367 variable10 = TAG_Bool(( variable9 /*tkwtypenode5*/==NIT_NULL) || VAL_ISA( variable9 /*tkwtypenode5*/, COLOR_TKwtype, ID_TKwtype)) /*cast TKwtype*/;
17368 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction182___action, LOCATE_parser, 9037); nit_exit(1);}
17369 variable10 = variable3 /*nodearraylist4*/;
17370 variable11 = TAG_Bool(( variable10 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable10 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
17371 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction182___action, LOCATE_parser, 9039); nit_exit(1);}
17372 variable11 = variable2 /*nodearraylist5*/;
17373 variable12 = TAG_Bool(( variable11 /*ptypenode7*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode7*/, COLOR_PType, ID_PType)) /*cast PType*/;
17374 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction182___action, LOCATE_parser, 9041); nit_exit(1);}
17375 variable13 = NEW_ATypePropdef_parser_prod___ATypePropdef___init_atypepropdef( variable7 /*pdocnode2*/, NIT_NULL /*null*/, variable8 /*pvisibilitynode4*/, variable9 /*tkwtypenode5*/, variable10 /*tclassidnode6*/, variable11 /*ptypenode7*/); /*new ATypePropdef*/
17376 variable12 = variable13;
17377 variable1 = variable12 /*ppropdefnode1*/ /*node_list=*/;
17378 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
17379 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
17380 tracehead = trace.prev;
17381 return;
17382 }
17383 void parser___ReduceAction182___init(val_t self, int* init_table) {
17384 struct trace_t trace = {NULL, NULL, 9053, LOCATE_parser___ReduceAction182___init};
17385 trace.prev = tracehead; tracehead = &trace;
17386 trace.file = LOCATE_parser;
17387 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction182].i]) return;
17388 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction182].i] = 1;
17389 tracehead = trace.prev;
17390 return;
17391 }
17392 void parser___ReduceAction183___action(val_t self, val_t param0) {
17393 struct trace_t trace = {NULL, NULL, 9057, LOCATE_parser___ReduceAction183___action};
17394 val_t variable0;
17395 val_t variable1;
17396 val_t variable2;
17397 val_t variable3;
17398 val_t variable4;
17399 val_t variable5;
17400 val_t variable6;
17401 val_t variable7;
17402 val_t variable8;
17403 val_t variable9;
17404 val_t variable10;
17405 val_t variable11;
17406 val_t variable12;
17407 val_t variable13;
17408 val_t variable14;
17409 val_t variable15;
17410 trace.prev = tracehead; tracehead = &trace;
17411 trace.file = LOCATE_parser;
17412 variable0 = param0;
17413 variable1 = NIT_NULL /*null*/;
17414 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17415 variable2 = variable3;
17416 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17417 variable3 = variable4;
17418 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17419 variable4 = variable5;
17420 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17421 variable5 = variable6;
17422 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17423 variable6 = variable7;
17424 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17425 variable7 = variable8;
17426 variable8 = variable7 /*nodearraylist1*/;
17427 variable9 = TAG_Bool(( variable8 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17428 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction183___action, LOCATE_parser, 9067); nit_exit(1);}
17429 variable9 = variable6 /*nodearraylist2*/;
17430 variable10 = TAG_Bool(( variable9 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
17431 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction183___action, LOCATE_parser, 9069); nit_exit(1);}
17432 variable10 = variable5 /*nodearraylist3*/;
17433 variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17434 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction183___action, LOCATE_parser, 9071); nit_exit(1);}
17435 variable11 = variable4 /*nodearraylist4*/;
17436 variable12 = TAG_Bool(( variable11 /*tkwtypenode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwtypenode5*/, COLOR_TKwtype, ID_TKwtype)) /*cast TKwtype*/;
17437 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction183___action, LOCATE_parser, 9073); nit_exit(1);}
17438 variable12 = variable3 /*nodearraylist5*/;
17439 variable13 = TAG_Bool(( variable12 /*tclassidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*tclassidnode6*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
17440 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction183___action, LOCATE_parser, 9075); nit_exit(1);}
17441 variable13 = variable2 /*nodearraylist6*/;
17442 variable14 = TAG_Bool(( variable13 /*ptypenode7*/==NIT_NULL) || VAL_ISA( variable13 /*ptypenode7*/, COLOR_PType, ID_PType)) /*cast PType*/;
17443 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction183___action, LOCATE_parser, 9077); nit_exit(1);}
17444 variable15 = NEW_ATypePropdef_parser_prod___ATypePropdef___init_atypepropdef( variable8 /*pdocnode2*/, variable9 /*tkwredefnode3*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwtypenode5*/, variable12 /*tclassidnode6*/, variable13 /*ptypenode7*/); /*new ATypePropdef*/
17445 variable14 = variable15;
17446 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
17447 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(12)) /*Parser::go_to*/;
17448 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
17449 tracehead = trace.prev;
17450 return;
17451 }
17452 void parser___ReduceAction183___init(val_t self, int* init_table) {
17453 struct trace_t trace = {NULL, NULL, 9089, LOCATE_parser___ReduceAction183___init};
17454 trace.prev = tracehead; tracehead = &trace;
17455 trace.file = LOCATE_parser;
17456 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction183].i]) return;
17457 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction183].i] = 1;
17458 tracehead = trace.prev;
17459 return;
17460 }
17461 void parser___ReduceAction184___action(val_t self, val_t param0) {
17462 struct trace_t trace = {NULL, NULL, 9093, LOCATE_parser___ReduceAction184___action};
17463 val_t variable0;
17464 val_t variable1;
17465 val_t variable2;
17466 val_t variable3;
17467 val_t variable4;
17468 val_t variable5;
17469 trace.prev = tracehead; tracehead = &trace;
17470 trace.file = LOCATE_parser;
17471 variable0 = param0;
17472 variable1 = NIT_NULL /*null*/;
17473 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17474 variable2 = variable3;
17475 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17476 variable3 = variable4;
17477 variable4 = variable3 /*nodearraylist1*/;
17478 variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
17479 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction184___action, LOCATE_parser, 9099); nit_exit(1);}
17480 variable1 = variable4 /*ppropdefnode1*/ /*node_list=*/;
17481 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(13)) /*Parser::go_to*/;
17482 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
17483 tracehead = trace.prev;
17484 return;
17485 }
17486 void parser___ReduceAction184___init(val_t self, int* init_table) {
17487 struct trace_t trace = {NULL, NULL, 9103, LOCATE_parser___ReduceAction184___init};
17488 trace.prev = tracehead; tracehead = &trace;
17489 trace.file = LOCATE_parser;
17490 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction184].i]) return;
17491 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction184].i] = 1;
17492 tracehead = trace.prev;
17493 return;
17494 }
17495 void parser___ReduceAction185___action(val_t self, val_t param0) {
17496 struct trace_t trace = {NULL, NULL, 9107, LOCATE_parser___ReduceAction185___action};
17497 val_t variable0;
17498 val_t variable1;
17499 val_t variable2;
17500 val_t variable3;
17501 val_t variable4;
17502 val_t variable5;
17503 val_t variable6;
17504 val_t variable7;
17505 val_t variable8;
17506 val_t variable9;
17507 val_t variable10;
17508 val_t variable11;
17509 val_t variable12;
17510 val_t variable13;
17511 val_t variable14;
17512 val_t variable15;
17513 trace.prev = tracehead; tracehead = &trace;
17514 trace.file = LOCATE_parser;
17515 variable0 = param0;
17516 variable1 = NIT_NULL /*null*/;
17517 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17518 variable2 = variable3;
17519 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17520 variable3 = variable4;
17521 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17522 variable4 = variable5;
17523 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17524 variable5 = variable6;
17525 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17526 variable6 = variable7;
17527 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17528 variable7 = variable8;
17529 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17530 variable8 = variable9;
17531 variable9 = variable8 /*nodearraylist1*/;
17532 variable10 = TAG_Bool(( variable9 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable9 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17533 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction185___action, LOCATE_parser, 9118); nit_exit(1);}
17534 variable10 = variable7 /*nodearraylist2*/;
17535 variable11 = TAG_Bool(( variable10 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable10 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17536 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction185___action, LOCATE_parser, 9120); nit_exit(1);}
17537 variable11 = variable6 /*nodearraylist3*/;
17538 variable12 = TAG_Bool(( variable11 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
17539 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction185___action, LOCATE_parser, 9122); nit_exit(1);}
17540 variable12 = variable5 /*nodearraylist4*/;
17541 variable13 = TAG_Bool(( variable12 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17542 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction185___action, LOCATE_parser, 9124); nit_exit(1);}
17543 variable13 = variable4 /*nodearraylist5*/;
17544 variable14 = TAG_Bool(( variable13 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable13 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17545 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction185___action, LOCATE_parser, 9126); nit_exit(1);}
17546 variable15 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable9 /*pdocnode2*/, NIT_NULL /*null*/, variable10 /*pvisibilitynode4*/, variable11 /*tkwmethnode5*/, variable12 /*pmethidnode6*/, variable13 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/
17547 variable14 = variable15;
17548 variable1 = variable14 /*ppropdefnode1*/ /*node_list=*/;
17549 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/;
17550 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
17551 tracehead = trace.prev;
17552 return;
17553 }
17554 void parser___ReduceAction185___init(val_t self, int* init_table) {
17555 struct trace_t trace = {NULL, NULL, 9139, LOCATE_parser___ReduceAction185___init};
17556 trace.prev = tracehead; tracehead = &trace;
17557 trace.file = LOCATE_parser;
17558 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction185].i]) return;
17559 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction185].i] = 1;
17560 tracehead = trace.prev;
17561 return;
17562 }
17563 void parser___ReduceAction186___action(val_t self, val_t param0) {
17564 struct trace_t trace = {NULL, NULL, 9143, LOCATE_parser___ReduceAction186___action};
17565 val_t variable0;
17566 val_t variable1;
17567 val_t variable2;
17568 val_t variable3;
17569 val_t variable4;
17570 val_t variable5;
17571 val_t variable6;
17572 val_t variable7;
17573 val_t variable8;
17574 val_t variable9;
17575 val_t variable10;
17576 val_t variable11;
17577 val_t variable12;
17578 val_t variable13;
17579 val_t variable14;
17580 val_t variable15;
17581 val_t variable16;
17582 val_t variable17;
17583 trace.prev = tracehead; tracehead = &trace;
17584 trace.file = LOCATE_parser;
17585 variable0 = param0;
17586 variable1 = NIT_NULL /*null*/;
17587 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17588 variable2 = variable3;
17589 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17590 variable3 = variable4;
17591 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17592 variable4 = variable5;
17593 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17594 variable5 = variable6;
17595 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17596 variable6 = variable7;
17597 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17598 variable7 = variable8;
17599 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17600 variable8 = variable9;
17601 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17602 variable9 = variable10;
17603 variable10 = variable9 /*nodearraylist1*/;
17604 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17605 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction186___action, LOCATE_parser, 9155); nit_exit(1);}
17606 variable11 = variable8 /*nodearraylist2*/;
17607 variable12 = TAG_Bool(( variable11 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
17608 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction186___action, LOCATE_parser, 9157); nit_exit(1);}
17609 variable12 = variable7 /*nodearraylist3*/;
17610 variable13 = TAG_Bool(( variable12 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable12 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17611 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction186___action, LOCATE_parser, 9159); nit_exit(1);}
17612 variable13 = variable6 /*nodearraylist4*/;
17613 variable14 = TAG_Bool(( variable13 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable13 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
17614 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction186___action, LOCATE_parser, 9161); nit_exit(1);}
17615 variable14 = variable5 /*nodearraylist5*/;
17616 variable15 = TAG_Bool(( variable14 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable14 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17617 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction186___action, LOCATE_parser, 9163); nit_exit(1);}
17618 variable15 = variable4 /*nodearraylist6*/;
17619 variable16 = TAG_Bool(( variable15 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable15 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17620 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction186___action, LOCATE_parser, 9165); nit_exit(1);}
17621 variable17 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, variable11 /*tkwredefnode3*/, variable12 /*pvisibilitynode4*/, variable13 /*tkwmethnode5*/, variable14 /*pmethidnode6*/, variable15 /*psignaturenode7*/, NIT_NULL /*null*/); /*new AExternMethPropdef*/
17622 variable16 = variable17;
17623 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
17624 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/;
17625 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
17626 tracehead = trace.prev;
17627 return;
17628 }
17629 void parser___ReduceAction186___init(val_t self, int* init_table) {
17630 struct trace_t trace = {NULL, NULL, 9178, LOCATE_parser___ReduceAction186___init};
17631 trace.prev = tracehead; tracehead = &trace;
17632 trace.file = LOCATE_parser;
17633 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction186].i]) return;
17634 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction186].i] = 1;
17635 tracehead = trace.prev;
17636 return;
17637 }
17638 void parser___ReduceAction187___action(val_t self, val_t param0) {
17639 struct trace_t trace = {NULL, NULL, 9182, LOCATE_parser___ReduceAction187___action};
17640 val_t variable0;
17641 val_t variable1;
17642 val_t variable2;
17643 val_t variable3;
17644 val_t variable4;
17645 val_t variable5;
17646 val_t variable6;
17647 val_t variable7;
17648 val_t variable8;
17649 val_t variable9;
17650 val_t variable10;
17651 val_t variable11;
17652 val_t variable12;
17653 val_t variable13;
17654 val_t variable14;
17655 val_t variable15;
17656 val_t variable16;
17657 val_t variable17;
17658 trace.prev = tracehead; tracehead = &trace;
17659 trace.file = LOCATE_parser;
17660 variable0 = param0;
17661 variable1 = NIT_NULL /*null*/;
17662 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17663 variable2 = variable3;
17664 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17665 variable3 = variable4;
17666 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17667 variable4 = variable5;
17668 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17669 variable5 = variable6;
17670 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17671 variable6 = variable7;
17672 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17673 variable7 = variable8;
17674 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17675 variable8 = variable9;
17676 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17677 variable9 = variable10;
17678 variable10 = variable9 /*nodearraylist1*/;
17679 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17680 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction187___action, LOCATE_parser, 9194); nit_exit(1);}
17681 variable11 = variable8 /*nodearraylist2*/;
17682 variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17683 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction187___action, LOCATE_parser, 9196); nit_exit(1);}
17684 variable12 = variable7 /*nodearraylist3*/;
17685 variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
17686 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction187___action, LOCATE_parser, 9198); nit_exit(1);}
17687 variable13 = variable6 /*nodearraylist4*/;
17688 variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17689 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction187___action, LOCATE_parser, 9200); nit_exit(1);}
17690 variable14 = variable5 /*nodearraylist5*/;
17691 variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17692 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction187___action, LOCATE_parser, 9202); nit_exit(1);}
17693 variable15 = variable2 /*nodearraylist8*/;
17694 variable16 = TAG_Bool(( variable15 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable15 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/;
17695 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction187___action, LOCATE_parser, 9204); nit_exit(1);}
17696 variable17 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*tstringnode8*/); /*new AExternMethPropdef*/
17697 variable16 = variable17;
17698 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
17699 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/;
17700 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
17701 tracehead = trace.prev;
17702 return;
17703 }
17704 void parser___ReduceAction187___init(val_t self, int* init_table) {
17705 struct trace_t trace = {NULL, NULL, 9217, LOCATE_parser___ReduceAction187___init};
17706 trace.prev = tracehead; tracehead = &trace;
17707 trace.file = LOCATE_parser;
17708 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction187].i]) return;
17709 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction187].i] = 1;
17710 tracehead = trace.prev;
17711 return;
17712 }
17713 void parser___ReduceAction188___action(val_t self, val_t param0) {
17714 struct trace_t trace = {NULL, NULL, 9221, LOCATE_parser___ReduceAction188___action};
17715 val_t variable0;
17716 val_t variable1;
17717 val_t variable2;
17718 val_t variable3;
17719 val_t variable4;
17720 val_t variable5;
17721 val_t variable6;
17722 val_t variable7;
17723 val_t variable8;
17724 val_t variable9;
17725 val_t variable10;
17726 val_t variable11;
17727 val_t variable12;
17728 val_t variable13;
17729 val_t variable14;
17730 val_t variable15;
17731 val_t variable16;
17732 val_t variable17;
17733 val_t variable18;
17734 val_t variable19;
17735 trace.prev = tracehead; tracehead = &trace;
17736 trace.file = LOCATE_parser;
17737 variable0 = param0;
17738 variable1 = NIT_NULL /*null*/;
17739 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17740 variable2 = variable3;
17741 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17742 variable3 = variable4;
17743 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17744 variable4 = variable5;
17745 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17746 variable5 = variable6;
17747 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17748 variable6 = variable7;
17749 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17750 variable7 = variable8;
17751 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17752 variable8 = variable9;
17753 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17754 variable9 = variable10;
17755 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17756 variable10 = variable11;
17757 variable11 = variable10 /*nodearraylist1*/;
17758 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17759 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction188___action, LOCATE_parser, 9234); nit_exit(1);}
17760 variable12 = variable9 /*nodearraylist2*/;
17761 variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
17762 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction188___action, LOCATE_parser, 9236); nit_exit(1);}
17763 variable13 = variable8 /*nodearraylist3*/;
17764 variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17765 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction188___action, LOCATE_parser, 9238); nit_exit(1);}
17766 variable14 = variable7 /*nodearraylist4*/;
17767 variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
17768 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction188___action, LOCATE_parser, 9240); nit_exit(1);}
17769 variable15 = variable6 /*nodearraylist5*/;
17770 variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17771 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction188___action, LOCATE_parser, 9242); nit_exit(1);}
17772 variable16 = variable5 /*nodearraylist6*/;
17773 variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17774 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction188___action, LOCATE_parser, 9244); nit_exit(1);}
17775 variable17 = variable2 /*nodearraylist9*/;
17776 variable18 = TAG_Bool(( variable17 /*tstringnode8*/==NIT_NULL) || VAL_ISA( variable17 /*tstringnode8*/, COLOR_TString, ID_TString)) /*cast TString*/;
17777 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction188___action, LOCATE_parser, 9246); nit_exit(1);}
17778 variable19 = NEW_AExternMethPropdef_parser_prod___AExternMethPropdef___init_aexternmethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*tstringnode8*/); /*new AExternMethPropdef*/
17779 variable18 = variable19;
17780 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
17781 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/;
17782 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
17783 tracehead = trace.prev;
17784 return;
17785 }
17786 void parser___ReduceAction188___init(val_t self, int* init_table) {
17787 struct trace_t trace = {NULL, NULL, 9259, LOCATE_parser___ReduceAction188___init};
17788 trace.prev = tracehead; tracehead = &trace;
17789 trace.file = LOCATE_parser;
17790 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction188].i]) return;
17791 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction188].i] = 1;
17792 tracehead = trace.prev;
17793 return;
17794 }
17795 void parser___ReduceAction189___action(val_t self, val_t param0) {
17796 struct trace_t trace = {NULL, NULL, 9263, LOCATE_parser___ReduceAction189___action};
17797 val_t variable0;
17798 val_t variable1;
17799 val_t variable2;
17800 val_t variable3;
17801 val_t variable4;
17802 val_t variable5;
17803 val_t variable6;
17804 val_t variable7;
17805 val_t variable8;
17806 val_t variable9;
17807 val_t variable10;
17808 val_t variable11;
17809 val_t variable12;
17810 val_t variable13;
17811 val_t variable14;
17812 val_t variable15;
17813 val_t variable16;
17814 val_t variable17;
17815 trace.prev = tracehead; tracehead = &trace;
17816 trace.file = LOCATE_parser;
17817 variable0 = param0;
17818 variable1 = NIT_NULL /*null*/;
17819 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17820 variable2 = variable3;
17821 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17822 variable3 = variable4;
17823 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17824 variable4 = variable5;
17825 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17826 variable5 = variable6;
17827 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17828 variable6 = variable7;
17829 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17830 variable7 = variable8;
17831 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17832 variable8 = variable9;
17833 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17834 variable9 = variable10;
17835 variable10 = variable9 /*nodearraylist1*/;
17836 variable11 = TAG_Bool(( variable10 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17837 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction189___action, LOCATE_parser, 9275); nit_exit(1);}
17838 variable11 = variable8 /*nodearraylist2*/;
17839 variable12 = TAG_Bool(( variable11 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable11 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17840 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction189___action, LOCATE_parser, 9277); nit_exit(1);}
17841 variable12 = variable7 /*nodearraylist3*/;
17842 variable13 = TAG_Bool(( variable12 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable12 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
17843 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction189___action, LOCATE_parser, 9279); nit_exit(1);}
17844 variable13 = variable6 /*nodearraylist4*/;
17845 variable14 = TAG_Bool(( variable13 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable13 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17846 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction189___action, LOCATE_parser, 9281); nit_exit(1);}
17847 variable14 = variable5 /*nodearraylist5*/;
17848 variable15 = TAG_Bool(( variable14 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable14 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17849 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction189___action, LOCATE_parser, 9283); nit_exit(1);}
17850 variable15 = variable2 /*nodearraylist8*/;
17851 variable16 = TAG_Bool(( variable15 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
17852 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction189___action, LOCATE_parser, 9285); nit_exit(1);}
17853 variable17 = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable10 /*pdocnode2*/, NIT_NULL /*null*/, variable11 /*pvisibilitynode4*/, variable12 /*tkwmethnode5*/, variable13 /*pmethidnode6*/, variable14 /*psignaturenode7*/, variable15 /*pexprnode8*/); /*new AConcreteMethPropdef*/
17854 variable16 = variable17;
17855 variable1 = variable16 /*ppropdefnode1*/ /*node_list=*/;
17856 variable17 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/;
17857 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable17, variable1 /*node_list*/) /*Parser::push*/;
17858 tracehead = trace.prev;
17859 return;
17860 }
17861 void parser___ReduceAction189___init(val_t self, int* init_table) {
17862 struct trace_t trace = {NULL, NULL, 9298, LOCATE_parser___ReduceAction189___init};
17863 trace.prev = tracehead; tracehead = &trace;
17864 trace.file = LOCATE_parser;
17865 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction189].i]) return;
17866 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction189].i] = 1;
17867 tracehead = trace.prev;
17868 return;
17869 }
17870 void parser___ReduceAction190___action(val_t self, val_t param0) {
17871 struct trace_t trace = {NULL, NULL, 9302, LOCATE_parser___ReduceAction190___action};
17872 val_t variable0;
17873 val_t variable1;
17874 val_t variable2;
17875 val_t variable3;
17876 val_t variable4;
17877 val_t variable5;
17878 val_t variable6;
17879 val_t variable7;
17880 val_t variable8;
17881 val_t variable9;
17882 val_t variable10;
17883 val_t variable11;
17884 val_t variable12;
17885 val_t variable13;
17886 val_t variable14;
17887 val_t variable15;
17888 val_t variable16;
17889 val_t variable17;
17890 val_t variable18;
17891 val_t variable19;
17892 trace.prev = tracehead; tracehead = &trace;
17893 trace.file = LOCATE_parser;
17894 variable0 = param0;
17895 variable1 = NIT_NULL /*null*/;
17896 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17897 variable2 = variable3;
17898 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17899 variable3 = variable4;
17900 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17901 variable4 = variable5;
17902 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17903 variable5 = variable6;
17904 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17905 variable6 = variable7;
17906 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17907 variable7 = variable8;
17908 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17909 variable8 = variable9;
17910 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17911 variable9 = variable10;
17912 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17913 variable10 = variable11;
17914 variable11 = variable10 /*nodearraylist1*/;
17915 variable12 = TAG_Bool(( variable11 /*pdocnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pdocnode2*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
17916 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction190___action, LOCATE_parser, 9315); nit_exit(1);}
17917 variable12 = variable9 /*nodearraylist2*/;
17918 variable13 = TAG_Bool(( variable12 /*tkwredefnode3*/==NIT_NULL) || VAL_ISA( variable12 /*tkwredefnode3*/, COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
17919 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction190___action, LOCATE_parser, 9317); nit_exit(1);}
17920 variable13 = variable8 /*nodearraylist3*/;
17921 variable14 = TAG_Bool(( variable13 /*pvisibilitynode4*/==NIT_NULL) || VAL_ISA( variable13 /*pvisibilitynode4*/, COLOR_PVisibility, ID_PVisibility)) /*cast PVisibility*/;
17922 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction190___action, LOCATE_parser, 9319); nit_exit(1);}
17923 variable14 = variable7 /*nodearraylist4*/;
17924 variable15 = TAG_Bool(( variable14 /*tkwmethnode5*/==NIT_NULL) || VAL_ISA( variable14 /*tkwmethnode5*/, COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
17925 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction190___action, LOCATE_parser, 9321); nit_exit(1);}
17926 variable15 = variable6 /*nodearraylist5*/;
17927 variable16 = TAG_Bool(( variable15 /*pmethidnode6*/==NIT_NULL) || VAL_ISA( variable15 /*pmethidnode6*/, COLOR_PMethid, ID_PMethid)) /*cast PMethid*/;
17928 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction190___action, LOCATE_parser, 9323); nit_exit(1);}
17929 variable16 = variable5 /*nodearraylist6*/;
17930 variable17 = TAG_Bool(( variable16 /*psignaturenode7*/==NIT_NULL) || VAL_ISA( variable16 /*psignaturenode7*/, COLOR_PSignature, ID_PSignature)) /*cast PSignature*/;
17931 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction190___action, LOCATE_parser, 9325); nit_exit(1);}
17932 variable17 = variable2 /*nodearraylist9*/;
17933 variable18 = TAG_Bool(( variable17 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable17 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
17934 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction190___action, LOCATE_parser, 9327); nit_exit(1);}
17935 variable19 = NEW_AConcreteMethPropdef_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef( variable11 /*pdocnode2*/, variable12 /*tkwredefnode3*/, variable13 /*pvisibilitynode4*/, variable14 /*tkwmethnode5*/, variable15 /*pmethidnode6*/, variable16 /*psignaturenode7*/, variable17 /*pexprnode8*/); /*new AConcreteMethPropdef*/
17936 variable18 = variable19;
17937 variable1 = variable18 /*ppropdefnode1*/ /*node_list=*/;
17938 variable19 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(14)) /*Parser::go_to*/;
17939 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable19, variable1 /*node_list*/) /*Parser::push*/;
17940 tracehead = trace.prev;
17941 return;
17942 }
17943 void parser___ReduceAction190___init(val_t self, int* init_table) {
17944 struct trace_t trace = {NULL, NULL, 9340, LOCATE_parser___ReduceAction190___init};
17945 trace.prev = tracehead; tracehead = &trace;
17946 trace.file = LOCATE_parser;
17947 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction190].i]) return;
17948 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction190].i] = 1;
17949 tracehead = trace.prev;
17950 return;
17951 }
17952 void parser___ReduceAction191___action(val_t self, val_t param0) {
17953 struct trace_t trace = {NULL, NULL, 9344, LOCATE_parser___ReduceAction191___action};
17954 val_t variable0;
17955 val_t variable1;
17956 val_t variable2;
17957 val_t variable3;
17958 trace.prev = tracehead; tracehead = &trace;
17959 trace.file = LOCATE_parser;
17960 variable0 = param0;
17961 variable1 = NIT_NULL /*null*/;
17962 variable3 = NEW_APublicVisibility_parser_prod___APublicVisibility___init_apublicvisibility(); /*new APublicVisibility*/
17963 variable2 = variable3;
17964 variable1 = variable2 /*pvisibilitynode1*/ /*node_list=*/;
17965 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/;
17966 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
17967 tracehead = trace.prev;
17968 return;
17969 }
17970 void parser___ReduceAction191___init(val_t self, int* init_table) {
17971 struct trace_t trace = {NULL, NULL, 9352, LOCATE_parser___ReduceAction191___init};
17972 trace.prev = tracehead; tracehead = &trace;
17973 trace.file = LOCATE_parser;
17974 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction191].i]) return;
17975 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction191].i] = 1;
17976 tracehead = trace.prev;
17977 return;
17978 }
17979 void parser___ReduceAction192___action(val_t self, val_t param0) {
17980 struct trace_t trace = {NULL, NULL, 9356, LOCATE_parser___ReduceAction192___action};
17981 val_t variable0;
17982 val_t variable1;
17983 val_t variable2;
17984 val_t variable3;
17985 val_t variable4;
17986 val_t variable5;
17987 val_t variable6;
17988 trace.prev = tracehead; tracehead = &trace;
17989 trace.file = LOCATE_parser;
17990 variable0 = param0;
17991 variable1 = NIT_NULL /*null*/;
17992 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17993 variable2 = variable3;
17994 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
17995 variable3 = variable4;
17996 variable4 = variable3 /*nodearraylist1*/;
17997 variable5 = TAG_Bool(( variable4 /*tkwprivatenode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwprivatenode2*/, COLOR_TKwprivate, ID_TKwprivate)) /*cast TKwprivate*/;
17998 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction192___action, LOCATE_parser, 9362); nit_exit(1);}
17999 variable6 = NEW_APrivateVisibility_parser_prod___APrivateVisibility___init_aprivatevisibility( variable4 /*tkwprivatenode2*/); /*new APrivateVisibility*/
18000 variable5 = variable6;
18001 variable1 = variable5 /*pvisibilitynode1*/ /*node_list=*/;
18002 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/;
18003 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
18004 tracehead = trace.prev;
18005 return;
18006 }
18007 void parser___ReduceAction192___init(val_t self, int* init_table) {
18008 struct trace_t trace = {NULL, NULL, 9369, LOCATE_parser___ReduceAction192___init};
18009 trace.prev = tracehead; tracehead = &trace;
18010 trace.file = LOCATE_parser;
18011 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction192].i]) return;
18012 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction192].i] = 1;
18013 tracehead = trace.prev;
18014 return;
18015 }
18016 void parser___ReduceAction193___action(val_t self, val_t param0) {
18017 struct trace_t trace = {NULL, NULL, 9373, LOCATE_parser___ReduceAction193___action};
18018 val_t variable0;
18019 val_t variable1;
18020 val_t variable2;
18021 val_t variable3;
18022 val_t variable4;
18023 val_t variable5;
18024 val_t variable6;
18025 trace.prev = tracehead; tracehead = &trace;
18026 trace.file = LOCATE_parser;
18027 variable0 = param0;
18028 variable1 = NIT_NULL /*null*/;
18029 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18030 variable2 = variable3;
18031 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18032 variable3 = variable4;
18033 variable4 = variable3 /*nodearraylist1*/;
18034 variable5 = TAG_Bool(( variable4 /*tkwprotectednode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwprotectednode2*/, COLOR_TKwprotected, ID_TKwprotected)) /*cast TKwprotected*/;
18035 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction193___action, LOCATE_parser, 9379); nit_exit(1);}
18036 variable6 = NEW_AProtectedVisibility_parser_prod___AProtectedVisibility___init_aprotectedvisibility( variable4 /*tkwprotectednode2*/); /*new AProtectedVisibility*/
18037 variable5 = variable6;
18038 variable1 = variable5 /*pvisibilitynode1*/ /*node_list=*/;
18039 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/;
18040 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
18041 tracehead = trace.prev;
18042 return;
18043 }
18044 void parser___ReduceAction193___init(val_t self, int* init_table) {
18045 struct trace_t trace = {NULL, NULL, 9386, LOCATE_parser___ReduceAction193___init};
18046 trace.prev = tracehead; tracehead = &trace;
18047 trace.file = LOCATE_parser;
18048 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction193].i]) return;
18049 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction193].i] = 1;
18050 tracehead = trace.prev;
18051 return;
18052 }
18053 void parser___ReduceAction194___action(val_t self, val_t param0) {
18054 struct trace_t trace = {NULL, NULL, 9390, LOCATE_parser___ReduceAction194___action};
18055 val_t variable0;
18056 val_t variable1;
18057 val_t variable2;
18058 val_t variable3;
18059 val_t variable4;
18060 val_t variable5;
18061 val_t variable6;
18062 trace.prev = tracehead; tracehead = &trace;
18063 trace.file = LOCATE_parser;
18064 variable0 = param0;
18065 variable1 = NIT_NULL /*null*/;
18066 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18067 variable2 = variable3;
18068 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18069 variable3 = variable4;
18070 variable4 = variable3 /*nodearraylist1*/;
18071 variable5 = TAG_Bool(( variable4 /*tkwintrudenode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwintrudenode2*/, COLOR_TKwintrude, ID_TKwintrude)) /*cast TKwintrude*/;
18072 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction194___action, LOCATE_parser, 9396); nit_exit(1);}
18073 variable6 = NEW_AIntrudeVisibility_parser_prod___AIntrudeVisibility___init_aintrudevisibility( variable4 /*tkwintrudenode2*/); /*new AIntrudeVisibility*/
18074 variable5 = variable6;
18075 variable1 = variable5 /*pvisibilitynode1*/ /*node_list=*/;
18076 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(15)) /*Parser::go_to*/;
18077 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
18078 tracehead = trace.prev;
18079 return;
18080 }
18081 void parser___ReduceAction194___init(val_t self, int* init_table) {
18082 struct trace_t trace = {NULL, NULL, 9403, LOCATE_parser___ReduceAction194___init};
18083 trace.prev = tracehead; tracehead = &trace;
18084 trace.file = LOCATE_parser;
18085 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction194].i]) return;
18086 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction194].i] = 1;
18087 tracehead = trace.prev;
18088 return;
18089 }
18090 void parser___ReduceAction195___action(val_t self, val_t param0) {
18091 struct trace_t trace = {NULL, NULL, 9407, LOCATE_parser___ReduceAction195___action};
18092 val_t variable0;
18093 val_t variable1;
18094 val_t variable2;
18095 val_t variable3;
18096 val_t variable4;
18097 val_t variable5;
18098 trace.prev = tracehead; tracehead = &trace;
18099 trace.file = LOCATE_parser;
18100 variable0 = param0;
18101 variable1 = NIT_NULL /*null*/;
18102 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18103 variable2 = variable3;
18104 variable3 = variable2 /*nodearraylist1*/;
18105 variable4 = TAG_Bool(( variable3 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/;
18106 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction195___action, LOCATE_parser, 9412); nit_exit(1);}
18107 variable5 = NEW_AIdMethid_parser_prod___AIdMethid___init_aidmethid( variable3 /*tidnode2*/); /*new AIdMethid*/
18108 variable4 = variable5;
18109 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18110 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18111 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18112 tracehead = trace.prev;
18113 return;
18114 }
18115 void parser___ReduceAction195___init(val_t self, int* init_table) {
18116 struct trace_t trace = {NULL, NULL, 9419, LOCATE_parser___ReduceAction195___init};
18117 trace.prev = tracehead; tracehead = &trace;
18118 trace.file = LOCATE_parser;
18119 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction195].i]) return;
18120 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction195].i] = 1;
18121 tracehead = trace.prev;
18122 return;
18123 }
18124 void parser___ReduceAction196___action(val_t self, val_t param0) {
18125 struct trace_t trace = {NULL, NULL, 9423, LOCATE_parser___ReduceAction196___action};
18126 val_t variable0;
18127 val_t variable1;
18128 val_t variable2;
18129 val_t variable3;
18130 val_t variable4;
18131 val_t variable5;
18132 trace.prev = tracehead; tracehead = &trace;
18133 trace.file = LOCATE_parser;
18134 variable0 = param0;
18135 variable1 = NIT_NULL /*null*/;
18136 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18137 variable2 = variable3;
18138 variable3 = variable2 /*nodearraylist1*/;
18139 variable4 = TAG_Bool(( variable3 /*tplusnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tplusnode2*/, COLOR_TPlus, ID_TPlus)) /*cast TPlus*/;
18140 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction196___action, LOCATE_parser, 9428); nit_exit(1);}
18141 variable5 = NEW_APlusMethid_parser_prod___APlusMethid___init_aplusmethid( variable3 /*tplusnode2*/); /*new APlusMethid*/
18142 variable4 = variable5;
18143 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18144 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18145 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18146 tracehead = trace.prev;
18147 return;
18148 }
18149 void parser___ReduceAction196___init(val_t self, int* init_table) {
18150 struct trace_t trace = {NULL, NULL, 9435, LOCATE_parser___ReduceAction196___init};
18151 trace.prev = tracehead; tracehead = &trace;
18152 trace.file = LOCATE_parser;
18153 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction196].i]) return;
18154 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction196].i] = 1;
18155 tracehead = trace.prev;
18156 return;
18157 }
18158 void parser___ReduceAction197___action(val_t self, val_t param0) {
18159 struct trace_t trace = {NULL, NULL, 9439, LOCATE_parser___ReduceAction197___action};
18160 val_t variable0;
18161 val_t variable1;
18162 val_t variable2;
18163 val_t variable3;
18164 val_t variable4;
18165 val_t variable5;
18166 trace.prev = tracehead; tracehead = &trace;
18167 trace.file = LOCATE_parser;
18168 variable0 = param0;
18169 variable1 = NIT_NULL /*null*/;
18170 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18171 variable2 = variable3;
18172 variable3 = variable2 /*nodearraylist1*/;
18173 variable4 = TAG_Bool(( variable3 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/;
18174 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction197___action, LOCATE_parser, 9444); nit_exit(1);}
18175 variable5 = NEW_AMinusMethid_parser_prod___AMinusMethid___init_aminusmethid( variable3 /*tminusnode2*/); /*new AMinusMethid*/
18176 variable4 = variable5;
18177 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18178 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18179 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18180 tracehead = trace.prev;
18181 return;
18182 }
18183 void parser___ReduceAction197___init(val_t self, int* init_table) {
18184 struct trace_t trace = {NULL, NULL, 9451, LOCATE_parser___ReduceAction197___init};
18185 trace.prev = tracehead; tracehead = &trace;
18186 trace.file = LOCATE_parser;
18187 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction197].i]) return;
18188 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction197].i] = 1;
18189 tracehead = trace.prev;
18190 return;
18191 }
18192 void parser___ReduceAction198___action(val_t self, val_t param0) {
18193 struct trace_t trace = {NULL, NULL, 9455, LOCATE_parser___ReduceAction198___action};
18194 val_t variable0;
18195 val_t variable1;
18196 val_t variable2;
18197 val_t variable3;
18198 val_t variable4;
18199 val_t variable5;
18200 trace.prev = tracehead; tracehead = &trace;
18201 trace.file = LOCATE_parser;
18202 variable0 = param0;
18203 variable1 = NIT_NULL /*null*/;
18204 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18205 variable2 = variable3;
18206 variable3 = variable2 /*nodearraylist1*/;
18207 variable4 = TAG_Bool(( variable3 /*tstarnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstarnode2*/, COLOR_TStar, ID_TStar)) /*cast TStar*/;
18208 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction198___action, LOCATE_parser, 9460); nit_exit(1);}
18209 variable5 = NEW_AStarMethid_parser_prod___AStarMethid___init_astarmethid( variable3 /*tstarnode2*/); /*new AStarMethid*/
18210 variable4 = variable5;
18211 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18212 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18213 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18214 tracehead = trace.prev;
18215 return;
18216 }
18217 void parser___ReduceAction198___init(val_t self, int* init_table) {
18218 struct trace_t trace = {NULL, NULL, 9467, LOCATE_parser___ReduceAction198___init};
18219 trace.prev = tracehead; tracehead = &trace;
18220 trace.file = LOCATE_parser;
18221 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction198].i]) return;
18222 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction198].i] = 1;
18223 tracehead = trace.prev;
18224 return;
18225 }
18226 void parser___ReduceAction199___action(val_t self, val_t param0) {
18227 struct trace_t trace = {NULL, NULL, 9471, LOCATE_parser___ReduceAction199___action};
18228 val_t variable0;
18229 val_t variable1;
18230 val_t variable2;
18231 val_t variable3;
18232 val_t variable4;
18233 val_t variable5;
18234 trace.prev = tracehead; tracehead = &trace;
18235 trace.file = LOCATE_parser;
18236 variable0 = param0;
18237 variable1 = NIT_NULL /*null*/;
18238 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18239 variable2 = variable3;
18240 variable3 = variable2 /*nodearraylist1*/;
18241 variable4 = TAG_Bool(( variable3 /*tslashnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tslashnode2*/, COLOR_TSlash, ID_TSlash)) /*cast TSlash*/;
18242 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction199___action, LOCATE_parser, 9476); nit_exit(1);}
18243 variable5 = NEW_ASlashMethid_parser_prod___ASlashMethid___init_aslashmethid( variable3 /*tslashnode2*/); /*new ASlashMethid*/
18244 variable4 = variable5;
18245 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18246 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18247 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18248 tracehead = trace.prev;
18249 return;
18250 }
18251 void parser___ReduceAction199___init(val_t self, int* init_table) {
18252 struct trace_t trace = {NULL, NULL, 9483, LOCATE_parser___ReduceAction199___init};
18253 trace.prev = tracehead; tracehead = &trace;
18254 trace.file = LOCATE_parser;
18255 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction199].i]) return;
18256 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction199].i] = 1;
18257 tracehead = trace.prev;
18258 return;
18259 }
18260 void parser___ReduceAction200___action(val_t self, val_t param0) {
18261 struct trace_t trace = {NULL, NULL, 9487, LOCATE_parser___ReduceAction200___action};
18262 val_t variable0;
18263 val_t variable1;
18264 val_t variable2;
18265 val_t variable3;
18266 val_t variable4;
18267 val_t variable5;
18268 trace.prev = tracehead; tracehead = &trace;
18269 trace.file = LOCATE_parser;
18270 variable0 = param0;
18271 variable1 = NIT_NULL /*null*/;
18272 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18273 variable2 = variable3;
18274 variable3 = variable2 /*nodearraylist1*/;
18275 variable4 = TAG_Bool(( variable3 /*tpercentnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tpercentnode2*/, COLOR_TPercent, ID_TPercent)) /*cast TPercent*/;
18276 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction200___action, LOCATE_parser, 9492); nit_exit(1);}
18277 variable5 = NEW_APercentMethid_parser_prod___APercentMethid___init_apercentmethid( variable3 /*tpercentnode2*/); /*new APercentMethid*/
18278 variable4 = variable5;
18279 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18280 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18281 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18282 tracehead = trace.prev;
18283 return;
18284 }
18285 void parser___ReduceAction200___init(val_t self, int* init_table) {
18286 struct trace_t trace = {NULL, NULL, 9499, LOCATE_parser___ReduceAction200___init};
18287 trace.prev = tracehead; tracehead = &trace;
18288 trace.file = LOCATE_parser;
18289 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction200].i]) return;
18290 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction200].i] = 1;
18291 tracehead = trace.prev;
18292 return;
18293 }
18294 void parser___ReduceAction201___action(val_t self, val_t param0) {
18295 struct trace_t trace = {NULL, NULL, 9503, LOCATE_parser___ReduceAction201___action};
18296 val_t variable0;
18297 val_t variable1;
18298 val_t variable2;
18299 val_t variable3;
18300 val_t variable4;
18301 val_t variable5;
18302 trace.prev = tracehead; tracehead = &trace;
18303 trace.file = LOCATE_parser;
18304 variable0 = param0;
18305 variable1 = NIT_NULL /*null*/;
18306 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18307 variable2 = variable3;
18308 variable3 = variable2 /*nodearraylist1*/;
18309 variable4 = TAG_Bool(( variable3 /*teqnode2*/==NIT_NULL) || VAL_ISA( variable3 /*teqnode2*/, COLOR_TEq, ID_TEq)) /*cast TEq*/;
18310 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction201___action, LOCATE_parser, 9508); nit_exit(1);}
18311 variable5 = NEW_AEqMethid_parser_prod___AEqMethid___init_aeqmethid( variable3 /*teqnode2*/); /*new AEqMethid*/
18312 variable4 = variable5;
18313 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18314 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18315 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18316 tracehead = trace.prev;
18317 return;
18318 }
18319 void parser___ReduceAction201___init(val_t self, int* init_table) {
18320 struct trace_t trace = {NULL, NULL, 9515, LOCATE_parser___ReduceAction201___init};
18321 trace.prev = tracehead; tracehead = &trace;
18322 trace.file = LOCATE_parser;
18323 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction201].i]) return;
18324 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction201].i] = 1;
18325 tracehead = trace.prev;
18326 return;
18327 }
18328 void parser___ReduceAction202___action(val_t self, val_t param0) {
18329 struct trace_t trace = {NULL, NULL, 9519, LOCATE_parser___ReduceAction202___action};
18330 val_t variable0;
18331 val_t variable1;
18332 val_t variable2;
18333 val_t variable3;
18334 val_t variable4;
18335 val_t variable5;
18336 trace.prev = tracehead; tracehead = &trace;
18337 trace.file = LOCATE_parser;
18338 variable0 = param0;
18339 variable1 = NIT_NULL /*null*/;
18340 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18341 variable2 = variable3;
18342 variable3 = variable2 /*nodearraylist1*/;
18343 variable4 = TAG_Bool(( variable3 /*tnenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnenode2*/, COLOR_TNe, ID_TNe)) /*cast TNe*/;
18344 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction202___action, LOCATE_parser, 9524); nit_exit(1);}
18345 variable5 = NEW_ANeMethid_parser_prod___ANeMethid___init_anemethid( variable3 /*tnenode2*/); /*new ANeMethid*/
18346 variable4 = variable5;
18347 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18348 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18349 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18350 tracehead = trace.prev;
18351 return;
18352 }
18353 void parser___ReduceAction202___init(val_t self, int* init_table) {
18354 struct trace_t trace = {NULL, NULL, 9531, LOCATE_parser___ReduceAction202___init};
18355 trace.prev = tracehead; tracehead = &trace;
18356 trace.file = LOCATE_parser;
18357 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction202].i]) return;
18358 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction202].i] = 1;
18359 tracehead = trace.prev;
18360 return;
18361 }
18362 void parser___ReduceAction203___action(val_t self, val_t param0) {
18363 struct trace_t trace = {NULL, NULL, 9535, LOCATE_parser___ReduceAction203___action};
18364 val_t variable0;
18365 val_t variable1;
18366 val_t variable2;
18367 val_t variable3;
18368 val_t variable4;
18369 val_t variable5;
18370 trace.prev = tracehead; tracehead = &trace;
18371 trace.file = LOCATE_parser;
18372 variable0 = param0;
18373 variable1 = NIT_NULL /*null*/;
18374 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18375 variable2 = variable3;
18376 variable3 = variable2 /*nodearraylist1*/;
18377 variable4 = TAG_Bool(( variable3 /*tlenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tlenode2*/, COLOR_TLe, ID_TLe)) /*cast TLe*/;
18378 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction203___action, LOCATE_parser, 9540); nit_exit(1);}
18379 variable5 = NEW_ALeMethid_parser_prod___ALeMethid___init_alemethid( variable3 /*tlenode2*/); /*new ALeMethid*/
18380 variable4 = variable5;
18381 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18382 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18383 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18384 tracehead = trace.prev;
18385 return;
18386 }
18387 void parser___ReduceAction203___init(val_t self, int* init_table) {
18388 struct trace_t trace = {NULL, NULL, 9547, LOCATE_parser___ReduceAction203___init};
18389 trace.prev = tracehead; tracehead = &trace;
18390 trace.file = LOCATE_parser;
18391 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction203].i]) return;
18392 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction203].i] = 1;
18393 tracehead = trace.prev;
18394 return;
18395 }
18396 void parser___ReduceAction204___action(val_t self, val_t param0) {
18397 struct trace_t trace = {NULL, NULL, 9551, LOCATE_parser___ReduceAction204___action};
18398 val_t variable0;
18399 val_t variable1;
18400 val_t variable2;
18401 val_t variable3;
18402 val_t variable4;
18403 val_t variable5;
18404 trace.prev = tracehead; tracehead = &trace;
18405 trace.file = LOCATE_parser;
18406 variable0 = param0;
18407 variable1 = NIT_NULL /*null*/;
18408 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18409 variable2 = variable3;
18410 variable3 = variable2 /*nodearraylist1*/;
18411 variable4 = TAG_Bool(( variable3 /*tgenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tgenode2*/, COLOR_TGe, ID_TGe)) /*cast TGe*/;
18412 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction204___action, LOCATE_parser, 9556); nit_exit(1);}
18413 variable5 = NEW_AGeMethid_parser_prod___AGeMethid___init_agemethid( variable3 /*tgenode2*/); /*new AGeMethid*/
18414 variable4 = variable5;
18415 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18416 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18417 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18418 tracehead = trace.prev;
18419 return;
18420 }
18421 void parser___ReduceAction204___init(val_t self, int* init_table) {
18422 struct trace_t trace = {NULL, NULL, 9563, LOCATE_parser___ReduceAction204___init};
18423 trace.prev = tracehead; tracehead = &trace;
18424 trace.file = LOCATE_parser;
18425 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction204].i]) return;
18426 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction204].i] = 1;
18427 tracehead = trace.prev;
18428 return;
18429 }
18430 void parser___ReduceAction205___action(val_t self, val_t param0) {
18431 struct trace_t trace = {NULL, NULL, 9567, LOCATE_parser___ReduceAction205___action};
18432 val_t variable0;
18433 val_t variable1;
18434 val_t variable2;
18435 val_t variable3;
18436 val_t variable4;
18437 val_t variable5;
18438 trace.prev = tracehead; tracehead = &trace;
18439 trace.file = LOCATE_parser;
18440 variable0 = param0;
18441 variable1 = NIT_NULL /*null*/;
18442 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18443 variable2 = variable3;
18444 variable3 = variable2 /*nodearraylist1*/;
18445 variable4 = TAG_Bool(( variable3 /*tltnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tltnode2*/, COLOR_TLt, ID_TLt)) /*cast TLt*/;
18446 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction205___action, LOCATE_parser, 9572); nit_exit(1);}
18447 variable5 = NEW_ALtMethid_parser_prod___ALtMethid___init_altmethid( variable3 /*tltnode2*/); /*new ALtMethid*/
18448 variable4 = variable5;
18449 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18450 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18451 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18452 tracehead = trace.prev;
18453 return;
18454 }
18455 void parser___ReduceAction205___init(val_t self, int* init_table) {
18456 struct trace_t trace = {NULL, NULL, 9579, LOCATE_parser___ReduceAction205___init};
18457 trace.prev = tracehead; tracehead = &trace;
18458 trace.file = LOCATE_parser;
18459 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction205].i]) return;
18460 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction205].i] = 1;
18461 tracehead = trace.prev;
18462 return;
18463 }
18464 void parser___ReduceAction206___action(val_t self, val_t param0) {
18465 struct trace_t trace = {NULL, NULL, 9583, LOCATE_parser___ReduceAction206___action};
18466 val_t variable0;
18467 val_t variable1;
18468 val_t variable2;
18469 val_t variable3;
18470 val_t variable4;
18471 val_t variable5;
18472 trace.prev = tracehead; tracehead = &trace;
18473 trace.file = LOCATE_parser;
18474 variable0 = param0;
18475 variable1 = NIT_NULL /*null*/;
18476 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18477 variable2 = variable3;
18478 variable3 = variable2 /*nodearraylist1*/;
18479 variable4 = TAG_Bool(( variable3 /*tgtnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tgtnode2*/, COLOR_TGt, ID_TGt)) /*cast TGt*/;
18480 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction206___action, LOCATE_parser, 9588); nit_exit(1);}
18481 variable5 = NEW_AGtMethid_parser_prod___AGtMethid___init_agtmethid( variable3 /*tgtnode2*/); /*new AGtMethid*/
18482 variable4 = variable5;
18483 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18484 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18485 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18486 tracehead = trace.prev;
18487 return;
18488 }
18489 void parser___ReduceAction206___init(val_t self, int* init_table) {
18490 struct trace_t trace = {NULL, NULL, 9595, LOCATE_parser___ReduceAction206___init};
18491 trace.prev = tracehead; tracehead = &trace;
18492 trace.file = LOCATE_parser;
18493 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction206].i]) return;
18494 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction206].i] = 1;
18495 tracehead = trace.prev;
18496 return;
18497 }
18498 void parser___ReduceAction207___action(val_t self, val_t param0) {
18499 struct trace_t trace = {NULL, NULL, 9599, LOCATE_parser___ReduceAction207___action};
18500 val_t variable0;
18501 val_t variable1;
18502 val_t variable2;
18503 val_t variable3;
18504 val_t variable4;
18505 val_t variable5;
18506 val_t variable6;
18507 val_t variable7;
18508 trace.prev = tracehead; tracehead = &trace;
18509 trace.file = LOCATE_parser;
18510 variable0 = param0;
18511 variable1 = NIT_NULL /*null*/;
18512 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18513 variable2 = variable3;
18514 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18515 variable3 = variable4;
18516 variable4 = variable3 /*nodearraylist1*/;
18517 variable5 = TAG_Bool(( variable4 /*tobranode2*/==NIT_NULL) || VAL_ISA( variable4 /*tobranode2*/, COLOR_TObra, ID_TObra)) /*cast TObra*/;
18518 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction207___action, LOCATE_parser, 9605); nit_exit(1);}
18519 variable5 = variable2 /*nodearraylist2*/;
18520 variable6 = TAG_Bool(( variable5 /*tcbranode3*/==NIT_NULL) || VAL_ISA( variable5 /*tcbranode3*/, COLOR_TCbra, ID_TCbra)) /*cast TCbra*/;
18521 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction207___action, LOCATE_parser, 9607); nit_exit(1);}
18522 variable7 = NEW_ABraMethid_parser_prod___ABraMethid___init_abramethid( variable4 /*tobranode2*/, variable5 /*tcbranode3*/); /*new ABraMethid*/
18523 variable6 = variable7;
18524 variable1 = variable6 /*pmethidnode1*/ /*node_list=*/;
18525 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18526 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
18527 tracehead = trace.prev;
18528 return;
18529 }
18530 void parser___ReduceAction207___init(val_t self, int* init_table) {
18531 struct trace_t trace = {NULL, NULL, 9615, LOCATE_parser___ReduceAction207___init};
18532 trace.prev = tracehead; tracehead = &trace;
18533 trace.file = LOCATE_parser;
18534 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction207].i]) return;
18535 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction207].i] = 1;
18536 tracehead = trace.prev;
18537 return;
18538 }
18539 void parser___ReduceAction208___action(val_t self, val_t param0) {
18540 struct trace_t trace = {NULL, NULL, 9619, LOCATE_parser___ReduceAction208___action};
18541 val_t variable0;
18542 val_t variable1;
18543 val_t variable2;
18544 val_t variable3;
18545 val_t variable4;
18546 val_t variable5;
18547 trace.prev = tracehead; tracehead = &trace;
18548 trace.file = LOCATE_parser;
18549 variable0 = param0;
18550 variable1 = NIT_NULL /*null*/;
18551 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18552 variable2 = variable3;
18553 variable3 = variable2 /*nodearraylist1*/;
18554 variable4 = TAG_Bool(( variable3 /*tstarshipnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstarshipnode2*/, COLOR_TStarship, ID_TStarship)) /*cast TStarship*/;
18555 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction208___action, LOCATE_parser, 9624); nit_exit(1);}
18556 variable5 = NEW_AStarshipMethid_parser_prod___AStarshipMethid___init_astarshipmethid( variable3 /*tstarshipnode2*/); /*new AStarshipMethid*/
18557 variable4 = variable5;
18558 variable1 = variable4 /*pmethidnode1*/ /*node_list=*/;
18559 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18560 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
18561 tracehead = trace.prev;
18562 return;
18563 }
18564 void parser___ReduceAction208___init(val_t self, int* init_table) {
18565 struct trace_t trace = {NULL, NULL, 9631, LOCATE_parser___ReduceAction208___init};
18566 trace.prev = tracehead; tracehead = &trace;
18567 trace.file = LOCATE_parser;
18568 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction208].i]) return;
18569 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction208].i] = 1;
18570 tracehead = trace.prev;
18571 return;
18572 }
18573 void parser___ReduceAction209___action(val_t self, val_t param0) {
18574 struct trace_t trace = {NULL, NULL, 9635, LOCATE_parser___ReduceAction209___action};
18575 val_t variable0;
18576 val_t variable1;
18577 val_t variable2;
18578 val_t variable3;
18579 val_t variable4;
18580 val_t variable5;
18581 val_t variable6;
18582 val_t variable7;
18583 trace.prev = tracehead; tracehead = &trace;
18584 trace.file = LOCATE_parser;
18585 variable0 = param0;
18586 variable1 = NIT_NULL /*null*/;
18587 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18588 variable2 = variable3;
18589 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18590 variable3 = variable4;
18591 variable4 = variable3 /*nodearraylist1*/;
18592 variable5 = TAG_Bool(( variable4 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/;
18593 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction209___action, LOCATE_parser, 9641); nit_exit(1);}
18594 variable5 = variable2 /*nodearraylist2*/;
18595 variable6 = TAG_Bool(( variable5 /*tassignnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tassignnode3*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
18596 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction209___action, LOCATE_parser, 9643); nit_exit(1);}
18597 variable7 = NEW_AAssignMethid_parser_prod___AAssignMethid___init_aassignmethid( variable4 /*tidnode2*/, variable5 /*tassignnode3*/); /*new AAssignMethid*/
18598 variable6 = variable7;
18599 variable1 = variable6 /*pmethidnode1*/ /*node_list=*/;
18600 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18601 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
18602 tracehead = trace.prev;
18603 return;
18604 }
18605 void parser___ReduceAction209___init(val_t self, int* init_table) {
18606 struct trace_t trace = {NULL, NULL, 9651, LOCATE_parser___ReduceAction209___init};
18607 trace.prev = tracehead; tracehead = &trace;
18608 trace.file = LOCATE_parser;
18609 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction209].i]) return;
18610 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction209].i] = 1;
18611 tracehead = trace.prev;
18612 return;
18613 }
18614 void parser___ReduceAction210___action(val_t self, val_t param0) {
18615 struct trace_t trace = {NULL, NULL, 9655, LOCATE_parser___ReduceAction210___action};
18616 val_t variable0;
18617 val_t variable1;
18618 val_t variable2;
18619 val_t variable3;
18620 val_t variable4;
18621 val_t variable5;
18622 val_t variable6;
18623 val_t variable7;
18624 val_t variable8;
18625 val_t variable9;
18626 trace.prev = tracehead; tracehead = &trace;
18627 trace.file = LOCATE_parser;
18628 variable0 = param0;
18629 variable1 = NIT_NULL /*null*/;
18630 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18631 variable2 = variable3;
18632 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18633 variable3 = variable4;
18634 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18635 variable4 = variable5;
18636 variable5 = variable4 /*nodearraylist1*/;
18637 variable6 = TAG_Bool(( variable5 /*tobranode2*/==NIT_NULL) || VAL_ISA( variable5 /*tobranode2*/, COLOR_TObra, ID_TObra)) /*cast TObra*/;
18638 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction210___action, LOCATE_parser, 9662); nit_exit(1);}
18639 variable6 = variable3 /*nodearraylist2*/;
18640 variable7 = TAG_Bool(( variable6 /*tcbranode3*/==NIT_NULL) || VAL_ISA( variable6 /*tcbranode3*/, COLOR_TCbra, ID_TCbra)) /*cast TCbra*/;
18641 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction210___action, LOCATE_parser, 9664); nit_exit(1);}
18642 variable7 = variable2 /*nodearraylist3*/;
18643 variable8 = TAG_Bool(( variable7 /*tassignnode4*/==NIT_NULL) || VAL_ISA( variable7 /*tassignnode4*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
18644 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction210___action, LOCATE_parser, 9666); nit_exit(1);}
18645 variable9 = NEW_ABraassignMethid_parser_prod___ABraassignMethid___init_abraassignmethid( variable5 /*tobranode2*/, variable6 /*tcbranode3*/, variable7 /*tassignnode4*/); /*new ABraassignMethid*/
18646 variable8 = variable9;
18647 variable1 = variable8 /*pmethidnode1*/ /*node_list=*/;
18648 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(16)) /*Parser::go_to*/;
18649 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
18650 tracehead = trace.prev;
18651 return;
18652 }
18653 void parser___ReduceAction210___init(val_t self, int* init_table) {
18654 struct trace_t trace = {NULL, NULL, 9675, LOCATE_parser___ReduceAction210___init};
18655 trace.prev = tracehead; tracehead = &trace;
18656 trace.file = LOCATE_parser;
18657 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction210].i]) return;
18658 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction210].i] = 1;
18659 tracehead = trace.prev;
18660 return;
18661 }
18662 void parser___ReduceAction211___action(val_t self, val_t param0) {
18663 struct trace_t trace = {NULL, NULL, 9679, LOCATE_parser___ReduceAction211___action};
18664 val_t variable0;
18665 val_t variable1;
18666 val_t variable2;
18667 val_t variable3;
18668 val_t variable4;
18669 trace.prev = tracehead; tracehead = &trace;
18670 trace.file = LOCATE_parser;
18671 variable0 = param0;
18672 variable1 = NIT_NULL /*null*/;
18673 variable3 = NEW_Array_array___Array___init(); /*new Array[Object]*/
18674 variable2 = variable3;
18675 variable4 = NEW_ASignature_parser_prod___ASignature___init_asignature( variable2 /*listnode2*/, NIT_NULL /*null*/); /*new ASignature*/
18676 variable3 = variable4;
18677 variable1 = variable3 /*psignaturenode1*/ /*node_list=*/;
18678 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/;
18679 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
18680 tracehead = trace.prev;
18681 return;
18682 }
18683 void parser___ReduceAction211___init(val_t self, int* init_table) {
18684 struct trace_t trace = {NULL, NULL, 9690, LOCATE_parser___ReduceAction211___init};
18685 trace.prev = tracehead; tracehead = &trace;
18686 trace.file = LOCATE_parser;
18687 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction211].i]) return;
18688 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction211].i] = 1;
18689 tracehead = trace.prev;
18690 return;
18691 }
18692 void parser___ReduceAction212___action(val_t self, val_t param0) {
18693 struct trace_t trace = {NULL, NULL, 9694, LOCATE_parser___ReduceAction212___action};
18694 val_t variable0;
18695 val_t variable1;
18696 val_t variable2;
18697 val_t variable3;
18698 val_t variable4;
18699 val_t variable5;
18700 val_t variable6;
18701 trace.prev = tracehead; tracehead = &trace;
18702 trace.file = LOCATE_parser;
18703 variable0 = param0;
18704 variable1 = NIT_NULL /*null*/;
18705 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18706 variable2 = variable3;
18707 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
18708 variable3 = variable4;
18709 variable4 = variable2 /*nodearraylist1*/;
18710 variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
18711 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction212___action, LOCATE_parser, 9700); nit_exit(1);}
18712 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
18713 if (UNTAG_Bool(variable5)) { /*if*/
18714 variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*AbstractArray::is_empty*/;
18715 if (UNTAG_Bool(variable5)) { /*if*/
18716 variable3 = variable4 /*listnode2*/ /*listnode3=*/;
18717 } else { /*if*/
18718 ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*IndexedCollection::append*/;
18719 }
18720 }
18721 variable6 = NEW_ASignature_parser_prod___ASignature___init_asignature( variable3 /*listnode3*/, NIT_NULL /*null*/); /*new ASignature*/
18722 variable5 = variable6;
18723 variable1 = variable5 /*psignaturenode1*/ /*node_list=*/;
18724 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/;
18725 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
18726 tracehead = trace.prev;
18727 return;
18728 }
18729 void parser___ReduceAction212___init(val_t self, int* init_table) {
18730 struct trace_t trace = {NULL, NULL, 9715, LOCATE_parser___ReduceAction212___init};
18731 trace.prev = tracehead; tracehead = &trace;
18732 trace.file = LOCATE_parser;
18733 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction212].i]) return;
18734 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction212].i] = 1;
18735 tracehead = trace.prev;
18736 return;
18737 }
18738 void parser___ReduceAction213___action(val_t self, val_t param0) {
18739 struct trace_t trace = {NULL, NULL, 9719, LOCATE_parser___ReduceAction213___action};
18740 val_t variable0;
18741 val_t variable1;
18742 val_t variable2;
18743 val_t variable3;
18744 val_t variable4;
18745 val_t variable5;
18746 val_t variable6;
18747 trace.prev = tracehead; tracehead = &trace;
18748 trace.file = LOCATE_parser;
18749 variable0 = param0;
18750 variable1 = NIT_NULL /*null*/;
18751 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18752 variable2 = variable3;
18753 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
18754 variable3 = variable4;
18755 variable4 = variable2 /*nodearraylist1*/;
18756 variable5 = TAG_Bool(( variable4 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable4 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
18757 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction213___action, LOCATE_parser, 9725); nit_exit(1);}
18758 variable6 = NEW_ASignature_parser_prod___ASignature___init_asignature( variable3 /*listnode2*/, variable4 /*ptypenode3*/); /*new ASignature*/
18759 variable5 = variable6;
18760 variable1 = variable5 /*psignaturenode1*/ /*node_list=*/;
18761 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/;
18762 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
18763 tracehead = trace.prev;
18764 return;
18765 }
18766 void parser___ReduceAction213___init(val_t self, int* init_table) {
18767 struct trace_t trace = {NULL, NULL, 9733, LOCATE_parser___ReduceAction213___init};
18768 trace.prev = tracehead; tracehead = &trace;
18769 trace.file = LOCATE_parser;
18770 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction213].i]) return;
18771 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction213].i] = 1;
18772 tracehead = trace.prev;
18773 return;
18774 }
18775 void parser___ReduceAction214___action(val_t self, val_t param0) {
18776 struct trace_t trace = {NULL, NULL, 9737, LOCATE_parser___ReduceAction214___action};
18777 val_t variable0;
18778 val_t variable1;
18779 val_t variable2;
18780 val_t variable3;
18781 val_t variable4;
18782 val_t variable5;
18783 val_t variable6;
18784 val_t variable7;
18785 val_t variable8;
18786 trace.prev = tracehead; tracehead = &trace;
18787 trace.file = LOCATE_parser;
18788 variable0 = param0;
18789 variable1 = NIT_NULL /*null*/;
18790 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18791 variable2 = variable3;
18792 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18793 variable3 = variable4;
18794 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
18795 variable4 = variable5;
18796 variable5 = variable3 /*nodearraylist1*/;
18797 variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
18798 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction214___action, LOCATE_parser, 9744); nit_exit(1);}
18799 variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
18800 if (UNTAG_Bool(variable6)) { /*if*/
18801 variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
18802 if (UNTAG_Bool(variable6)) { /*if*/
18803 variable4 = variable5 /*listnode2*/ /*listnode3=*/;
18804 } else { /*if*/
18805 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode2*/) /*IndexedCollection::append*/;
18806 }
18807 }
18808 variable6 = variable2 /*nodearraylist2*/;
18809 variable7 = TAG_Bool(( variable6 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable6 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/;
18810 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction214___action, LOCATE_parser, 9753); nit_exit(1);}
18811 variable8 = NEW_ASignature_parser_prod___ASignature___init_asignature( variable4 /*listnode3*/, variable6 /*ptypenode4*/); /*new ASignature*/
18812 variable7 = variable8;
18813 variable1 = variable7 /*psignaturenode1*/ /*node_list=*/;
18814 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(17)) /*Parser::go_to*/;
18815 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
18816 tracehead = trace.prev;
18817 return;
18818 }
18819 void parser___ReduceAction214___init(val_t self, int* init_table) {
18820 struct trace_t trace = {NULL, NULL, 9761, LOCATE_parser___ReduceAction214___init};
18821 trace.prev = tracehead; tracehead = &trace;
18822 trace.file = LOCATE_parser;
18823 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction214].i]) return;
18824 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction214].i] = 1;
18825 tracehead = trace.prev;
18826 return;
18827 }
18828 void parser___ReduceAction215___action(val_t self, val_t param0) {
18829 struct trace_t trace = {NULL, NULL, 9765, LOCATE_parser___ReduceAction215___action};
18830 val_t variable0;
18831 val_t variable1;
18832 val_t variable2;
18833 val_t variable3;
18834 val_t variable4;
18835 val_t variable5;
18836 val_t variable6;
18837 val_t variable7;
18838 val_t variable8;
18839 val_t variable9;
18840 trace.prev = tracehead; tracehead = &trace;
18841 trace.file = LOCATE_parser;
18842 variable0 = param0;
18843 variable1 = NIT_NULL /*null*/;
18844 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18845 variable2 = variable3;
18846 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18847 variable3 = variable4;
18848 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18849 variable4 = variable5;
18850 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18851 variable5 = variable6;
18852 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18853 variable6 = variable7;
18854 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
18855 variable7 = variable8;
18856 variable8 = variable4 /*nodearraylist3*/;
18857 variable9 = TAG_Bool(( variable8 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/;
18858 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction215___action, LOCATE_parser, 9775); nit_exit(1);}
18859 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pparamnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pparamnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pparamnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pparamnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
18860 if (UNTAG_Bool(variable9)) { /*if*/
18861 ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pparamnode1*/) /*AbstractArray::add*/;
18862 }
18863 variable1 = variable7 /*listnode2*/ /*node_list=*/;
18864 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(18)) /*Parser::go_to*/;
18865 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
18866 tracehead = trace.prev;
18867 return;
18868 }
18869 void parser___ReduceAction215___init(val_t self, int* init_table) {
18870 struct trace_t trace = {NULL, NULL, 9782, LOCATE_parser___ReduceAction215___init};
18871 trace.prev = tracehead; tracehead = &trace;
18872 trace.file = LOCATE_parser;
18873 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction215].i]) return;
18874 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction215].i] = 1;
18875 tracehead = trace.prev;
18876 return;
18877 }
18878 void parser___ReduceAction216___action(val_t self, val_t param0) {
18879 struct trace_t trace = {NULL, NULL, 9786, LOCATE_parser___ReduceAction216___action};
18880 val_t variable0;
18881 val_t variable1;
18882 val_t variable2;
18883 val_t variable3;
18884 val_t variable4;
18885 val_t variable5;
18886 val_t variable6;
18887 val_t variable7;
18888 val_t variable8;
18889 val_t variable9;
18890 val_t variable10;
18891 val_t variable11;
18892 trace.prev = tracehead; tracehead = &trace;
18893 trace.file = LOCATE_parser;
18894 variable0 = param0;
18895 variable1 = NIT_NULL /*null*/;
18896 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18897 variable2 = variable3;
18898 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18899 variable3 = variable4;
18900 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18901 variable4 = variable5;
18902 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18903 variable5 = variable6;
18904 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18905 variable6 = variable7;
18906 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18907 variable7 = variable8;
18908 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
18909 variable8 = variable9;
18910 variable9 = variable5 /*nodearraylist3*/;
18911 variable10 = TAG_Bool(( variable9 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/;
18912 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction216___action, LOCATE_parser, 9797); nit_exit(1);}
18913 variable10 = variable4 /*nodearraylist4*/;
18914 variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
18915 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction216___action, LOCATE_parser, 9799); nit_exit(1);}
18916 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pparamnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pparamnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pparamnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pparamnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
18917 if (UNTAG_Bool(variable11)) { /*if*/
18918 ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pparamnode1*/) /*AbstractArray::add*/;
18919 }
18920 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
18921 if (UNTAG_Bool(variable11)) { /*if*/
18922 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*AbstractArray::is_empty*/;
18923 if (UNTAG_Bool(variable11)) { /*if*/
18924 variable8 = variable10 /*listnode2*/ /*listnode3=*/;
18925 } else { /*if*/
18926 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*IndexedCollection::append*/;
18927 }
18928 }
18929 variable1 = variable8 /*listnode3*/ /*node_list=*/;
18930 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(18)) /*Parser::go_to*/;
18931 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
18932 tracehead = trace.prev;
18933 return;
18934 }
18935 void parser___ReduceAction216___init(val_t self, int* init_table) {
18936 struct trace_t trace = {NULL, NULL, 9813, LOCATE_parser___ReduceAction216___init};
18937 trace.prev = tracehead; tracehead = &trace;
18938 trace.file = LOCATE_parser;
18939 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction216].i]) return;
18940 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction216].i] = 1;
18941 tracehead = trace.prev;
18942 return;
18943 }
18944 void parser___ReduceAction217___action(val_t self, val_t param0) {
18945 struct trace_t trace = {NULL, NULL, 9817, LOCATE_parser___ReduceAction217___action};
18946 val_t variable0;
18947 val_t variable1;
18948 val_t variable2;
18949 val_t variable3;
18950 val_t variable4;
18951 val_t variable5;
18952 val_t variable6;
18953 trace.prev = tracehead; tracehead = &trace;
18954 trace.file = LOCATE_parser;
18955 variable0 = param0;
18956 variable1 = NIT_NULL /*null*/;
18957 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18958 variable2 = variable3;
18959 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18960 variable3 = variable4;
18961 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18962 variable4 = variable5;
18963 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
18964 variable5 = variable6;
18965 variable1 = variable5 /*listnode1*/ /*node_list=*/;
18966 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(18)) /*Parser::go_to*/;
18967 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
18968 tracehead = trace.prev;
18969 return;
18970 }
18971 void parser___ReduceAction217___init(val_t self, int* init_table) {
18972 struct trace_t trace = {NULL, NULL, 9827, LOCATE_parser___ReduceAction217___init};
18973 trace.prev = tracehead; tracehead = &trace;
18974 trace.file = LOCATE_parser;
18975 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction217].i]) return;
18976 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction217].i] = 1;
18977 tracehead = trace.prev;
18978 return;
18979 }
18980 void parser___ReduceAction218___action(val_t self, val_t param0) {
18981 struct trace_t trace = {NULL, NULL, 9831, LOCATE_parser___ReduceAction218___action};
18982 val_t variable0;
18983 val_t variable1;
18984 val_t variable2;
18985 val_t variable3;
18986 val_t variable4;
18987 val_t variable5;
18988 val_t variable6;
18989 trace.prev = tracehead; tracehead = &trace;
18990 trace.file = LOCATE_parser;
18991 variable0 = param0;
18992 variable1 = NIT_NULL /*null*/;
18993 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18994 variable2 = variable3;
18995 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18996 variable3 = variable4;
18997 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
18998 variable4 = variable5;
18999 variable5 = variable2 /*nodearraylist3*/;
19000 variable6 = TAG_Bool(( variable5 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/;
19001 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction218___action, LOCATE_parser, 9838); nit_exit(1);}
19002 variable1 = variable5 /*pparamnode1*/ /*node_list=*/;
19003 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(19)) /*Parser::go_to*/;
19004 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
19005 tracehead = trace.prev;
19006 return;
19007 }
19008 void parser___ReduceAction218___init(val_t self, int* init_table) {
19009 struct trace_t trace = {NULL, NULL, 9842, LOCATE_parser___ReduceAction218___init};
19010 trace.prev = tracehead; tracehead = &trace;
19011 trace.file = LOCATE_parser;
19012 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction218].i]) return;
19013 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction218].i] = 1;
19014 tracehead = trace.prev;
19015 return;
19016 }
19017 void parser___ReduceAction219___action(val_t self, val_t param0) {
19018 struct trace_t trace = {NULL, NULL, 9846, LOCATE_parser___ReduceAction219___action};
19019 val_t variable0;
19020 val_t variable1;
19021 val_t variable2;
19022 val_t variable3;
19023 val_t variable4;
19024 val_t variable5;
19025 trace.prev = tracehead; tracehead = &trace;
19026 trace.file = LOCATE_parser;
19027 variable0 = param0;
19028 variable1 = NIT_NULL /*null*/;
19029 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19030 variable2 = variable3;
19031 variable3 = variable2 /*nodearraylist1*/;
19032 variable4 = TAG_Bool(( variable3 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/;
19033 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction219___action, LOCATE_parser, 9851); nit_exit(1);}
19034 variable5 = NEW_AParam_parser_prod___AParam___init_aparam( variable3 /*tidnode2*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AParam*/
19035 variable4 = variable5;
19036 variable1 = variable4 /*pparamnode1*/ /*node_list=*/;
19037 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(20)) /*Parser::go_to*/;
19038 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
19039 tracehead = trace.prev;
19040 return;
19041 }
19042 void parser___ReduceAction219___init(val_t self, int* init_table) {
19043 struct trace_t trace = {NULL, NULL, 9860, LOCATE_parser___ReduceAction219___init};
19044 trace.prev = tracehead; tracehead = &trace;
19045 trace.file = LOCATE_parser;
19046 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction219].i]) return;
19047 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction219].i] = 1;
19048 tracehead = trace.prev;
19049 return;
19050 }
19051 void parser___ReduceAction220___action(val_t self, val_t param0) {
19052 struct trace_t trace = {NULL, NULL, 9864, LOCATE_parser___ReduceAction220___action};
19053 val_t variable0;
19054 val_t variable1;
19055 val_t variable2;
19056 val_t variable3;
19057 val_t variable4;
19058 val_t variable5;
19059 val_t variable6;
19060 val_t variable7;
19061 trace.prev = tracehead; tracehead = &trace;
19062 trace.file = LOCATE_parser;
19063 variable0 = param0;
19064 variable1 = NIT_NULL /*null*/;
19065 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19066 variable2 = variable3;
19067 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19068 variable3 = variable4;
19069 variable4 = variable3 /*nodearraylist1*/;
19070 variable5 = TAG_Bool(( variable4 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/;
19071 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction220___action, LOCATE_parser, 9870); nit_exit(1);}
19072 variable5 = variable2 /*nodearraylist2*/;
19073 variable6 = TAG_Bool(( variable5 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
19074 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction220___action, LOCATE_parser, 9872); nit_exit(1);}
19075 variable7 = NEW_AParam_parser_prod___AParam___init_aparam( variable4 /*tidnode2*/, variable5 /*ptypenode3*/, NIT_NULL /*null*/); /*new AParam*/
19076 variable6 = variable7;
19077 variable1 = variable6 /*pparamnode1*/ /*node_list=*/;
19078 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(20)) /*Parser::go_to*/;
19079 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
19080 tracehead = trace.prev;
19081 return;
19082 }
19083 void parser___ReduceAction220___init(val_t self, int* init_table) {
19084 struct trace_t trace = {NULL, NULL, 9881, LOCATE_parser___ReduceAction220___init};
19085 trace.prev = tracehead; tracehead = &trace;
19086 trace.file = LOCATE_parser;
19087 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction220].i]) return;
19088 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction220].i] = 1;
19089 tracehead = trace.prev;
19090 return;
19091 }
19092 void parser___ReduceAction221___action(val_t self, val_t param0) {
19093 struct trace_t trace = {NULL, NULL, 9885, LOCATE_parser___ReduceAction221___action};
19094 val_t variable0;
19095 val_t variable1;
19096 val_t variable2;
19097 val_t variable3;
19098 val_t variable4;
19099 val_t variable5;
19100 val_t variable6;
19101 val_t variable7;
19102 val_t variable8;
19103 val_t variable9;
19104 trace.prev = tracehead; tracehead = &trace;
19105 trace.file = LOCATE_parser;
19106 variable0 = param0;
19107 variable1 = NIT_NULL /*null*/;
19108 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19109 variable2 = variable3;
19110 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19111 variable3 = variable4;
19112 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19113 variable4 = variable5;
19114 variable5 = variable4 /*nodearraylist1*/;
19115 variable6 = TAG_Bool(( variable5 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/;
19116 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction221___action, LOCATE_parser, 9892); nit_exit(1);}
19117 variable6 = variable3 /*nodearraylist2*/;
19118 variable7 = TAG_Bool(( variable6 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable6 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
19119 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction221___action, LOCATE_parser, 9894); nit_exit(1);}
19120 variable7 = variable2 /*nodearraylist3*/;
19121 variable8 = TAG_Bool(( variable7 /*tdotdotdotnode4*/==NIT_NULL) || VAL_ISA( variable7 /*tdotdotdotnode4*/, COLOR_TDotdotdot, ID_TDotdotdot)) /*cast TDotdotdot*/;
19122 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction221___action, LOCATE_parser, 9896); nit_exit(1);}
19123 variable9 = NEW_AParam_parser_prod___AParam___init_aparam( variable5 /*tidnode2*/, variable6 /*ptypenode3*/, variable7 /*tdotdotdotnode4*/); /*new AParam*/
19124 variable8 = variable9;
19125 variable1 = variable8 /*pparamnode1*/ /*node_list=*/;
19126 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(20)) /*Parser::go_to*/;
19127 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
19128 tracehead = trace.prev;
19129 return;
19130 }
19131 void parser___ReduceAction221___init(val_t self, int* init_table) {
19132 struct trace_t trace = {NULL, NULL, 9905, LOCATE_parser___ReduceAction221___init};
19133 trace.prev = tracehead; tracehead = &trace;
19134 trace.file = LOCATE_parser;
19135 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction221].i]) return;
19136 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction221].i] = 1;
19137 tracehead = trace.prev;
19138 return;
19139 }
19140 void parser___ReduceAction222___action(val_t self, val_t param0) {
19141 struct trace_t trace = {NULL, NULL, 9909, LOCATE_parser___ReduceAction222___action};
19142 val_t variable0;
19143 val_t variable1;
19144 val_t variable2;
19145 val_t variable3;
19146 val_t variable4;
19147 val_t variable5;
19148 val_t variable6;
19149 trace.prev = tracehead; tracehead = &trace;
19150 trace.file = LOCATE_parser;
19151 variable0 = param0;
19152 variable1 = NIT_NULL /*null*/;
19153 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19154 variable2 = variable3;
19155 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
19156 variable3 = variable4;
19157 variable4 = variable2 /*nodearraylist1*/;
19158 variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
19159 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction222___action, LOCATE_parser, 9915); nit_exit(1);}
19160 variable6 = NEW_AType_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/
19161 variable5 = variable6;
19162 variable1 = variable5 /*ptypenode1*/ /*node_list=*/;
19163 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(21)) /*Parser::go_to*/;
19164 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
19165 tracehead = trace.prev;
19166 return;
19167 }
19168 void parser___ReduceAction222___init(val_t self, int* init_table) {
19169 struct trace_t trace = {NULL, NULL, 9923, LOCATE_parser___ReduceAction222___init};
19170 trace.prev = tracehead; tracehead = &trace;
19171 trace.file = LOCATE_parser;
19172 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction222].i]) return;
19173 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction222].i] = 1;
19174 tracehead = trace.prev;
19175 return;
19176 }
19177 void parser___ReduceAction223___action(val_t self, val_t param0) {
19178 struct trace_t trace = {NULL, NULL, 9927, LOCATE_parser___ReduceAction223___action};
19179 val_t variable0;
19180 val_t variable1;
19181 val_t variable2;
19182 val_t variable3;
19183 val_t variable4;
19184 val_t variable5;
19185 val_t variable6;
19186 val_t variable7;
19187 val_t variable8;
19188 val_t variable9;
19189 val_t variable10;
19190 val_t variable11;
19191 val_t variable12;
19192 trace.prev = tracehead; tracehead = &trace;
19193 trace.file = LOCATE_parser;
19194 variable0 = param0;
19195 variable1 = NIT_NULL /*null*/;
19196 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19197 variable2 = variable3;
19198 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19199 variable3 = variable4;
19200 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19201 variable4 = variable5;
19202 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19203 variable5 = variable6;
19204 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19205 variable6 = variable7;
19206 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19207 variable7 = variable8;
19208 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
19209 variable8 = variable9;
19210 variable9 = variable7 /*nodearraylist1*/;
19211 variable10 = TAG_Bool(( variable9 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable9 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
19212 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction223___action, LOCATE_parser, 9938); nit_exit(1);}
19213 variable10 = variable4 /*nodearraylist4*/;
19214 variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
19215 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction223___action, LOCATE_parser, 9940); nit_exit(1);}
19216 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
19217 if (UNTAG_Bool(variable11)) { /*if*/
19218 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*AbstractArray::is_empty*/;
19219 if (UNTAG_Bool(variable11)) { /*if*/
19220 variable8 = variable10 /*listnode3*/ /*listnode4=*/;
19221 } else { /*if*/
19222 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable10 /*listnode3*/) /*IndexedCollection::append*/;
19223 }
19224 }
19225 variable12 = NEW_AType_parser_prod___AType___init_atype( variable9 /*tclassidnode2*/, variable8 /*listnode4*/); /*new AType*/
19226 variable11 = variable12;
19227 variable1 = variable11 /*ptypenode1*/ /*node_list=*/;
19228 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(21)) /*Parser::go_to*/;
19229 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
19230 tracehead = trace.prev;
19231 return;
19232 }
19233 void parser___ReduceAction223___init(val_t self, int* init_table) {
19234 struct trace_t trace = {NULL, NULL, 9955, LOCATE_parser___ReduceAction223___init};
19235 trace.prev = tracehead; tracehead = &trace;
19236 trace.file = LOCATE_parser;
19237 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction223].i]) return;
19238 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction223].i] = 1;
19239 tracehead = trace.prev;
19240 return;
19241 }
19242 void parser___ReduceAction224___action(val_t self, val_t param0) {
19243 struct trace_t trace = {NULL, NULL, 9959, LOCATE_parser___ReduceAction224___action};
19244 val_t variable0;
19245 val_t variable1;
19246 val_t variable2;
19247 val_t variable3;
19248 val_t variable4;
19249 val_t variable5;
19250 trace.prev = tracehead; tracehead = &trace;
19251 trace.file = LOCATE_parser;
19252 variable0 = param0;
19253 variable1 = NIT_NULL /*null*/;
19254 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19255 variable2 = variable3;
19256 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
19257 variable3 = variable4;
19258 variable4 = variable2 /*nodearraylist1*/;
19259 variable5 = TAG_Bool(( variable4 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable4 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/;
19260 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction224___action, LOCATE_parser, 9965); nit_exit(1);}
19261 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ptypenode1*/ == NIT_NULL /*null*/) || (( variable4 /*ptypenode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ptypenode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ptypenode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
19262 if (UNTAG_Bool(variable5)) { /*if*/
19263 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ptypenode1*/) /*AbstractArray::add*/;
19264 }
19265 variable1 = variable3 /*listnode2*/ /*node_list=*/;
19266 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(22)) /*Parser::go_to*/;
19267 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
19268 tracehead = trace.prev;
19269 return;
19270 }
19271 void parser___ReduceAction224___init(val_t self, int* init_table) {
19272 struct trace_t trace = {NULL, NULL, 9972, LOCATE_parser___ReduceAction224___init};
19273 trace.prev = tracehead; tracehead = &trace;
19274 trace.file = LOCATE_parser;
19275 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction224].i]) return;
19276 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction224].i] = 1;
19277 tracehead = trace.prev;
19278 return;
19279 }
19280 void parser___ReduceAction225___action(val_t self, val_t param0) {
19281 struct trace_t trace = {NULL, NULL, 9976, LOCATE_parser___ReduceAction225___action};
19282 val_t variable0;
19283 val_t variable1;
19284 val_t variable2;
19285 val_t variable3;
19286 val_t variable4;
19287 val_t variable5;
19288 val_t variable6;
19289 val_t variable7;
19290 trace.prev = tracehead; tracehead = &trace;
19291 trace.file = LOCATE_parser;
19292 variable0 = param0;
19293 variable1 = NIT_NULL /*null*/;
19294 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19295 variable2 = variable3;
19296 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19297 variable3 = variable4;
19298 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
19299 variable4 = variable5;
19300 variable5 = variable3 /*nodearraylist1*/;
19301 variable6 = TAG_Bool(( variable5 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/;
19302 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction225___action, LOCATE_parser, 9983); nit_exit(1);}
19303 variable6 = variable2 /*nodearraylist2*/;
19304 variable7 = TAG_Bool(( variable6 /*listnode2*/==NIT_NULL) || VAL_ISA( variable6 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
19305 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction225___action, LOCATE_parser, 9985); nit_exit(1);}
19306 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*ptypenode1*/ == NIT_NULL /*null*/) || (( variable5 /*ptypenode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*ptypenode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*ptypenode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
19307 if (UNTAG_Bool(variable7)) { /*if*/
19308 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable5 /*ptypenode1*/) /*AbstractArray::add*/;
19309 }
19310 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode2*/ == NIT_NULL /*null*/) || (( variable6 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
19311 if (UNTAG_Bool(variable7)) { /*if*/
19312 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
19313 if (UNTAG_Bool(variable7)) { /*if*/
19314 variable4 = variable6 /*listnode2*/ /*listnode3=*/;
19315 } else { /*if*/
19316 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable6 /*listnode2*/) /*IndexedCollection::append*/;
19317 }
19318 }
19319 variable1 = variable4 /*listnode3*/ /*node_list=*/;
19320 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(22)) /*Parser::go_to*/;
19321 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
19322 tracehead = trace.prev;
19323 return;
19324 }
19325 void parser___ReduceAction225___init(val_t self, int* init_table) {
19326 struct trace_t trace = {NULL, NULL, 9999, LOCATE_parser___ReduceAction225___init};
19327 trace.prev = tracehead; tracehead = &trace;
19328 trace.file = LOCATE_parser;
19329 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction225].i]) return;
19330 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction225].i] = 1;
19331 tracehead = trace.prev;
19332 return;
19333 }
19334 void parser___ReduceAction226___action(val_t self, val_t param0) {
19335 struct trace_t trace = {NULL, NULL, 10003, LOCATE_parser___ReduceAction226___action};
19336 val_t variable0;
19337 val_t variable1;
19338 val_t variable2;
19339 val_t variable3;
19340 val_t variable4;
19341 val_t variable5;
19342 val_t variable6;
19343 trace.prev = tracehead; tracehead = &trace;
19344 trace.file = LOCATE_parser;
19345 variable0 = param0;
19346 variable1 = NIT_NULL /*null*/;
19347 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19348 variable2 = variable3;
19349 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19350 variable3 = variable4;
19351 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19352 variable4 = variable5;
19353 variable5 = variable2 /*nodearraylist3*/;
19354 variable6 = TAG_Bool(( variable5 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/;
19355 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction226___action, LOCATE_parser, 10010); nit_exit(1);}
19356 variable1 = variable5 /*ptypenode1*/ /*node_list=*/;
19357 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(23)) /*Parser::go_to*/;
19358 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
19359 tracehead = trace.prev;
19360 return;
19361 }
19362 void parser___ReduceAction226___init(val_t self, int* init_table) {
19363 struct trace_t trace = {NULL, NULL, 10014, LOCATE_parser___ReduceAction226___init};
19364 trace.prev = tracehead; tracehead = &trace;
19365 trace.file = LOCATE_parser;
19366 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction226].i]) return;
19367 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction226].i] = 1;
19368 tracehead = trace.prev;
19369 return;
19370 }
19371 void parser___ReduceAction227___action(val_t self, val_t param0) {
19372 struct trace_t trace = {NULL, NULL, 10018, LOCATE_parser___ReduceAction227___action};
19373 val_t variable0;
19374 val_t variable1;
19375 val_t variable2;
19376 val_t variable3;
19377 val_t variable4;
19378 val_t variable5;
19379 val_t variable6;
19380 trace.prev = tracehead; tracehead = &trace;
19381 trace.file = LOCATE_parser;
19382 variable0 = param0;
19383 variable1 = NIT_NULL /*null*/;
19384 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19385 variable2 = variable3;
19386 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19387 variable3 = variable4;
19388 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19389 variable4 = variable5;
19390 variable5 = variable2 /*nodearraylist3*/;
19391 variable6 = TAG_Bool(( variable5 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable5 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/;
19392 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction227___action, LOCATE_parser, 10025); nit_exit(1);}
19393 variable1 = variable5 /*ptypenode1*/ /*node_list=*/;
19394 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(24)) /*Parser::go_to*/;
19395 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
19396 tracehead = trace.prev;
19397 return;
19398 }
19399 void parser___ReduceAction227___init(val_t self, int* init_table) {
19400 struct trace_t trace = {NULL, NULL, 10029, LOCATE_parser___ReduceAction227___init};
19401 trace.prev = tracehead; tracehead = &trace;
19402 trace.file = LOCATE_parser;
19403 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction227].i]) return;
19404 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction227].i] = 1;
19405 tracehead = trace.prev;
19406 return;
19407 }
19408 void parser___ReduceAction228___action(val_t self, val_t param0) {
19409 struct trace_t trace = {NULL, NULL, 10033, LOCATE_parser___ReduceAction228___action};
19410 val_t variable0;
19411 val_t variable1;
19412 val_t variable2;
19413 val_t variable3;
19414 val_t variable4;
19415 trace.prev = tracehead; tracehead = &trace;
19416 trace.file = LOCATE_parser;
19417 variable0 = param0;
19418 variable1 = NIT_NULL /*null*/;
19419 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19420 variable2 = variable3;
19421 variable3 = variable2 /*nodearraylist1*/;
19422 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19423 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction228___action, LOCATE_parser, 10038); nit_exit(1);}
19424 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
19425 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/;
19426 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19427 tracehead = trace.prev;
19428 return;
19429 }
19430 void parser___ReduceAction228___init(val_t self, int* init_table) {
19431 struct trace_t trace = {NULL, NULL, 10042, LOCATE_parser___ReduceAction228___init};
19432 trace.prev = tracehead; tracehead = &trace;
19433 trace.file = LOCATE_parser;
19434 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction228].i]) return;
19435 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction228].i] = 1;
19436 tracehead = trace.prev;
19437 return;
19438 }
19439 void parser___ReduceAction229___action(val_t self, val_t param0) {
19440 struct trace_t trace = {NULL, NULL, 10046, LOCATE_parser___ReduceAction229___action};
19441 val_t variable0;
19442 val_t variable1;
19443 val_t variable2;
19444 val_t variable3;
19445 val_t variable4;
19446 val_t variable5;
19447 val_t variable6;
19448 val_t variable7;
19449 val_t variable8;
19450 val_t variable9;
19451 trace.prev = tracehead; tracehead = &trace;
19452 trace.file = LOCATE_parser;
19453 variable0 = param0;
19454 variable1 = NIT_NULL /*null*/;
19455 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19456 variable2 = variable3;
19457 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19458 variable3 = variable4;
19459 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19460 variable4 = variable5;
19461 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19462 variable5 = variable6;
19463 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
19464 variable6 = variable7;
19465 variable7 = variable4 /*nodearraylist2*/;
19466 variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19467 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction229___action, LOCATE_parser, 10055); nit_exit(1);}
19468 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
19469 if (UNTAG_Bool(variable8)) { /*if*/
19470 ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode2*/) /*AbstractArray::add*/;
19471 }
19472 variable9 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable6 /*listnode3*/); /*new ABlockExpr*/
19473 variable8 = variable9;
19474 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
19475 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/;
19476 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
19477 tracehead = trace.prev;
19478 return;
19479 }
19480 void parser___ReduceAction229___init(val_t self, int* init_table) {
19481 struct trace_t trace = {NULL, NULL, 10065, LOCATE_parser___ReduceAction229___init};
19482 trace.prev = tracehead; tracehead = &trace;
19483 trace.file = LOCATE_parser;
19484 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction229].i]) return;
19485 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction229].i] = 1;
19486 tracehead = trace.prev;
19487 return;
19488 }
19489 void parser___ReduceAction230___action(val_t self, val_t param0) {
19490 struct trace_t trace = {NULL, NULL, 10069, LOCATE_parser___ReduceAction230___action};
19491 val_t variable0;
19492 val_t variable1;
19493 val_t variable2;
19494 val_t variable3;
19495 val_t variable4;
19496 val_t variable5;
19497 val_t variable6;
19498 val_t variable7;
19499 val_t variable8;
19500 val_t variable9;
19501 val_t variable10;
19502 val_t variable11;
19503 trace.prev = tracehead; tracehead = &trace;
19504 trace.file = LOCATE_parser;
19505 variable0 = param0;
19506 variable1 = NIT_NULL /*null*/;
19507 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19508 variable2 = variable3;
19509 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19510 variable3 = variable4;
19511 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19512 variable4 = variable5;
19513 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19514 variable5 = variable6;
19515 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19516 variable6 = variable7;
19517 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
19518 variable7 = variable8;
19519 variable8 = variable5 /*nodearraylist2*/;
19520 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19521 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction230___action, LOCATE_parser, 10079); nit_exit(1);}
19522 variable9 = variable4 /*nodearraylist3*/;
19523 variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
19524 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction230___action, LOCATE_parser, 10081); nit_exit(1);}
19525 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
19526 if (UNTAG_Bool(variable10)) { /*if*/
19527 ((array___AbstractArray___add_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode4*/, variable8 /*pexprnode2*/) /*AbstractArray::add*/;
19528 }
19529 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
19530 if (UNTAG_Bool(variable10)) { /*if*/
19531 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
19532 if (UNTAG_Bool(variable10)) { /*if*/
19533 variable7 = variable9 /*listnode3*/ /*listnode4=*/;
19534 } else { /*if*/
19535 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*IndexedCollection::append*/;
19536 }
19537 }
19538 variable11 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable7 /*listnode4*/); /*new ABlockExpr*/
19539 variable10 = variable11;
19540 variable1 = variable10 /*pexprnode1*/ /*node_list=*/;
19541 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/;
19542 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
19543 tracehead = trace.prev;
19544 return;
19545 }
19546 void parser___ReduceAction230___init(val_t self, int* init_table) {
19547 struct trace_t trace = {NULL, NULL, 10098, LOCATE_parser___ReduceAction230___init};
19548 trace.prev = tracehead; tracehead = &trace;
19549 trace.file = LOCATE_parser;
19550 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction230].i]) return;
19551 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction230].i] = 1;
19552 tracehead = trace.prev;
19553 return;
19554 }
19555 void parser___ReduceAction231___action(val_t self, val_t param0) {
19556 struct trace_t trace = {NULL, NULL, 10102, LOCATE_parser___ReduceAction231___action};
19557 val_t variable0;
19558 val_t variable1;
19559 val_t variable2;
19560 val_t variable3;
19561 val_t variable4;
19562 trace.prev = tracehead; tracehead = &trace;
19563 trace.file = LOCATE_parser;
19564 variable0 = param0;
19565 variable1 = NIT_NULL /*null*/;
19566 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19567 variable2 = variable3;
19568 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19569 variable3 = variable4;
19570 variable1 = NIT_NULL /*null*/ /*node_list=*/;
19571 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/;
19572 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19573 tracehead = trace.prev;
19574 return;
19575 }
19576 void parser___ReduceAction231___init(val_t self, int* init_table) {
19577 struct trace_t trace = {NULL, NULL, 10110, LOCATE_parser___ReduceAction231___init};
19578 trace.prev = tracehead; tracehead = &trace;
19579 trace.file = LOCATE_parser;
19580 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction231].i]) return;
19581 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction231].i] = 1;
19582 tracehead = trace.prev;
19583 return;
19584 }
19585 void parser___ReduceAction232___action(val_t self, val_t param0) {
19586 struct trace_t trace = {NULL, NULL, 10114, LOCATE_parser___ReduceAction232___action};
19587 val_t variable0;
19588 val_t variable1;
19589 val_t variable2;
19590 val_t variable3;
19591 trace.prev = tracehead; tracehead = &trace;
19592 trace.file = LOCATE_parser;
19593 variable0 = param0;
19594 variable1 = NIT_NULL /*null*/;
19595 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19596 variable2 = variable3;
19597 variable1 = NIT_NULL /*null*/ /*node_list=*/;
19598 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(25)) /*Parser::go_to*/;
19599 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
19600 tracehead = trace.prev;
19601 return;
19602 }
19603 void parser___ReduceAction232___init(val_t self, int* init_table) {
19604 struct trace_t trace = {NULL, NULL, 10121, LOCATE_parser___ReduceAction232___init};
19605 trace.prev = tracehead; tracehead = &trace;
19606 trace.file = LOCATE_parser;
19607 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction232].i]) return;
19608 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction232].i] = 1;
19609 tracehead = trace.prev;
19610 return;
19611 }
19612 void parser___ReduceAction233___action(val_t self, val_t param0) {
19613 struct trace_t trace = {NULL, NULL, 10125, LOCATE_parser___ReduceAction233___action};
19614 val_t variable0;
19615 val_t variable1;
19616 val_t variable2;
19617 val_t variable3;
19618 val_t variable4;
19619 val_t variable5;
19620 trace.prev = tracehead; tracehead = &trace;
19621 trace.file = LOCATE_parser;
19622 variable0 = param0;
19623 variable1 = NIT_NULL /*null*/;
19624 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19625 variable2 = variable3;
19626 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19627 variable3 = variable4;
19628 variable4 = variable2 /*nodearraylist2*/;
19629 variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19630 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction233___action, LOCATE_parser, 10131); nit_exit(1);}
19631 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
19632 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(26)) /*Parser::go_to*/;
19633 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
19634 tracehead = trace.prev;
19635 return;
19636 }
19637 void parser___ReduceAction233___init(val_t self, int* init_table) {
19638 struct trace_t trace = {NULL, NULL, 10135, LOCATE_parser___ReduceAction233___init};
19639 trace.prev = tracehead; tracehead = &trace;
19640 trace.file = LOCATE_parser;
19641 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction233].i]) return;
19642 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction233].i] = 1;
19643 tracehead = trace.prev;
19644 return;
19645 }
19646 void parser___ReduceAction234___action(val_t self, val_t param0) {
19647 struct trace_t trace = {NULL, NULL, 10139, LOCATE_parser___ReduceAction234___action};
19648 val_t variable0;
19649 val_t variable1;
19650 val_t variable2;
19651 val_t variable3;
19652 val_t variable4;
19653 trace.prev = tracehead; tracehead = &trace;
19654 trace.file = LOCATE_parser;
19655 variable0 = param0;
19656 variable1 = NIT_NULL /*null*/;
19657 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19658 variable2 = variable3;
19659 variable3 = variable2 /*nodearraylist1*/;
19660 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19661 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction234___action, LOCATE_parser, 10144); nit_exit(1);}
19662 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
19663 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19664 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19665 tracehead = trace.prev;
19666 return;
19667 }
19668 void parser___ReduceAction234___init(val_t self, int* init_table) {
19669 struct trace_t trace = {NULL, NULL, 10148, LOCATE_parser___ReduceAction234___init};
19670 trace.prev = tracehead; tracehead = &trace;
19671 trace.file = LOCATE_parser;
19672 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction234].i]) return;
19673 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction234].i] = 1;
19674 tracehead = trace.prev;
19675 return;
19676 }
19677 void parser___ReduceAction235___action(val_t self, val_t param0) {
19678 struct trace_t trace = {NULL, NULL, 10152, LOCATE_parser___ReduceAction235___action};
19679 val_t variable0;
19680 val_t variable1;
19681 val_t variable2;
19682 val_t variable3;
19683 val_t variable4;
19684 trace.prev = tracehead; tracehead = &trace;
19685 trace.file = LOCATE_parser;
19686 variable0 = param0;
19687 variable1 = NIT_NULL /*null*/;
19688 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19689 variable2 = variable3;
19690 variable3 = variable2 /*nodearraylist1*/;
19691 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19692 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction235___action, LOCATE_parser, 10157); nit_exit(1);}
19693 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
19694 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19695 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19696 tracehead = trace.prev;
19697 return;
19698 }
19699 void parser___ReduceAction235___init(val_t self, int* init_table) {
19700 struct trace_t trace = {NULL, NULL, 10161, LOCATE_parser___ReduceAction235___init};
19701 trace.prev = tracehead; tracehead = &trace;
19702 trace.file = LOCATE_parser;
19703 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction235].i]) return;
19704 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction235].i] = 1;
19705 tracehead = trace.prev;
19706 return;
19707 }
19708 void parser___ReduceAction236___action(val_t self, val_t param0) {
19709 struct trace_t trace = {NULL, NULL, 10165, LOCATE_parser___ReduceAction236___action};
19710 val_t variable0;
19711 val_t variable1;
19712 val_t variable2;
19713 val_t variable3;
19714 val_t variable4;
19715 val_t variable5;
19716 trace.prev = tracehead; tracehead = &trace;
19717 trace.file = LOCATE_parser;
19718 variable0 = param0;
19719 variable1 = NIT_NULL /*null*/;
19720 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19721 variable2 = variable3;
19722 variable3 = variable2 /*nodearraylist1*/;
19723 variable4 = TAG_Bool(( variable3 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/;
19724 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction236___action, LOCATE_parser, 10170); nit_exit(1);}
19725 variable5 = NEW_AReturnExpr_parser_prod___AReturnExpr___init_areturnexpr( variable3 /*tkwreturnnode2*/, NIT_NULL /*null*/); /*new AReturnExpr*/
19726 variable4 = variable5;
19727 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
19728 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19729 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
19730 tracehead = trace.prev;
19731 return;
19732 }
19733 void parser___ReduceAction236___init(val_t self, int* init_table) {
19734 struct trace_t trace = {NULL, NULL, 10178, LOCATE_parser___ReduceAction236___init};
19735 trace.prev = tracehead; tracehead = &trace;
19736 trace.file = LOCATE_parser;
19737 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction236].i]) return;
19738 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction236].i] = 1;
19739 tracehead = trace.prev;
19740 return;
19741 }
19742 void parser___ReduceAction237___action(val_t self, val_t param0) {
19743 struct trace_t trace = {NULL, NULL, 10182, LOCATE_parser___ReduceAction237___action};
19744 val_t variable0;
19745 val_t variable1;
19746 val_t variable2;
19747 val_t variable3;
19748 val_t variable4;
19749 val_t variable5;
19750 val_t variable6;
19751 val_t variable7;
19752 trace.prev = tracehead; tracehead = &trace;
19753 trace.file = LOCATE_parser;
19754 variable0 = param0;
19755 variable1 = NIT_NULL /*null*/;
19756 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19757 variable2 = variable3;
19758 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19759 variable3 = variable4;
19760 variable4 = variable3 /*nodearraylist1*/;
19761 variable5 = TAG_Bool(( variable4 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/;
19762 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction237___action, LOCATE_parser, 10188); nit_exit(1);}
19763 variable5 = variable2 /*nodearraylist2*/;
19764 variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19765 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction237___action, LOCATE_parser, 10190); nit_exit(1);}
19766 variable7 = NEW_AReturnExpr_parser_prod___AReturnExpr___init_areturnexpr( variable4 /*tkwreturnnode2*/, variable5 /*pexprnode3*/); /*new AReturnExpr*/
19767 variable6 = variable7;
19768 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
19769 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19770 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
19771 tracehead = trace.prev;
19772 return;
19773 }
19774 void parser___ReduceAction237___init(val_t self, int* init_table) {
19775 struct trace_t trace = {NULL, NULL, 10198, LOCATE_parser___ReduceAction237___init};
19776 trace.prev = tracehead; tracehead = &trace;
19777 trace.file = LOCATE_parser;
19778 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction237].i]) return;
19779 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction237].i] = 1;
19780 tracehead = trace.prev;
19781 return;
19782 }
19783 void parser___ReduceAction238___action(val_t self, val_t param0) {
19784 struct trace_t trace = {NULL, NULL, 10202, LOCATE_parser___ReduceAction238___action};
19785 val_t variable0;
19786 val_t variable1;
19787 val_t variable2;
19788 val_t variable3;
19789 val_t variable4;
19790 val_t variable5;
19791 trace.prev = tracehead; tracehead = &trace;
19792 trace.file = LOCATE_parser;
19793 variable0 = param0;
19794 variable1 = NIT_NULL /*null*/;
19795 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19796 variable2 = variable3;
19797 variable3 = variable2 /*nodearraylist1*/;
19798 variable4 = TAG_Bool(( variable3 /*tkwbreaknode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwbreaknode2*/, COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/;
19799 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction238___action, LOCATE_parser, 10207); nit_exit(1);}
19800 variable5 = NEW_ABreakExpr_parser_prod___ABreakExpr___init_abreakexpr( variable3 /*tkwbreaknode2*/); /*new ABreakExpr*/
19801 variable4 = variable5;
19802 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
19803 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19804 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
19805 tracehead = trace.prev;
19806 return;
19807 }
19808 void parser___ReduceAction238___init(val_t self, int* init_table) {
19809 struct trace_t trace = {NULL, NULL, 10214, LOCATE_parser___ReduceAction238___init};
19810 trace.prev = tracehead; tracehead = &trace;
19811 trace.file = LOCATE_parser;
19812 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction238].i]) return;
19813 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction238].i] = 1;
19814 tracehead = trace.prev;
19815 return;
19816 }
19817 void parser___ReduceAction239___action(val_t self, val_t param0) {
19818 struct trace_t trace = {NULL, NULL, 10218, LOCATE_parser___ReduceAction239___action};
19819 val_t variable0;
19820 val_t variable1;
19821 val_t variable2;
19822 val_t variable3;
19823 val_t variable4;
19824 val_t variable5;
19825 trace.prev = tracehead; tracehead = &trace;
19826 trace.file = LOCATE_parser;
19827 variable0 = param0;
19828 variable1 = NIT_NULL /*null*/;
19829 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19830 variable2 = variable3;
19831 variable3 = variable2 /*nodearraylist1*/;
19832 variable4 = TAG_Bool(( variable3 /*tkwabortnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwabortnode2*/, COLOR_TKwabort, ID_TKwabort)) /*cast TKwabort*/;
19833 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction239___action, LOCATE_parser, 10223); nit_exit(1);}
19834 variable5 = NEW_AAbortExpr_parser_prod___AAbortExpr___init_aabortexpr( variable3 /*tkwabortnode2*/); /*new AAbortExpr*/
19835 variable4 = variable5;
19836 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
19837 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19838 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
19839 tracehead = trace.prev;
19840 return;
19841 }
19842 void parser___ReduceAction239___init(val_t self, int* init_table) {
19843 struct trace_t trace = {NULL, NULL, 10230, LOCATE_parser___ReduceAction239___init};
19844 trace.prev = tracehead; tracehead = &trace;
19845 trace.file = LOCATE_parser;
19846 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction239].i]) return;
19847 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction239].i] = 1;
19848 tracehead = trace.prev;
19849 return;
19850 }
19851 void parser___ReduceAction240___action(val_t self, val_t param0) {
19852 struct trace_t trace = {NULL, NULL, 10234, LOCATE_parser___ReduceAction240___action};
19853 val_t variable0;
19854 val_t variable1;
19855 val_t variable2;
19856 val_t variable3;
19857 val_t variable4;
19858 val_t variable5;
19859 trace.prev = tracehead; tracehead = &trace;
19860 trace.file = LOCATE_parser;
19861 variable0 = param0;
19862 variable1 = NIT_NULL /*null*/;
19863 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19864 variable2 = variable3;
19865 variable3 = variable2 /*nodearraylist1*/;
19866 variable4 = TAG_Bool(( variable3 /*tkwcontinuenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwcontinuenode2*/, COLOR_TKwcontinue, ID_TKwcontinue)) /*cast TKwcontinue*/;
19867 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction240___action, LOCATE_parser, 10239); nit_exit(1);}
19868 variable5 = NEW_AContinueExpr_parser_prod___AContinueExpr___init_acontinueexpr( variable3 /*tkwcontinuenode2*/); /*new AContinueExpr*/
19869 variable4 = variable5;
19870 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
19871 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19872 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
19873 tracehead = trace.prev;
19874 return;
19875 }
19876 void parser___ReduceAction240___init(val_t self, int* init_table) {
19877 struct trace_t trace = {NULL, NULL, 10246, LOCATE_parser___ReduceAction240___init};
19878 trace.prev = tracehead; tracehead = &trace;
19879 trace.file = LOCATE_parser;
19880 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction240].i]) return;
19881 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction240].i] = 1;
19882 tracehead = trace.prev;
19883 return;
19884 }
19885 void parser___ReduceAction241___action(val_t self, val_t param0) {
19886 struct trace_t trace = {NULL, NULL, 10250, LOCATE_parser___ReduceAction241___action};
19887 val_t variable0;
19888 val_t variable1;
19889 val_t variable2;
19890 val_t variable3;
19891 val_t variable4;
19892 trace.prev = tracehead; tracehead = &trace;
19893 trace.file = LOCATE_parser;
19894 variable0 = param0;
19895 variable1 = NIT_NULL /*null*/;
19896 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19897 variable2 = variable3;
19898 variable3 = variable2 /*nodearraylist1*/;
19899 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19900 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction241___action, LOCATE_parser, 10255); nit_exit(1);}
19901 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
19902 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19903 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19904 tracehead = trace.prev;
19905 return;
19906 }
19907 void parser___ReduceAction241___init(val_t self, int* init_table) {
19908 struct trace_t trace = {NULL, NULL, 10259, LOCATE_parser___ReduceAction241___init};
19909 trace.prev = tracehead; tracehead = &trace;
19910 trace.file = LOCATE_parser;
19911 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction241].i]) return;
19912 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction241].i] = 1;
19913 tracehead = trace.prev;
19914 return;
19915 }
19916 void parser___ReduceAction242___action(val_t self, val_t param0) {
19917 struct trace_t trace = {NULL, NULL, 10263, LOCATE_parser___ReduceAction242___action};
19918 val_t variable0;
19919 val_t variable1;
19920 val_t variable2;
19921 val_t variable3;
19922 val_t variable4;
19923 trace.prev = tracehead; tracehead = &trace;
19924 trace.file = LOCATE_parser;
19925 variable0 = param0;
19926 variable1 = NIT_NULL /*null*/;
19927 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19928 variable2 = variable3;
19929 variable3 = variable2 /*nodearraylist1*/;
19930 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19931 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction242___action, LOCATE_parser, 10268); nit_exit(1);}
19932 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
19933 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19934 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19935 tracehead = trace.prev;
19936 return;
19937 }
19938 void parser___ReduceAction242___init(val_t self, int* init_table) {
19939 struct trace_t trace = {NULL, NULL, 10272, LOCATE_parser___ReduceAction242___init};
19940 trace.prev = tracehead; tracehead = &trace;
19941 trace.file = LOCATE_parser;
19942 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction242].i]) return;
19943 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction242].i] = 1;
19944 tracehead = trace.prev;
19945 return;
19946 }
19947 void parser___ReduceAction243___action(val_t self, val_t param0) {
19948 struct trace_t trace = {NULL, NULL, 10276, LOCATE_parser___ReduceAction243___action};
19949 val_t variable0;
19950 val_t variable1;
19951 val_t variable2;
19952 val_t variable3;
19953 val_t variable4;
19954 trace.prev = tracehead; tracehead = &trace;
19955 trace.file = LOCATE_parser;
19956 variable0 = param0;
19957 variable1 = NIT_NULL /*null*/;
19958 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19959 variable2 = variable3;
19960 variable3 = variable2 /*nodearraylist1*/;
19961 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19962 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction243___action, LOCATE_parser, 10281); nit_exit(1);}
19963 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
19964 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19965 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19966 tracehead = trace.prev;
19967 return;
19968 }
19969 void parser___ReduceAction243___init(val_t self, int* init_table) {
19970 struct trace_t trace = {NULL, NULL, 10285, LOCATE_parser___ReduceAction243___init};
19971 trace.prev = tracehead; tracehead = &trace;
19972 trace.file = LOCATE_parser;
19973 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction243].i]) return;
19974 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction243].i] = 1;
19975 tracehead = trace.prev;
19976 return;
19977 }
19978 void parser___ReduceAction244___action(val_t self, val_t param0) {
19979 struct trace_t trace = {NULL, NULL, 10289, LOCATE_parser___ReduceAction244___action};
19980 val_t variable0;
19981 val_t variable1;
19982 val_t variable2;
19983 val_t variable3;
19984 val_t variable4;
19985 trace.prev = tracehead; tracehead = &trace;
19986 trace.file = LOCATE_parser;
19987 variable0 = param0;
19988 variable1 = NIT_NULL /*null*/;
19989 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
19990 variable2 = variable3;
19991 variable3 = variable2 /*nodearraylist1*/;
19992 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
19993 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction244___action, LOCATE_parser, 10294); nit_exit(1);}
19994 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
19995 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
19996 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
19997 tracehead = trace.prev;
19998 return;
19999 }
20000 void parser___ReduceAction244___init(val_t self, int* init_table) {
20001 struct trace_t trace = {NULL, NULL, 10298, LOCATE_parser___ReduceAction244___init};
20002 trace.prev = tracehead; tracehead = &trace;
20003 trace.file = LOCATE_parser;
20004 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction244].i]) return;
20005 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction244].i] = 1;
20006 tracehead = trace.prev;
20007 return;
20008 }
20009 void parser___ReduceAction245___action(val_t self, val_t param0) {
20010 struct trace_t trace = {NULL, NULL, 10302, LOCATE_parser___ReduceAction245___action};
20011 val_t variable0;
20012 val_t variable1;
20013 val_t variable2;
20014 val_t variable3;
20015 val_t variable4;
20016 trace.prev = tracehead; tracehead = &trace;
20017 trace.file = LOCATE_parser;
20018 variable0 = param0;
20019 variable1 = NIT_NULL /*null*/;
20020 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20021 variable2 = variable3;
20022 variable3 = variable2 /*nodearraylist1*/;
20023 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20024 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction245___action, LOCATE_parser, 10307); nit_exit(1);}
20025 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
20026 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
20027 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
20028 tracehead = trace.prev;
20029 return;
20030 }
20031 void parser___ReduceAction245___init(val_t self, int* init_table) {
20032 struct trace_t trace = {NULL, NULL, 10311, LOCATE_parser___ReduceAction245___init};
20033 trace.prev = tracehead; tracehead = &trace;
20034 trace.file = LOCATE_parser;
20035 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction245].i]) return;
20036 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction245].i] = 1;
20037 tracehead = trace.prev;
20038 return;
20039 }
20040 void parser___ReduceAction246___action(val_t self, val_t param0) {
20041 struct trace_t trace = {NULL, NULL, 10315, LOCATE_parser___ReduceAction246___action};
20042 val_t variable0;
20043 val_t variable1;
20044 val_t variable2;
20045 val_t variable3;
20046 val_t variable4;
20047 val_t variable5;
20048 val_t variable6;
20049 val_t variable7;
20050 val_t variable8;
20051 val_t variable9;
20052 val_t variable10;
20053 val_t variable11;
20054 val_t variable12;
20055 trace.prev = tracehead; tracehead = &trace;
20056 trace.file = LOCATE_parser;
20057 variable0 = param0;
20058 variable1 = NIT_NULL /*null*/;
20059 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20060 variable2 = variable3;
20061 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20062 variable3 = variable4;
20063 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20064 variable4 = variable5;
20065 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20066 variable5 = variable6;
20067 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20068 variable6 = variable7;
20069 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20070 variable7 = variable8;
20071 variable8 = variable6 /*nodearraylist1*/;
20072 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20073 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction246___action, LOCATE_parser, 10325); nit_exit(1);}
20074 variable9 = variable3 /*nodearraylist4*/;
20075 variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20076 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction246___action, LOCATE_parser, 10327); nit_exit(1);}
20077 variable10 = variable2 /*nodearraylist5*/;
20078 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20079 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction246___action, LOCATE_parser, 10329); nit_exit(1);}
20080 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20081 if (UNTAG_Bool(variable11)) { /*if*/
20082 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
20083 if (UNTAG_Bool(variable11)) { /*if*/
20084 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
20085 } else { /*if*/
20086 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
20087 }
20088 }
20089 variable12 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/
20090 variable11 = variable12;
20091 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
20092 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
20093 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
20094 tracehead = trace.prev;
20095 return;
20096 }
20097 void parser___ReduceAction246___init(val_t self, int* init_table) {
20098 struct trace_t trace = {NULL, NULL, 10345, LOCATE_parser___ReduceAction246___init};
20099 trace.prev = tracehead; tracehead = &trace;
20100 trace.file = LOCATE_parser;
20101 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction246].i]) return;
20102 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction246].i] = 1;
20103 tracehead = trace.prev;
20104 return;
20105 }
20106 void parser___ReduceAction247___action(val_t self, val_t param0) {
20107 struct trace_t trace = {NULL, NULL, 10349, LOCATE_parser___ReduceAction247___action};
20108 val_t variable0;
20109 val_t variable1;
20110 val_t variable2;
20111 val_t variable3;
20112 val_t variable4;
20113 val_t variable5;
20114 val_t variable6;
20115 val_t variable7;
20116 val_t variable8;
20117 val_t variable9;
20118 trace.prev = tracehead; tracehead = &trace;
20119 trace.file = LOCATE_parser;
20120 variable0 = param0;
20121 variable1 = NIT_NULL /*null*/;
20122 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20123 variable2 = variable3;
20124 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20125 variable3 = variable4;
20126 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20127 variable4 = variable5;
20128 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
20129 variable5 = variable6;
20130 variable6 = variable3 /*nodearraylist1*/;
20131 variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20132 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction247___action, LOCATE_parser, 10358); nit_exit(1);}
20133 variable7 = variable2 /*nodearraylist2*/;
20134 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20135 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction247___action, LOCATE_parser, 10360); nit_exit(1);}
20136 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20137 if (UNTAG_Bool(variable8)) { /*if*/
20138 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
20139 if (UNTAG_Bool(variable8)) { /*if*/
20140 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
20141 } else { /*if*/
20142 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
20143 }
20144 }
20145 variable9 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/
20146 variable8 = variable9;
20147 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
20148 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
20149 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
20150 tracehead = trace.prev;
20151 return;
20152 }
20153 void parser___ReduceAction247___init(val_t self, int* init_table) {
20154 struct trace_t trace = {NULL, NULL, 10376, LOCATE_parser___ReduceAction247___init};
20155 trace.prev = tracehead; tracehead = &trace;
20156 trace.file = LOCATE_parser;
20157 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction247].i]) return;
20158 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction247].i] = 1;
20159 tracehead = trace.prev;
20160 return;
20161 }
20162 void parser___ReduceAction248___action(val_t self, val_t param0) {
20163 struct trace_t trace = {NULL, NULL, 10380, LOCATE_parser___ReduceAction248___action};
20164 val_t variable0;
20165 val_t variable1;
20166 val_t variable2;
20167 val_t variable3;
20168 val_t variable4;
20169 val_t variable5;
20170 val_t variable6;
20171 val_t variable7;
20172 val_t variable8;
20173 trace.prev = tracehead; tracehead = &trace;
20174 trace.file = LOCATE_parser;
20175 variable0 = param0;
20176 variable1 = NIT_NULL /*null*/;
20177 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20178 variable2 = variable3;
20179 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20180 variable3 = variable4;
20181 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20182 variable4 = variable5;
20183 variable5 = variable3 /*nodearraylist1*/;
20184 variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
20185 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction248___action, LOCATE_parser, 10387); nit_exit(1);}
20186 variable6 = variable2 /*nodearraylist2*/;
20187 variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20188 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction248___action, LOCATE_parser, 10389); nit_exit(1);}
20189 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20190 if (UNTAG_Bool(variable7)) { /*if*/
20191 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
20192 if (UNTAG_Bool(variable7)) { /*if*/
20193 variable4 = variable6 /*listnode4*/ /*listnode5=*/;
20194 } else { /*if*/
20195 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*IndexedCollection::append*/;
20196 }
20197 }
20198 variable8 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/
20199 variable7 = variable8;
20200 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
20201 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
20202 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
20203 tracehead = trace.prev;
20204 return;
20205 }
20206 void parser___ReduceAction248___init(val_t self, int* init_table) {
20207 struct trace_t trace = {NULL, NULL, 10405, LOCATE_parser___ReduceAction248___init};
20208 trace.prev = tracehead; tracehead = &trace;
20209 trace.file = LOCATE_parser;
20210 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction248].i]) return;
20211 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction248].i] = 1;
20212 tracehead = trace.prev;
20213 return;
20214 }
20215 void parser___ReduceAction249___action(val_t self, val_t param0) {
20216 struct trace_t trace = {NULL, NULL, 10409, LOCATE_parser___ReduceAction249___action};
20217 val_t variable0;
20218 val_t variable1;
20219 val_t variable2;
20220 val_t variable3;
20221 val_t variable4;
20222 val_t variable5;
20223 val_t variable6;
20224 val_t variable7;
20225 val_t variable8;
20226 val_t variable9;
20227 val_t variable10;
20228 trace.prev = tracehead; tracehead = &trace;
20229 trace.file = LOCATE_parser;
20230 variable0 = param0;
20231 variable1 = NIT_NULL /*null*/;
20232 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20233 variable2 = variable3;
20234 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20235 variable3 = variable4;
20236 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20237 variable4 = variable5;
20238 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20239 variable5 = variable6;
20240 variable6 = variable4 /*nodearraylist1*/;
20241 variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/;
20242 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction249___action, LOCATE_parser, 10417); nit_exit(1);}
20243 variable7 = variable3 /*nodearraylist2*/;
20244 variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
20245 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction249___action, LOCATE_parser, 10419); nit_exit(1);}
20246 variable8 = variable2 /*nodearraylist3*/;
20247 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20248 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction249___action, LOCATE_parser, 10421); nit_exit(1);}
20249 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20250 if (UNTAG_Bool(variable9)) { /*if*/
20251 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
20252 if (UNTAG_Bool(variable9)) { /*if*/
20253 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
20254 } else { /*if*/
20255 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
20256 }
20257 }
20258 variable10 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/
20259 variable9 = variable10;
20260 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
20261 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
20262 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
20263 tracehead = trace.prev;
20264 return;
20265 }
20266 void parser___ReduceAction249___init(val_t self, int* init_table) {
20267 struct trace_t trace = {NULL, NULL, 10437, LOCATE_parser___ReduceAction249___init};
20268 trace.prev = tracehead; tracehead = &trace;
20269 trace.file = LOCATE_parser;
20270 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction249].i]) return;
20271 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction249].i] = 1;
20272 tracehead = trace.prev;
20273 return;
20274 }
20275 void parser___ReduceAction250___action(val_t self, val_t param0) {
20276 struct trace_t trace = {NULL, NULL, 10441, LOCATE_parser___ReduceAction250___action};
20277 val_t variable0;
20278 val_t variable1;
20279 val_t variable2;
20280 val_t variable3;
20281 val_t variable4;
20282 val_t variable5;
20283 val_t variable6;
20284 val_t variable7;
20285 val_t variable8;
20286 val_t variable9;
20287 val_t variable10;
20288 val_t variable11;
20289 val_t variable12;
20290 trace.prev = tracehead; tracehead = &trace;
20291 trace.file = LOCATE_parser;
20292 variable0 = param0;
20293 variable1 = NIT_NULL /*null*/;
20294 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20295 variable2 = variable3;
20296 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20297 variable3 = variable4;
20298 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20299 variable4 = variable5;
20300 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20301 variable5 = variable6;
20302 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20303 variable6 = variable7;
20304 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20305 variable7 = variable8;
20306 variable8 = variable6 /*nodearraylist1*/;
20307 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20308 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction250___action, LOCATE_parser, 10451); nit_exit(1);}
20309 variable9 = variable3 /*nodearraylist4*/;
20310 variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
20311 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction250___action, LOCATE_parser, 10453); nit_exit(1);}
20312 variable10 = variable2 /*nodearraylist5*/;
20313 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20314 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction250___action, LOCATE_parser, 10455); nit_exit(1);}
20315 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20316 if (UNTAG_Bool(variable11)) { /*if*/
20317 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
20318 if (UNTAG_Bool(variable11)) { /*if*/
20319 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
20320 } else { /*if*/
20321 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
20322 }
20323 }
20324 variable12 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/
20325 variable11 = variable12;
20326 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
20327 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
20328 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
20329 tracehead = trace.prev;
20330 return;
20331 }
20332 void parser___ReduceAction250___init(val_t self, int* init_table) {
20333 struct trace_t trace = {NULL, NULL, 10471, LOCATE_parser___ReduceAction250___init};
20334 trace.prev = tracehead; tracehead = &trace;
20335 trace.file = LOCATE_parser;
20336 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction250].i]) return;
20337 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction250].i] = 1;
20338 tracehead = trace.prev;
20339 return;
20340 }
20341 void parser___ReduceAction251___action(val_t self, val_t param0) {
20342 struct trace_t trace = {NULL, NULL, 10475, LOCATE_parser___ReduceAction251___action};
20343 val_t variable0;
20344 val_t variable1;
20345 val_t variable2;
20346 val_t variable3;
20347 val_t variable4;
20348 val_t variable5;
20349 val_t variable6;
20350 val_t variable7;
20351 val_t variable8;
20352 val_t variable9;
20353 trace.prev = tracehead; tracehead = &trace;
20354 trace.file = LOCATE_parser;
20355 variable0 = param0;
20356 variable1 = NIT_NULL /*null*/;
20357 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20358 variable2 = variable3;
20359 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20360 variable3 = variable4;
20361 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20362 variable4 = variable5;
20363 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
20364 variable5 = variable6;
20365 variable6 = variable3 /*nodearraylist1*/;
20366 variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
20367 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction251___action, LOCATE_parser, 10484); nit_exit(1);}
20368 variable7 = variable2 /*nodearraylist2*/;
20369 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20370 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction251___action, LOCATE_parser, 10486); nit_exit(1);}
20371 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20372 if (UNTAG_Bool(variable8)) { /*if*/
20373 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
20374 if (UNTAG_Bool(variable8)) { /*if*/
20375 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
20376 } else { /*if*/
20377 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
20378 }
20379 }
20380 variable9 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/
20381 variable8 = variable9;
20382 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
20383 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(27)) /*Parser::go_to*/;
20384 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
20385 tracehead = trace.prev;
20386 return;
20387 }
20388 void parser___ReduceAction251___init(val_t self, int* init_table) {
20389 struct trace_t trace = {NULL, NULL, 10502, LOCATE_parser___ReduceAction251___init};
20390 trace.prev = tracehead; tracehead = &trace;
20391 trace.file = LOCATE_parser;
20392 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction251].i]) return;
20393 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction251].i] = 1;
20394 tracehead = trace.prev;
20395 return;
20396 }
20397 void parser___ReduceAction252___action(val_t self, val_t param0) {
20398 struct trace_t trace = {NULL, NULL, 10506, LOCATE_parser___ReduceAction252___action};
20399 val_t variable0;
20400 val_t variable1;
20401 val_t variable2;
20402 val_t variable3;
20403 val_t variable4;
20404 val_t variable5;
20405 val_t variable6;
20406 val_t variable7;
20407 trace.prev = tracehead; tracehead = &trace;
20408 trace.file = LOCATE_parser;
20409 variable0 = param0;
20410 variable1 = NIT_NULL /*null*/;
20411 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20412 variable2 = variable3;
20413 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20414 variable3 = variable4;
20415 variable4 = variable3 /*nodearraylist1*/;
20416 variable5 = TAG_Bool(( variable4 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/;
20417 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction252___action, LOCATE_parser, 10512); nit_exit(1);}
20418 variable5 = variable2 /*nodearraylist2*/;
20419 variable6 = TAG_Bool(( variable5 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20420 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction252___action, LOCATE_parser, 10514); nit_exit(1);}
20421 variable7 = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr( variable4 /*tkwvarnode2*/, variable5 /*tidnode3*/, NIT_NULL /*null*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AVardeclExpr*/
20422 variable6 = variable7;
20423 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
20424 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/;
20425 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
20426 tracehead = trace.prev;
20427 return;
20428 }
20429 void parser___ReduceAction252___init(val_t self, int* init_table) {
20430 struct trace_t trace = {NULL, NULL, 10525, LOCATE_parser___ReduceAction252___init};
20431 trace.prev = tracehead; tracehead = &trace;
20432 trace.file = LOCATE_parser;
20433 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction252].i]) return;
20434 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction252].i] = 1;
20435 tracehead = trace.prev;
20436 return;
20437 }
20438 void parser___ReduceAction253___action(val_t self, val_t param0) {
20439 struct trace_t trace = {NULL, NULL, 10529, LOCATE_parser___ReduceAction253___action};
20440 val_t variable0;
20441 val_t variable1;
20442 val_t variable2;
20443 val_t variable3;
20444 val_t variable4;
20445 val_t variable5;
20446 val_t variable6;
20447 val_t variable7;
20448 val_t variable8;
20449 val_t variable9;
20450 trace.prev = tracehead; tracehead = &trace;
20451 trace.file = LOCATE_parser;
20452 variable0 = param0;
20453 variable1 = NIT_NULL /*null*/;
20454 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20455 variable2 = variable3;
20456 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20457 variable3 = variable4;
20458 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20459 variable4 = variable5;
20460 variable5 = variable4 /*nodearraylist1*/;
20461 variable6 = TAG_Bool(( variable5 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/;
20462 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction253___action, LOCATE_parser, 10536); nit_exit(1);}
20463 variable6 = variable3 /*nodearraylist2*/;
20464 variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20465 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction253___action, LOCATE_parser, 10538); nit_exit(1);}
20466 variable7 = variable2 /*nodearraylist3*/;
20467 variable8 = TAG_Bool(( variable7 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/;
20468 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction253___action, LOCATE_parser, 10540); nit_exit(1);}
20469 variable9 = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr( variable5 /*tkwvarnode2*/, variable6 /*tidnode3*/, variable7 /*ptypenode4*/, NIT_NULL /*null*/, NIT_NULL /*null*/); /*new AVardeclExpr*/
20470 variable8 = variable9;
20471 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
20472 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/;
20473 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
20474 tracehead = trace.prev;
20475 return;
20476 }
20477 void parser___ReduceAction253___init(val_t self, int* init_table) {
20478 struct trace_t trace = {NULL, NULL, 10551, LOCATE_parser___ReduceAction253___init};
20479 trace.prev = tracehead; tracehead = &trace;
20480 trace.file = LOCATE_parser;
20481 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction253].i]) return;
20482 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction253].i] = 1;
20483 tracehead = trace.prev;
20484 return;
20485 }
20486 void parser___ReduceAction254___action(val_t self, val_t param0) {
20487 struct trace_t trace = {NULL, NULL, 10555, LOCATE_parser___ReduceAction254___action};
20488 val_t variable0;
20489 val_t variable1;
20490 val_t variable2;
20491 val_t variable3;
20492 val_t variable4;
20493 val_t variable5;
20494 val_t variable6;
20495 val_t variable7;
20496 val_t variable8;
20497 val_t variable9;
20498 val_t variable10;
20499 val_t variable11;
20500 val_t variable12;
20501 trace.prev = tracehead; tracehead = &trace;
20502 trace.file = LOCATE_parser;
20503 variable0 = param0;
20504 variable1 = NIT_NULL /*null*/;
20505 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20506 variable2 = variable3;
20507 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20508 variable3 = variable4;
20509 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20510 variable4 = variable5;
20511 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20512 variable5 = variable6;
20513 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20514 variable6 = variable7;
20515 variable7 = variable6 /*nodearraylist1*/;
20516 variable8 = TAG_Bool(( variable7 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/;
20517 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction254___action, LOCATE_parser, 10564); nit_exit(1);}
20518 variable8 = variable5 /*nodearraylist2*/;
20519 variable9 = TAG_Bool(( variable8 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable8 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20520 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction254___action, LOCATE_parser, 10566); nit_exit(1);}
20521 variable9 = variable4 /*nodearraylist3*/;
20522 variable10 = TAG_Bool(( variable9 /*tassignnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tassignnode5*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
20523 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction254___action, LOCATE_parser, 10568); nit_exit(1);}
20524 variable10 = variable2 /*nodearraylist5*/;
20525 variable11 = TAG_Bool(( variable10 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20526 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction254___action, LOCATE_parser, 10570); nit_exit(1);}
20527 variable12 = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr( variable7 /*tkwvarnode2*/, variable8 /*tidnode3*/, NIT_NULL /*null*/, variable9 /*tassignnode5*/, variable10 /*pexprnode6*/); /*new AVardeclExpr*/
20528 variable11 = variable12;
20529 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
20530 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/;
20531 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
20532 tracehead = trace.prev;
20533 return;
20534 }
20535 void parser___ReduceAction254___init(val_t self, int* init_table) {
20536 struct trace_t trace = {NULL, NULL, 10581, LOCATE_parser___ReduceAction254___init};
20537 trace.prev = tracehead; tracehead = &trace;
20538 trace.file = LOCATE_parser;
20539 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction254].i]) return;
20540 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction254].i] = 1;
20541 tracehead = trace.prev;
20542 return;
20543 }
20544 void parser___ReduceAction255___action(val_t self, val_t param0) {
20545 struct trace_t trace = {NULL, NULL, 10585, LOCATE_parser___ReduceAction255___action};
20546 val_t variable0;
20547 val_t variable1;
20548 val_t variable2;
20549 val_t variable3;
20550 val_t variable4;
20551 val_t variable5;
20552 val_t variable6;
20553 val_t variable7;
20554 val_t variable8;
20555 val_t variable9;
20556 val_t variable10;
20557 val_t variable11;
20558 val_t variable12;
20559 val_t variable13;
20560 val_t variable14;
20561 trace.prev = tracehead; tracehead = &trace;
20562 trace.file = LOCATE_parser;
20563 variable0 = param0;
20564 variable1 = NIT_NULL /*null*/;
20565 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20566 variable2 = variable3;
20567 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20568 variable3 = variable4;
20569 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20570 variable4 = variable5;
20571 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20572 variable5 = variable6;
20573 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20574 variable6 = variable7;
20575 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20576 variable7 = variable8;
20577 variable8 = variable7 /*nodearraylist1*/;
20578 variable9 = TAG_Bool(( variable8 /*tkwvarnode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwvarnode2*/, COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/;
20579 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction255___action, LOCATE_parser, 10595); nit_exit(1);}
20580 variable9 = variable6 /*nodearraylist2*/;
20581 variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20582 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction255___action, LOCATE_parser, 10597); nit_exit(1);}
20583 variable10 = variable5 /*nodearraylist3*/;
20584 variable11 = TAG_Bool(( variable10 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable10 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/;
20585 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction255___action, LOCATE_parser, 10599); nit_exit(1);}
20586 variable11 = variable4 /*nodearraylist4*/;
20587 variable12 = TAG_Bool(( variable11 /*tassignnode5*/==NIT_NULL) || VAL_ISA( variable11 /*tassignnode5*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
20588 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction255___action, LOCATE_parser, 10601); nit_exit(1);}
20589 variable12 = variable2 /*nodearraylist6*/;
20590 variable13 = TAG_Bool(( variable12 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20591 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction255___action, LOCATE_parser, 10603); nit_exit(1);}
20592 variable14 = NEW_AVardeclExpr_parser_prod___AVardeclExpr___init_avardeclexpr( variable8 /*tkwvarnode2*/, variable9 /*tidnode3*/, variable10 /*ptypenode4*/, variable11 /*tassignnode5*/, variable12 /*pexprnode6*/); /*new AVardeclExpr*/
20593 variable13 = variable14;
20594 variable1 = variable13 /*pexprnode1*/ /*node_list=*/;
20595 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(28)) /*Parser::go_to*/;
20596 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
20597 tracehead = trace.prev;
20598 return;
20599 }
20600 void parser___ReduceAction255___init(val_t self, int* init_table) {
20601 struct trace_t trace = {NULL, NULL, 10614, LOCATE_parser___ReduceAction255___init};
20602 trace.prev = tracehead; tracehead = &trace;
20603 trace.file = LOCATE_parser;
20604 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction255].i]) return;
20605 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction255].i] = 1;
20606 tracehead = trace.prev;
20607 return;
20608 }
20609 void parser___ReduceAction256___action(val_t self, val_t param0) {
20610 struct trace_t trace = {NULL, NULL, 10618, LOCATE_parser___ReduceAction256___action};
20611 val_t variable0;
20612 val_t variable1;
20613 val_t variable2;
20614 val_t variable3;
20615 val_t variable4;
20616 val_t variable5;
20617 val_t variable6;
20618 val_t variable7;
20619 val_t variable8;
20620 val_t variable9;
20621 val_t variable10;
20622 val_t variable11;
20623 val_t variable12;
20624 val_t variable13;
20625 trace.prev = tracehead; tracehead = &trace;
20626 trace.file = LOCATE_parser;
20627 variable0 = param0;
20628 variable1 = NIT_NULL /*null*/;
20629 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20630 variable2 = variable3;
20631 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20632 variable3 = variable4;
20633 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20634 variable4 = variable5;
20635 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20636 variable5 = variable6;
20637 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20638 variable6 = variable7;
20639 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20640 variable7 = variable8;
20641 variable8 = variable7 /*nodearraylist1*/;
20642 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20643 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction256___action, LOCATE_parser, 10628); nit_exit(1);}
20644 variable9 = variable4 /*nodearraylist4*/;
20645 variable10 = TAG_Bool(( variable9 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
20646 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction256___action, LOCATE_parser, 10630); nit_exit(1);}
20647 variable10 = variable3 /*nodearraylist5*/;
20648 variable11 = TAG_Bool(( variable10 /*tassignnode4*/==NIT_NULL) || VAL_ISA( variable10 /*tassignnode4*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
20649 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction256___action, LOCATE_parser, 10632); nit_exit(1);}
20650 variable11 = variable2 /*nodearraylist6*/;
20651 variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20652 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction256___action, LOCATE_parser, 10634); nit_exit(1);}
20653 variable13 = NEW_AAttrAssignExpr_parser_prod___AAttrAssignExpr___init_aattrassignexpr( variable8 /*pexprnode2*/, variable9 /*tattridnode3*/, variable10 /*tassignnode4*/, variable11 /*pexprnode5*/); /*new AAttrAssignExpr*/
20654 variable12 = variable13;
20655 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
20656 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
20657 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
20658 tracehead = trace.prev;
20659 return;
20660 }
20661 void parser___ReduceAction256___init(val_t self, int* init_table) {
20662 struct trace_t trace = {NULL, NULL, 10644, LOCATE_parser___ReduceAction256___init};
20663 trace.prev = tracehead; tracehead = &trace;
20664 trace.file = LOCATE_parser;
20665 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction256].i]) return;
20666 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction256].i] = 1;
20667 tracehead = trace.prev;
20668 return;
20669 }
20670 void parser___ReduceAction257___action(val_t self, val_t param0) {
20671 struct trace_t trace = {NULL, NULL, 10648, LOCATE_parser___ReduceAction257___action};
20672 val_t variable0;
20673 val_t variable1;
20674 val_t variable2;
20675 val_t variable3;
20676 val_t variable4;
20677 val_t variable5;
20678 val_t variable6;
20679 val_t variable7;
20680 val_t variable8;
20681 val_t variable9;
20682 val_t variable10;
20683 trace.prev = tracehead; tracehead = &trace;
20684 trace.file = LOCATE_parser;
20685 variable0 = param0;
20686 variable1 = NIT_NULL /*null*/;
20687 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20688 variable2 = variable3;
20689 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20690 variable3 = variable4;
20691 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20692 variable4 = variable5;
20693 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
20694 variable5 = variable6;
20695 variable6 = variable4 /*nodearraylist1*/;
20696 variable7 = TAG_Bool(( variable6 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
20697 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction257___action, LOCATE_parser, 10657); nit_exit(1);}
20698 variable7 = variable3 /*nodearraylist2*/;
20699 variable8 = TAG_Bool(( variable7 /*tassignnode4*/==NIT_NULL) || VAL_ISA( variable7 /*tassignnode4*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
20700 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction257___action, LOCATE_parser, 10659); nit_exit(1);}
20701 variable8 = variable2 /*nodearraylist3*/;
20702 variable9 = TAG_Bool(( variable8 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20703 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction257___action, LOCATE_parser, 10661); nit_exit(1);}
20704 variable10 = NEW_AAttrAssignExpr_parser_prod___AAttrAssignExpr___init_aattrassignexpr( variable5 /*pexprnode2*/, variable6 /*tattridnode3*/, variable7 /*tassignnode4*/, variable8 /*pexprnode5*/); /*new AAttrAssignExpr*/
20705 variable9 = variable10;
20706 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
20707 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
20708 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
20709 tracehead = trace.prev;
20710 return;
20711 }
20712 void parser___ReduceAction257___init(val_t self, int* init_table) {
20713 struct trace_t trace = {NULL, NULL, 10671, LOCATE_parser___ReduceAction257___init};
20714 trace.prev = tracehead; tracehead = &trace;
20715 trace.file = LOCATE_parser;
20716 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction257].i]) return;
20717 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction257].i] = 1;
20718 tracehead = trace.prev;
20719 return;
20720 }
20721 void parser___ReduceAction258___action(val_t self, val_t param0) {
20722 struct trace_t trace = {NULL, NULL, 10675, LOCATE_parser___ReduceAction258___action};
20723 val_t variable0;
20724 val_t variable1;
20725 val_t variable2;
20726 val_t variable3;
20727 val_t variable4;
20728 val_t variable5;
20729 val_t variable6;
20730 val_t variable7;
20731 val_t variable8;
20732 val_t variable9;
20733 val_t variable10;
20734 val_t variable11;
20735 val_t variable12;
20736 val_t variable13;
20737 val_t variable14;
20738 val_t variable15;
20739 val_t variable16;
20740 trace.prev = tracehead; tracehead = &trace;
20741 trace.file = LOCATE_parser;
20742 variable0 = param0;
20743 variable1 = NIT_NULL /*null*/;
20744 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20745 variable2 = variable3;
20746 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20747 variable3 = variable4;
20748 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20749 variable4 = variable5;
20750 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20751 variable5 = variable6;
20752 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20753 variable6 = variable7;
20754 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20755 variable7 = variable8;
20756 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20757 variable8 = variable9;
20758 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20759 variable9 = variable10;
20760 variable10 = variable8 /*nodearraylist1*/;
20761 variable11 = TAG_Bool(( variable10 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20762 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction258___action, LOCATE_parser, 10687); nit_exit(1);}
20763 variable11 = variable5 /*nodearraylist4*/;
20764 variable12 = TAG_Bool(( variable11 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20765 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction258___action, LOCATE_parser, 10689); nit_exit(1);}
20766 variable12 = variable4 /*nodearraylist5*/;
20767 variable13 = TAG_Bool(( variable12 /*listnode4*/==NIT_NULL) || VAL_ISA( variable12 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20768 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction258___action, LOCATE_parser, 10691); nit_exit(1);}
20769 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode4*/ == NIT_NULL /*null*/) || (( variable12 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20770 if (UNTAG_Bool(variable13)) { /*if*/
20771 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode5*/) /*AbstractArray::is_empty*/;
20772 if (UNTAG_Bool(variable13)) { /*if*/
20773 variable9 = variable12 /*listnode4*/ /*listnode5=*/;
20774 } else { /*if*/
20775 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode5*/, variable12 /*listnode4*/) /*IndexedCollection::append*/;
20776 }
20777 }
20778 variable13 = variable3 /*nodearraylist6*/;
20779 variable14 = TAG_Bool(( variable13 /*tassignnode6*/==NIT_NULL) || VAL_ISA( variable13 /*tassignnode6*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
20780 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction258___action, LOCATE_parser, 10700); nit_exit(1);}
20781 variable14 = variable2 /*nodearraylist7*/;
20782 variable15 = TAG_Bool(( variable14 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20783 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction258___action, LOCATE_parser, 10702); nit_exit(1);}
20784 variable16 = NEW_ACallAssignExpr_parser_prod___ACallAssignExpr___init_acallassignexpr( variable10 /*pexprnode2*/, variable11 /*tidnode3*/, variable9 /*listnode5*/, variable13 /*tassignnode6*/, variable14 /*pexprnode7*/); /*new ACallAssignExpr*/
20785 variable15 = variable16;
20786 variable1 = variable15 /*pexprnode1*/ /*node_list=*/;
20787 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
20788 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
20789 tracehead = trace.prev;
20790 return;
20791 }
20792 void parser___ReduceAction258___init(val_t self, int* init_table) {
20793 struct trace_t trace = {NULL, NULL, 10713, LOCATE_parser___ReduceAction258___init};
20794 trace.prev = tracehead; tracehead = &trace;
20795 trace.file = LOCATE_parser;
20796 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction258].i]) return;
20797 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction258].i] = 1;
20798 tracehead = trace.prev;
20799 return;
20800 }
20801 void parser___ReduceAction259___action(val_t self, val_t param0) {
20802 struct trace_t trace = {NULL, NULL, 10717, LOCATE_parser___ReduceAction259___action};
20803 val_t variable0;
20804 val_t variable1;
20805 val_t variable2;
20806 val_t variable3;
20807 val_t variable4;
20808 val_t variable5;
20809 val_t variable6;
20810 val_t variable7;
20811 val_t variable8;
20812 val_t variable9;
20813 val_t variable10;
20814 val_t variable11;
20815 val_t variable12;
20816 val_t variable13;
20817 trace.prev = tracehead; tracehead = &trace;
20818 trace.file = LOCATE_parser;
20819 variable0 = param0;
20820 variable1 = NIT_NULL /*null*/;
20821 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20822 variable2 = variable3;
20823 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20824 variable3 = variable4;
20825 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20826 variable4 = variable5;
20827 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20828 variable5 = variable6;
20829 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20830 variable6 = variable7;
20831 variable8 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
20832 variable7 = variable8;
20833 variable8 = variable5 /*nodearraylist1*/;
20834 variable9 = TAG_Bool(( variable8 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable8 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
20835 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction259___action, LOCATE_parser, 10728); nit_exit(1);}
20836 variable9 = variable4 /*nodearraylist2*/;
20837 variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20838 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction259___action, LOCATE_parser, 10730); nit_exit(1);}
20839 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20840 if (UNTAG_Bool(variable10)) { /*if*/
20841 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode5*/) /*AbstractArray::is_empty*/;
20842 if (UNTAG_Bool(variable10)) { /*if*/
20843 variable6 = variable9 /*listnode4*/ /*listnode5=*/;
20844 } else { /*if*/
20845 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode5*/, variable9 /*listnode4*/) /*IndexedCollection::append*/;
20846 }
20847 }
20848 variable10 = variable3 /*nodearraylist3*/;
20849 variable11 = TAG_Bool(( variable10 /*tassignnode6*/==NIT_NULL) || VAL_ISA( variable10 /*tassignnode6*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
20850 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction259___action, LOCATE_parser, 10739); nit_exit(1);}
20851 variable11 = variable2 /*nodearraylist4*/;
20852 variable12 = TAG_Bool(( variable11 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20853 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction259___action, LOCATE_parser, 10741); nit_exit(1);}
20854 variable13 = NEW_ACallAssignExpr_parser_prod___ACallAssignExpr___init_acallassignexpr( variable7 /*pexprnode2*/, variable8 /*tidnode3*/, variable6 /*listnode5*/, variable10 /*tassignnode6*/, variable11 /*pexprnode7*/); /*new ACallAssignExpr*/
20855 variable12 = variable13;
20856 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
20857 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
20858 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
20859 tracehead = trace.prev;
20860 return;
20861 }
20862 void parser___ReduceAction259___init(val_t self, int* init_table) {
20863 struct trace_t trace = {NULL, NULL, 10752, LOCATE_parser___ReduceAction259___init};
20864 trace.prev = tracehead; tracehead = &trace;
20865 trace.file = LOCATE_parser;
20866 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction259].i]) return;
20867 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction259].i] = 1;
20868 tracehead = trace.prev;
20869 return;
20870 }
20871 void parser___ReduceAction260___action(val_t self, val_t param0) {
20872 struct trace_t trace = {NULL, NULL, 10756, LOCATE_parser___ReduceAction260___action};
20873 val_t variable0;
20874 val_t variable1;
20875 val_t variable2;
20876 val_t variable3;
20877 val_t variable4;
20878 val_t variable5;
20879 val_t variable6;
20880 val_t variable7;
20881 val_t variable8;
20882 val_t variable9;
20883 val_t variable10;
20884 val_t variable11;
20885 val_t variable12;
20886 trace.prev = tracehead; tracehead = &trace;
20887 trace.file = LOCATE_parser;
20888 variable0 = param0;
20889 variable1 = NIT_NULL /*null*/;
20890 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20891 variable2 = variable3;
20892 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20893 variable3 = variable4;
20894 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20895 variable4 = variable5;
20896 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20897 variable5 = variable6;
20898 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
20899 variable6 = variable7;
20900 variable7 = variable5 /*nodearraylist1*/;
20901 variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20902 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction260___action, LOCATE_parser, 10765); nit_exit(1);}
20903 variable8 = variable4 /*nodearraylist2*/;
20904 variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
20905 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction260___action, LOCATE_parser, 10767); nit_exit(1);}
20906 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
20907 if (UNTAG_Bool(variable9)) { /*if*/
20908 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*AbstractArray::is_empty*/;
20909 if (UNTAG_Bool(variable9)) { /*if*/
20910 variable6 = variable8 /*listnode3*/ /*listnode4=*/;
20911 } else { /*if*/
20912 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*IndexedCollection::append*/;
20913 }
20914 }
20915 variable9 = variable3 /*nodearraylist3*/;
20916 variable10 = TAG_Bool(( variable9 /*tassignnode5*/==NIT_NULL) || VAL_ISA( variable9 /*tassignnode5*/, COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
20917 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction260___action, LOCATE_parser, 10776); nit_exit(1);}
20918 variable10 = variable2 /*nodearraylist4*/;
20919 variable11 = TAG_Bool(( variable10 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20920 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction260___action, LOCATE_parser, 10778); nit_exit(1);}
20921 variable12 = NEW_ABraAssignExpr_parser_prod___ABraAssignExpr___init_abraassignexpr( variable7 /*pexprnode2*/, variable6 /*listnode4*/, variable9 /*tassignnode5*/, variable10 /*pexprnode6*/); /*new ABraAssignExpr*/
20922 variable11 = variable12;
20923 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
20924 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
20925 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
20926 tracehead = trace.prev;
20927 return;
20928 }
20929 void parser___ReduceAction260___init(val_t self, int* init_table) {
20930 struct trace_t trace = {NULL, NULL, 10788, LOCATE_parser___ReduceAction260___init};
20931 trace.prev = tracehead; tracehead = &trace;
20932 trace.file = LOCATE_parser;
20933 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction260].i]) return;
20934 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction260].i] = 1;
20935 tracehead = trace.prev;
20936 return;
20937 }
20938 void parser___ReduceAction261___action(val_t self, val_t param0) {
20939 struct trace_t trace = {NULL, NULL, 10792, LOCATE_parser___ReduceAction261___action};
20940 val_t variable0;
20941 val_t variable1;
20942 val_t variable2;
20943 val_t variable3;
20944 val_t variable4;
20945 val_t variable5;
20946 val_t variable6;
20947 val_t variable7;
20948 val_t variable8;
20949 val_t variable9;
20950 val_t variable10;
20951 val_t variable11;
20952 val_t variable12;
20953 val_t variable13;
20954 trace.prev = tracehead; tracehead = &trace;
20955 trace.file = LOCATE_parser;
20956 variable0 = param0;
20957 variable1 = NIT_NULL /*null*/;
20958 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20959 variable2 = variable3;
20960 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20961 variable3 = variable4;
20962 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20963 variable4 = variable5;
20964 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20965 variable5 = variable6;
20966 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20967 variable6 = variable7;
20968 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
20969 variable7 = variable8;
20970 variable8 = variable7 /*nodearraylist1*/;
20971 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20972 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction261___action, LOCATE_parser, 10802); nit_exit(1);}
20973 variable9 = variable4 /*nodearraylist4*/;
20974 variable10 = TAG_Bool(( variable9 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
20975 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction261___action, LOCATE_parser, 10804); nit_exit(1);}
20976 variable10 = variable3 /*nodearraylist5*/;
20977 variable11 = TAG_Bool(( variable10 /*passignopnode4*/==NIT_NULL) || VAL_ISA( variable10 /*passignopnode4*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/;
20978 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction261___action, LOCATE_parser, 10806); nit_exit(1);}
20979 variable11 = variable2 /*nodearraylist6*/;
20980 variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
20981 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction261___action, LOCATE_parser, 10808); nit_exit(1);}
20982 variable13 = NEW_AAttrReassignExpr_parser_prod___AAttrReassignExpr___init_aattrreassignexpr( variable8 /*pexprnode2*/, variable9 /*tattridnode3*/, variable10 /*passignopnode4*/, variable11 /*pexprnode5*/); /*new AAttrReassignExpr*/
20983 variable12 = variable13;
20984 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
20985 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
20986 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
20987 tracehead = trace.prev;
20988 return;
20989 }
20990 void parser___ReduceAction261___init(val_t self, int* init_table) {
20991 struct trace_t trace = {NULL, NULL, 10818, LOCATE_parser___ReduceAction261___init};
20992 trace.prev = tracehead; tracehead = &trace;
20993 trace.file = LOCATE_parser;
20994 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction261].i]) return;
20995 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction261].i] = 1;
20996 tracehead = trace.prev;
20997 return;
20998 }
20999 void parser___ReduceAction262___action(val_t self, val_t param0) {
21000 struct trace_t trace = {NULL, NULL, 10822, LOCATE_parser___ReduceAction262___action};
21001 val_t variable0;
21002 val_t variable1;
21003 val_t variable2;
21004 val_t variable3;
21005 val_t variable4;
21006 val_t variable5;
21007 val_t variable6;
21008 val_t variable7;
21009 val_t variable8;
21010 val_t variable9;
21011 val_t variable10;
21012 trace.prev = tracehead; tracehead = &trace;
21013 trace.file = LOCATE_parser;
21014 variable0 = param0;
21015 variable1 = NIT_NULL /*null*/;
21016 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21017 variable2 = variable3;
21018 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21019 variable3 = variable4;
21020 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21021 variable4 = variable5;
21022 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
21023 variable5 = variable6;
21024 variable6 = variable4 /*nodearraylist1*/;
21025 variable7 = TAG_Bool(( variable6 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
21026 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction262___action, LOCATE_parser, 10831); nit_exit(1);}
21027 variable7 = variable3 /*nodearraylist2*/;
21028 variable8 = TAG_Bool(( variable7 /*passignopnode4*/==NIT_NULL) || VAL_ISA( variable7 /*passignopnode4*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/;
21029 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction262___action, LOCATE_parser, 10833); nit_exit(1);}
21030 variable8 = variable2 /*nodearraylist3*/;
21031 variable9 = TAG_Bool(( variable8 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21032 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction262___action, LOCATE_parser, 10835); nit_exit(1);}
21033 variable10 = NEW_AAttrReassignExpr_parser_prod___AAttrReassignExpr___init_aattrreassignexpr( variable5 /*pexprnode2*/, variable6 /*tattridnode3*/, variable7 /*passignopnode4*/, variable8 /*pexprnode5*/); /*new AAttrReassignExpr*/
21034 variable9 = variable10;
21035 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
21036 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
21037 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
21038 tracehead = trace.prev;
21039 return;
21040 }
21041 void parser___ReduceAction262___init(val_t self, int* init_table) {
21042 struct trace_t trace = {NULL, NULL, 10845, LOCATE_parser___ReduceAction262___init};
21043 trace.prev = tracehead; tracehead = &trace;
21044 trace.file = LOCATE_parser;
21045 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction262].i]) return;
21046 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction262].i] = 1;
21047 tracehead = trace.prev;
21048 return;
21049 }
21050 void parser___ReduceAction263___action(val_t self, val_t param0) {
21051 struct trace_t trace = {NULL, NULL, 10849, LOCATE_parser___ReduceAction263___action};
21052 val_t variable0;
21053 val_t variable1;
21054 val_t variable2;
21055 val_t variable3;
21056 val_t variable4;
21057 val_t variable5;
21058 val_t variable6;
21059 val_t variable7;
21060 val_t variable8;
21061 val_t variable9;
21062 val_t variable10;
21063 val_t variable11;
21064 val_t variable12;
21065 val_t variable13;
21066 val_t variable14;
21067 val_t variable15;
21068 val_t variable16;
21069 trace.prev = tracehead; tracehead = &trace;
21070 trace.file = LOCATE_parser;
21071 variable0 = param0;
21072 variable1 = NIT_NULL /*null*/;
21073 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21074 variable2 = variable3;
21075 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21076 variable3 = variable4;
21077 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21078 variable4 = variable5;
21079 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21080 variable5 = variable6;
21081 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21082 variable6 = variable7;
21083 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21084 variable7 = variable8;
21085 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21086 variable8 = variable9;
21087 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
21088 variable9 = variable10;
21089 variable10 = variable8 /*nodearraylist1*/;
21090 variable11 = TAG_Bool(( variable10 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21091 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction263___action, LOCATE_parser, 10861); nit_exit(1);}
21092 variable11 = variable5 /*nodearraylist4*/;
21093 variable12 = TAG_Bool(( variable11 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable11 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
21094 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction263___action, LOCATE_parser, 10863); nit_exit(1);}
21095 variable12 = variable4 /*nodearraylist5*/;
21096 variable13 = TAG_Bool(( variable12 /*listnode4*/==NIT_NULL) || VAL_ISA( variable12 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
21097 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction263___action, LOCATE_parser, 10865); nit_exit(1);}
21098 variable13 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12 /*listnode4*/ == NIT_NULL /*null*/) || (( variable12 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable12 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable12 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable12 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable12 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
21099 if (UNTAG_Bool(variable13)) { /*if*/
21100 variable13 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode5*/) /*AbstractArray::is_empty*/;
21101 if (UNTAG_Bool(variable13)) { /*if*/
21102 variable9 = variable12 /*listnode4*/ /*listnode5=*/;
21103 } else { /*if*/
21104 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode5*/, variable12 /*listnode4*/) /*IndexedCollection::append*/;
21105 }
21106 }
21107 variable13 = variable3 /*nodearraylist6*/;
21108 variable14 = TAG_Bool(( variable13 /*passignopnode6*/==NIT_NULL) || VAL_ISA( variable13 /*passignopnode6*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/;
21109 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction263___action, LOCATE_parser, 10874); nit_exit(1);}
21110 variable14 = variable2 /*nodearraylist7*/;
21111 variable15 = TAG_Bool(( variable14 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21112 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction263___action, LOCATE_parser, 10876); nit_exit(1);}
21113 variable16 = NEW_ACallReassignExpr_parser_prod___ACallReassignExpr___init_acallreassignexpr( variable10 /*pexprnode2*/, variable11 /*tidnode3*/, variable9 /*listnode5*/, variable13 /*passignopnode6*/, variable14 /*pexprnode7*/); /*new ACallReassignExpr*/
21114 variable15 = variable16;
21115 variable1 = variable15 /*pexprnode1*/ /*node_list=*/;
21116 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
21117 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
21118 tracehead = trace.prev;
21119 return;
21120 }
21121 void parser___ReduceAction263___init(val_t self, int* init_table) {
21122 struct trace_t trace = {NULL, NULL, 10887, LOCATE_parser___ReduceAction263___init};
21123 trace.prev = tracehead; tracehead = &trace;
21124 trace.file = LOCATE_parser;
21125 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction263].i]) return;
21126 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction263].i] = 1;
21127 tracehead = trace.prev;
21128 return;
21129 }
21130 void parser___ReduceAction264___action(val_t self, val_t param0) {
21131 struct trace_t trace = {NULL, NULL, 10891, LOCATE_parser___ReduceAction264___action};
21132 val_t variable0;
21133 val_t variable1;
21134 val_t variable2;
21135 val_t variable3;
21136 val_t variable4;
21137 val_t variable5;
21138 val_t variable6;
21139 val_t variable7;
21140 val_t variable8;
21141 val_t variable9;
21142 val_t variable10;
21143 val_t variable11;
21144 val_t variable12;
21145 val_t variable13;
21146 trace.prev = tracehead; tracehead = &trace;
21147 trace.file = LOCATE_parser;
21148 variable0 = param0;
21149 variable1 = NIT_NULL /*null*/;
21150 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21151 variable2 = variable3;
21152 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21153 variable3 = variable4;
21154 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21155 variable4 = variable5;
21156 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21157 variable5 = variable6;
21158 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
21159 variable6 = variable7;
21160 variable8 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
21161 variable7 = variable8;
21162 variable8 = variable5 /*nodearraylist1*/;
21163 variable9 = TAG_Bool(( variable8 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable8 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
21164 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction264___action, LOCATE_parser, 10902); nit_exit(1);}
21165 variable9 = variable4 /*nodearraylist2*/;
21166 variable10 = TAG_Bool(( variable9 /*listnode4*/==NIT_NULL) || VAL_ISA( variable9 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
21167 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction264___action, LOCATE_parser, 10904); nit_exit(1);}
21168 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode4*/ == NIT_NULL /*null*/) || (( variable9 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
21169 if (UNTAG_Bool(variable10)) { /*if*/
21170 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode5*/) /*AbstractArray::is_empty*/;
21171 if (UNTAG_Bool(variable10)) { /*if*/
21172 variable6 = variable9 /*listnode4*/ /*listnode5=*/;
21173 } else { /*if*/
21174 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode5*/, variable9 /*listnode4*/) /*IndexedCollection::append*/;
21175 }
21176 }
21177 variable10 = variable3 /*nodearraylist3*/;
21178 variable11 = TAG_Bool(( variable10 /*passignopnode6*/==NIT_NULL) || VAL_ISA( variable10 /*passignopnode6*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/;
21179 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction264___action, LOCATE_parser, 10913); nit_exit(1);}
21180 variable11 = variable2 /*nodearraylist4*/;
21181 variable12 = TAG_Bool(( variable11 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21182 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction264___action, LOCATE_parser, 10915); nit_exit(1);}
21183 variable13 = NEW_ACallReassignExpr_parser_prod___ACallReassignExpr___init_acallreassignexpr( variable7 /*pexprnode2*/, variable8 /*tidnode3*/, variable6 /*listnode5*/, variable10 /*passignopnode6*/, variable11 /*pexprnode7*/); /*new ACallReassignExpr*/
21184 variable12 = variable13;
21185 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
21186 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
21187 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
21188 tracehead = trace.prev;
21189 return;
21190 }
21191 void parser___ReduceAction264___init(val_t self, int* init_table) {
21192 struct trace_t trace = {NULL, NULL, 10926, LOCATE_parser___ReduceAction264___init};
21193 trace.prev = tracehead; tracehead = &trace;
21194 trace.file = LOCATE_parser;
21195 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction264].i]) return;
21196 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction264].i] = 1;
21197 tracehead = trace.prev;
21198 return;
21199 }
21200 void parser___ReduceAction265___action(val_t self, val_t param0) {
21201 struct trace_t trace = {NULL, NULL, 10930, LOCATE_parser___ReduceAction265___action};
21202 val_t variable0;
21203 val_t variable1;
21204 val_t variable2;
21205 val_t variable3;
21206 val_t variable4;
21207 val_t variable5;
21208 val_t variable6;
21209 val_t variable7;
21210 val_t variable8;
21211 val_t variable9;
21212 val_t variable10;
21213 val_t variable11;
21214 val_t variable12;
21215 trace.prev = tracehead; tracehead = &trace;
21216 trace.file = LOCATE_parser;
21217 variable0 = param0;
21218 variable1 = NIT_NULL /*null*/;
21219 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21220 variable2 = variable3;
21221 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21222 variable3 = variable4;
21223 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21224 variable4 = variable5;
21225 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21226 variable5 = variable6;
21227 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
21228 variable6 = variable7;
21229 variable7 = variable5 /*nodearraylist1*/;
21230 variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21231 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction265___action, LOCATE_parser, 10939); nit_exit(1);}
21232 variable8 = variable4 /*nodearraylist2*/;
21233 variable9 = TAG_Bool(( variable8 /*listnode3*/==NIT_NULL) || VAL_ISA( variable8 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
21234 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction265___action, LOCATE_parser, 10941); nit_exit(1);}
21235 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode3*/ == NIT_NULL /*null*/) || (( variable8 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
21236 if (UNTAG_Bool(variable9)) { /*if*/
21237 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode4*/) /*AbstractArray::is_empty*/;
21238 if (UNTAG_Bool(variable9)) { /*if*/
21239 variable6 = variable8 /*listnode3*/ /*listnode4=*/;
21240 } else { /*if*/
21241 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode4*/, variable8 /*listnode3*/) /*IndexedCollection::append*/;
21242 }
21243 }
21244 variable9 = variable3 /*nodearraylist3*/;
21245 variable10 = TAG_Bool(( variable9 /*passignopnode5*/==NIT_NULL) || VAL_ISA( variable9 /*passignopnode5*/, COLOR_PAssignOp, ID_PAssignOp)) /*cast PAssignOp*/;
21246 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction265___action, LOCATE_parser, 10950); nit_exit(1);}
21247 variable10 = variable2 /*nodearraylist4*/;
21248 variable11 = TAG_Bool(( variable10 /*pexprnode6*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode6*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21249 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction265___action, LOCATE_parser, 10952); nit_exit(1);}
21250 variable12 = NEW_ABraReassignExpr_parser_prod___ABraReassignExpr___init_abrareassignexpr( variable7 /*pexprnode2*/, variable6 /*listnode4*/, variable9 /*passignopnode5*/, variable10 /*pexprnode6*/); /*new ABraReassignExpr*/
21251 variable11 = variable12;
21252 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
21253 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(29)) /*Parser::go_to*/;
21254 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
21255 tracehead = trace.prev;
21256 return;
21257 }
21258 void parser___ReduceAction265___init(val_t self, int* init_table) {
21259 struct trace_t trace = {NULL, NULL, 10962, LOCATE_parser___ReduceAction265___init};
21260 trace.prev = tracehead; tracehead = &trace;
21261 trace.file = LOCATE_parser;
21262 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction265].i]) return;
21263 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction265].i] = 1;
21264 tracehead = trace.prev;
21265 return;
21266 }
21267 void parser___ReduceAction266___action(val_t self, val_t param0) {
21268 struct trace_t trace = {NULL, NULL, 10966, LOCATE_parser___ReduceAction266___action};
21269 val_t variable0;
21270 val_t variable1;
21271 val_t variable2;
21272 val_t variable3;
21273 val_t variable4;
21274 val_t variable5;
21275 trace.prev = tracehead; tracehead = &trace;
21276 trace.file = LOCATE_parser;
21277 variable0 = param0;
21278 variable1 = NIT_NULL /*null*/;
21279 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21280 variable2 = variable3;
21281 variable3 = variable2 /*nodearraylist1*/;
21282 variable4 = TAG_Bool(( variable3 /*tpluseqnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tpluseqnode2*/, COLOR_TPluseq, ID_TPluseq)) /*cast TPluseq*/;
21283 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction266___action, LOCATE_parser, 10971); nit_exit(1);}
21284 variable5 = NEW_APlusAssignOp_parser_prod___APlusAssignOp___init_aplusassignop( variable3 /*tpluseqnode2*/); /*new APlusAssignOp*/
21285 variable4 = variable5;
21286 variable1 = variable4 /*passignopnode1*/ /*node_list=*/;
21287 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(30)) /*Parser::go_to*/;
21288 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
21289 tracehead = trace.prev;
21290 return;
21291 }
21292 void parser___ReduceAction266___init(val_t self, int* init_table) {
21293 struct trace_t trace = {NULL, NULL, 10978, LOCATE_parser___ReduceAction266___init};
21294 trace.prev = tracehead; tracehead = &trace;
21295 trace.file = LOCATE_parser;
21296 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction266].i]) return;
21297 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction266].i] = 1;
21298 tracehead = trace.prev;
21299 return;
21300 }
21301 void parser___ReduceAction267___action(val_t self, val_t param0) {
21302 struct trace_t trace = {NULL, NULL, 10982, LOCATE_parser___ReduceAction267___action};
21303 val_t variable0;
21304 val_t variable1;
21305 val_t variable2;
21306 val_t variable3;
21307 val_t variable4;
21308 val_t variable5;
21309 trace.prev = tracehead; tracehead = &trace;
21310 trace.file = LOCATE_parser;
21311 variable0 = param0;
21312 variable1 = NIT_NULL /*null*/;
21313 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21314 variable2 = variable3;
21315 variable3 = variable2 /*nodearraylist1*/;
21316 variable4 = TAG_Bool(( variable3 /*tminuseqnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tminuseqnode2*/, COLOR_TMinuseq, ID_TMinuseq)) /*cast TMinuseq*/;
21317 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction267___action, LOCATE_parser, 10987); nit_exit(1);}
21318 variable5 = NEW_AMinusAssignOp_parser_prod___AMinusAssignOp___init_aminusassignop( variable3 /*tminuseqnode2*/); /*new AMinusAssignOp*/
21319 variable4 = variable5;
21320 variable1 = variable4 /*passignopnode1*/ /*node_list=*/;
21321 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(30)) /*Parser::go_to*/;
21322 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
21323 tracehead = trace.prev;
21324 return;
21325 }
21326 void parser___ReduceAction267___init(val_t self, int* init_table) {
21327 struct trace_t trace = {NULL, NULL, 10994, LOCATE_parser___ReduceAction267___init};
21328 trace.prev = tracehead; tracehead = &trace;
21329 trace.file = LOCATE_parser;
21330 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction267].i]) return;
21331 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction267].i] = 1;
21332 tracehead = trace.prev;
21333 return;
21334 }
21335 void parser___ReduceAction268___action(val_t self, val_t param0) {
21336 struct trace_t trace = {NULL, NULL, 10998, LOCATE_parser___ReduceAction268___action};
21337 val_t variable0;
21338 val_t variable1;
21339 val_t variable2;
21340 val_t variable3;
21341 val_t variable4;
21342 val_t variable5;
21343 val_t variable6;
21344 val_t variable7;
21345 trace.prev = tracehead; tracehead = &trace;
21346 trace.file = LOCATE_parser;
21347 variable0 = param0;
21348 variable1 = NIT_NULL /*null*/;
21349 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21350 variable2 = variable3;
21351 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21352 variable3 = variable4;
21353 variable4 = variable3 /*nodearraylist1*/;
21354 variable5 = TAG_Bool(( variable4 /*tkwdonode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwdonode2*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
21355 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction268___action, LOCATE_parser, 11004); nit_exit(1);}
21356 variable5 = variable2 /*nodearraylist2*/;
21357 variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21358 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction268___action, LOCATE_parser, 11006); nit_exit(1);}
21359 variable7 = NEW_ADoExpr_parser_prod___ADoExpr___init_adoexpr( variable4 /*tkwdonode2*/, variable5 /*pexprnode3*/); /*new ADoExpr*/
21360 variable6 = variable7;
21361 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
21362 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(31)) /*Parser::go_to*/;
21363 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
21364 tracehead = trace.prev;
21365 return;
21366 }
21367 void parser___ReduceAction268___init(val_t self, int* init_table) {
21368 struct trace_t trace = {NULL, NULL, 11014, LOCATE_parser___ReduceAction268___init};
21369 trace.prev = tracehead; tracehead = &trace;
21370 trace.file = LOCATE_parser;
21371 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction268].i]) return;
21372 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction268].i] = 1;
21373 tracehead = trace.prev;
21374 return;
21375 }
21376 void parser___ReduceAction269___action(val_t self, val_t param0) {
21377 struct trace_t trace = {NULL, NULL, 11018, LOCATE_parser___ReduceAction269___action};
21378 val_t variable0;
21379 val_t variable1;
21380 val_t variable2;
21381 val_t variable3;
21382 val_t variable4;
21383 val_t variable5;
21384 val_t variable6;
21385 val_t variable7;
21386 val_t variable8;
21387 val_t variable9;
21388 val_t variable10;
21389 val_t variable11;
21390 val_t variable12;
21391 val_t variable13;
21392 val_t variable14;
21393 val_t variable15;
21394 trace.prev = tracehead; tracehead = &trace;
21395 trace.file = LOCATE_parser;
21396 variable0 = param0;
21397 variable1 = NIT_NULL /*null*/;
21398 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21399 variable2 = variable3;
21400 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21401 variable3 = variable4;
21402 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21403 variable4 = variable5;
21404 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21405 variable5 = variable6;
21406 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21407 variable6 = variable7;
21408 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21409 variable7 = variable8;
21410 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21411 variable8 = variable9;
21412 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21413 variable9 = variable10;
21414 variable10 = variable9 /*nodearraylist1*/;
21415 variable11 = TAG_Bool(( variable10 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
21416 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction269___action, LOCATE_parser, 11030); nit_exit(1);}
21417 variable11 = variable7 /*nodearraylist3*/;
21418 variable12 = TAG_Bool(( variable11 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21419 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction269___action, LOCATE_parser, 11032); nit_exit(1);}
21420 variable12 = variable4 /*nodearraylist6*/;
21421 variable13 = TAG_Bool(( variable12 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21422 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction269___action, LOCATE_parser, 11034); nit_exit(1);}
21423 variable13 = variable2 /*nodearraylist8*/;
21424 variable14 = TAG_Bool(( variable13 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21425 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction269___action, LOCATE_parser, 11036); nit_exit(1);}
21426 variable15 = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr( variable10 /*tkwifnode2*/, variable11 /*pexprnode3*/, variable12 /*pexprnode4*/, variable13 /*pexprnode5*/); /*new AIfExpr*/
21427 variable14 = variable15;
21428 variable1 = variable14 /*pexprnode1*/ /*node_list=*/;
21429 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/;
21430 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
21431 tracehead = trace.prev;
21432 return;
21433 }
21434 void parser___ReduceAction269___init(val_t self, int* init_table) {
21435 struct trace_t trace = {NULL, NULL, 11046, LOCATE_parser___ReduceAction269___init};
21436 trace.prev = tracehead; tracehead = &trace;
21437 trace.file = LOCATE_parser;
21438 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction269].i]) return;
21439 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction269].i] = 1;
21440 tracehead = trace.prev;
21441 return;
21442 }
21443 void parser___ReduceAction270___action(val_t self, val_t param0) {
21444 struct trace_t trace = {NULL, NULL, 11050, LOCATE_parser___ReduceAction270___action};
21445 val_t variable0;
21446 val_t variable1;
21447 val_t variable2;
21448 val_t variable3;
21449 val_t variable4;
21450 val_t variable5;
21451 val_t variable6;
21452 val_t variable7;
21453 val_t variable8;
21454 val_t variable9;
21455 val_t variable10;
21456 val_t variable11;
21457 val_t variable12;
21458 trace.prev = tracehead; tracehead = &trace;
21459 trace.file = LOCATE_parser;
21460 variable0 = param0;
21461 variable1 = NIT_NULL /*null*/;
21462 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21463 variable2 = variable3;
21464 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21465 variable3 = variable4;
21466 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21467 variable4 = variable5;
21468 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21469 variable5 = variable6;
21470 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21471 variable6 = variable7;
21472 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21473 variable7 = variable8;
21474 variable8 = variable7 /*nodearraylist1*/;
21475 variable9 = TAG_Bool(( variable8 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
21476 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction270___action, LOCATE_parser, 11060); nit_exit(1);}
21477 variable9 = variable5 /*nodearraylist3*/;
21478 variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21479 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction270___action, LOCATE_parser, 11062); nit_exit(1);}
21480 variable10 = variable2 /*nodearraylist6*/;
21481 variable11 = TAG_Bool(( variable10 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21482 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction270___action, LOCATE_parser, 11064); nit_exit(1);}
21483 variable12 = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr( variable8 /*tkwifnode2*/, variable9 /*pexprnode3*/, variable10 /*pexprnode4*/, NIT_NULL /*null*/); /*new AIfExpr*/
21484 variable11 = variable12;
21485 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
21486 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/;
21487 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
21488 tracehead = trace.prev;
21489 return;
21490 }
21491 void parser___ReduceAction270___init(val_t self, int* init_table) {
21492 struct trace_t trace = {NULL, NULL, 11074, LOCATE_parser___ReduceAction270___init};
21493 trace.prev = tracehead; tracehead = &trace;
21494 trace.file = LOCATE_parser;
21495 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction270].i]) return;
21496 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction270].i] = 1;
21497 tracehead = trace.prev;
21498 return;
21499 }
21500 void parser___ReduceAction271___action(val_t self, val_t param0) {
21501 struct trace_t trace = {NULL, NULL, 11078, LOCATE_parser___ReduceAction271___action};
21502 val_t variable0;
21503 val_t variable1;
21504 val_t variable2;
21505 val_t variable3;
21506 val_t variable4;
21507 val_t variable5;
21508 val_t variable6;
21509 val_t variable7;
21510 val_t variable8;
21511 val_t variable9;
21512 val_t variable10;
21513 val_t variable11;
21514 val_t variable12;
21515 val_t variable13;
21516 val_t variable14;
21517 val_t variable15;
21518 val_t variable16;
21519 val_t variable17;
21520 val_t variable18;
21521 trace.prev = tracehead; tracehead = &trace;
21522 trace.file = LOCATE_parser;
21523 variable0 = param0;
21524 variable1 = NIT_NULL /*null*/;
21525 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21526 variable2 = variable3;
21527 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21528 variable3 = variable4;
21529 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21530 variable4 = variable5;
21531 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21532 variable5 = variable6;
21533 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21534 variable6 = variable7;
21535 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21536 variable7 = variable8;
21537 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21538 variable8 = variable9;
21539 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21540 variable9 = variable10;
21541 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21542 variable10 = variable11;
21543 variable11 = variable10 /*nodearraylist1*/;
21544 variable12 = TAG_Bool(( variable11 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable11 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
21545 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction271___action, LOCATE_parser, 11091); nit_exit(1);}
21546 variable12 = variable8 /*nodearraylist3*/;
21547 variable13 = TAG_Bool(( variable12 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21548 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction271___action, LOCATE_parser, 11093); nit_exit(1);}
21549 variable14 = NEW_Array_array___Array___init(); /*new Array[Object]*/
21550 variable13 = variable14;
21551 variable14 = variable4 /*nodearraylist7*/;
21552 variable15 = TAG_Bool(( variable14 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21553 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction271___action, LOCATE_parser, 11096); nit_exit(1);}
21554 variable15 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable14 /*pexprnode5*/ == NIT_NULL /*null*/) || (( variable14 /*pexprnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable14 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable14 /*pexprnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable14 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))( variable14 /*pexprnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
21555 if (UNTAG_Bool(variable15)) { /*if*/
21556 ((array___AbstractArray___add_t)CALL( variable13 /*listnode6*/,COLOR_abstract_collection___SimpleCollection___add))( variable13 /*listnode6*/, variable14 /*pexprnode5*/) /*AbstractArray::add*/;
21557 }
21558 variable16 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable13 /*listnode6*/); /*new ABlockExpr*/
21559 variable15 = variable16;
21560 variable16 = variable2 /*nodearraylist9*/;
21561 variable17 = TAG_Bool(( variable16 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21562 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction271___action, LOCATE_parser, 11104); nit_exit(1);}
21563 variable18 = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr( variable11 /*tkwifnode2*/, variable12 /*pexprnode3*/, variable15 /*pexprnode4*/, variable16 /*pexprnode7*/); /*new AIfExpr*/
21564 variable17 = variable18;
21565 variable1 = variable17 /*pexprnode1*/ /*node_list=*/;
21566 variable18 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/;
21567 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable18, variable1 /*node_list*/) /*Parser::push*/;
21568 tracehead = trace.prev;
21569 return;
21570 }
21571 void parser___ReduceAction271___init(val_t self, int* init_table) {
21572 struct trace_t trace = {NULL, NULL, 11114, LOCATE_parser___ReduceAction271___init};
21573 trace.prev = tracehead; tracehead = &trace;
21574 trace.file = LOCATE_parser;
21575 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction271].i]) return;
21576 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction271].i] = 1;
21577 tracehead = trace.prev;
21578 return;
21579 }
21580 void parser___ReduceAction272___action(val_t self, val_t param0) {
21581 struct trace_t trace = {NULL, NULL, 11118, LOCATE_parser___ReduceAction272___action};
21582 val_t variable0;
21583 val_t variable1;
21584 val_t variable2;
21585 val_t variable3;
21586 val_t variable4;
21587 val_t variable5;
21588 val_t variable6;
21589 val_t variable7;
21590 val_t variable8;
21591 val_t variable9;
21592 val_t variable10;
21593 val_t variable11;
21594 val_t variable12;
21595 val_t variable13;
21596 val_t variable14;
21597 val_t variable15;
21598 val_t variable16;
21599 val_t variable17;
21600 val_t variable18;
21601 val_t variable19;
21602 val_t variable20;
21603 trace.prev = tracehead; tracehead = &trace;
21604 trace.file = LOCATE_parser;
21605 variable0 = param0;
21606 variable1 = NIT_NULL /*null*/;
21607 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21608 variable2 = variable3;
21609 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21610 variable3 = variable4;
21611 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21612 variable4 = variable5;
21613 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21614 variable5 = variable6;
21615 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21616 variable6 = variable7;
21617 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21618 variable7 = variable8;
21619 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21620 variable8 = variable9;
21621 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21622 variable9 = variable10;
21623 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21624 variable10 = variable11;
21625 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21626 variable11 = variable12;
21627 variable12 = variable11 /*nodearraylist1*/;
21628 variable13 = TAG_Bool(( variable12 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable12 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
21629 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction272___action, LOCATE_parser, 11132); nit_exit(1);}
21630 variable13 = variable9 /*nodearraylist3*/;
21631 variable14 = TAG_Bool(( variable13 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21632 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction272___action, LOCATE_parser, 11134); nit_exit(1);}
21633 variable15 = NEW_Array_array___Array___init(); /*new Array[Object]*/
21634 variable14 = variable15;
21635 variable15 = variable5 /*nodearraylist7*/;
21636 variable16 = TAG_Bool(( variable15 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable15 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21637 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction272___action, LOCATE_parser, 11137); nit_exit(1);}
21638 variable16 = variable4 /*nodearraylist8*/;
21639 variable17 = TAG_Bool(( variable16 /*listnode6*/==NIT_NULL) || VAL_ISA( variable16 /*listnode6*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
21640 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction272___action, LOCATE_parser, 11139); nit_exit(1);}
21641 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable15 /*pexprnode5*/ == NIT_NULL /*null*/) || (( variable15 /*pexprnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable15 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable15 /*pexprnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable15 /*pexprnode5*/,COLOR_kernel___Object_____eqeq))( variable15 /*pexprnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
21642 if (UNTAG_Bool(variable17)) { /*if*/
21643 ((array___AbstractArray___add_t)CALL( variable14 /*listnode7*/,COLOR_abstract_collection___SimpleCollection___add))( variable14 /*listnode7*/, variable15 /*pexprnode5*/) /*AbstractArray::add*/;
21644 }
21645 variable17 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable16 /*listnode6*/ == NIT_NULL /*null*/) || (( variable16 /*listnode6*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable16 /*listnode6*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable16 /*listnode6*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable16 /*listnode6*/,COLOR_kernel___Object_____eqeq))( variable16 /*listnode6*/, NIT_NULL /*null*/) /*Object::==*/)))))));
21646 if (UNTAG_Bool(variable17)) { /*if*/
21647 variable17 = ((array___AbstractArray___is_empty_t)CALL( variable14 /*listnode7*/,COLOR_abstract_collection___Collection___is_empty))( variable14 /*listnode7*/) /*AbstractArray::is_empty*/;
21648 if (UNTAG_Bool(variable17)) { /*if*/
21649 variable14 = variable16 /*listnode6*/ /*listnode7=*/;
21650 } else { /*if*/
21651 ((abstract_collection___IndexedCollection___append_t)CALL( variable14 /*listnode7*/,COLOR_abstract_collection___IndexedCollection___append))( variable14 /*listnode7*/, variable16 /*listnode6*/) /*IndexedCollection::append*/;
21652 }
21653 }
21654 variable18 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable14 /*listnode7*/); /*new ABlockExpr*/
21655 variable17 = variable18;
21656 variable18 = variable2 /*nodearraylist10*/;
21657 variable19 = TAG_Bool(( variable18 /*pexprnode8*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode8*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21658 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction272___action, LOCATE_parser, 11154); nit_exit(1);}
21659 variable20 = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr( variable12 /*tkwifnode2*/, variable13 /*pexprnode3*/, variable17 /*pexprnode4*/, variable18 /*pexprnode8*/); /*new AIfExpr*/
21660 variable19 = variable20;
21661 variable1 = variable19 /*pexprnode1*/ /*node_list=*/;
21662 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/;
21663 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
21664 tracehead = trace.prev;
21665 return;
21666 }
21667 void parser___ReduceAction272___init(val_t self, int* init_table) {
21668 struct trace_t trace = {NULL, NULL, 11164, LOCATE_parser___ReduceAction272___init};
21669 trace.prev = tracehead; tracehead = &trace;
21670 trace.file = LOCATE_parser;
21671 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction272].i]) return;
21672 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction272].i] = 1;
21673 tracehead = trace.prev;
21674 return;
21675 }
21676 void parser___ReduceAction273___action(val_t self, val_t param0) {
21677 struct trace_t trace = {NULL, NULL, 11168, LOCATE_parser___ReduceAction273___action};
21678 val_t variable0;
21679 val_t variable1;
21680 val_t variable2;
21681 val_t variable3;
21682 val_t variable4;
21683 val_t variable5;
21684 val_t variable6;
21685 val_t variable7;
21686 val_t variable8;
21687 val_t variable9;
21688 val_t variable10;
21689 val_t variable11;
21690 val_t variable12;
21691 trace.prev = tracehead; tracehead = &trace;
21692 trace.file = LOCATE_parser;
21693 variable0 = param0;
21694 variable1 = NIT_NULL /*null*/;
21695 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21696 variable2 = variable3;
21697 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21698 variable3 = variable4;
21699 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21700 variable4 = variable5;
21701 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21702 variable5 = variable6;
21703 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21704 variable6 = variable7;
21705 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21706 variable7 = variable8;
21707 variable8 = variable7 /*nodearraylist1*/;
21708 variable9 = TAG_Bool(( variable8 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
21709 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction273___action, LOCATE_parser, 11178); nit_exit(1);}
21710 variable9 = variable5 /*nodearraylist3*/;
21711 variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21712 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction273___action, LOCATE_parser, 11180); nit_exit(1);}
21713 variable10 = variable2 /*nodearraylist6*/;
21714 variable11 = TAG_Bool(( variable10 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21715 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction273___action, LOCATE_parser, 11182); nit_exit(1);}
21716 variable12 = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr( variable8 /*tkwifnode2*/, variable9 /*pexprnode3*/, NIT_NULL /*null*/, variable10 /*pexprnode5*/); /*new AIfExpr*/
21717 variable11 = variable12;
21718 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
21719 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/;
21720 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
21721 tracehead = trace.prev;
21722 return;
21723 }
21724 void parser___ReduceAction273___init(val_t self, int* init_table) {
21725 struct trace_t trace = {NULL, NULL, 11192, LOCATE_parser___ReduceAction273___init};
21726 trace.prev = tracehead; tracehead = &trace;
21727 trace.file = LOCATE_parser;
21728 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction273].i]) return;
21729 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction273].i] = 1;
21730 tracehead = trace.prev;
21731 return;
21732 }
21733 void parser___ReduceAction274___action(val_t self, val_t param0) {
21734 struct trace_t trace = {NULL, NULL, 11196, LOCATE_parser___ReduceAction274___action};
21735 val_t variable0;
21736 val_t variable1;
21737 val_t variable2;
21738 val_t variable3;
21739 val_t variable4;
21740 val_t variable5;
21741 val_t variable6;
21742 val_t variable7;
21743 val_t variable8;
21744 val_t variable9;
21745 val_t variable10;
21746 val_t variable11;
21747 val_t variable12;
21748 val_t variable13;
21749 trace.prev = tracehead; tracehead = &trace;
21750 trace.file = LOCATE_parser;
21751 variable0 = param0;
21752 variable1 = NIT_NULL /*null*/;
21753 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21754 variable2 = variable3;
21755 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21756 variable3 = variable4;
21757 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21758 variable4 = variable5;
21759 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21760 variable5 = variable6;
21761 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21762 variable6 = variable7;
21763 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21764 variable7 = variable8;
21765 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21766 variable8 = variable9;
21767 variable9 = variable8 /*nodearraylist1*/;
21768 variable10 = TAG_Bool(( variable9 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable9 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
21769 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction274___action, LOCATE_parser, 11207); nit_exit(1);}
21770 variable10 = variable6 /*nodearraylist3*/;
21771 variable11 = TAG_Bool(( variable10 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable10 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21772 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction274___action, LOCATE_parser, 11209); nit_exit(1);}
21773 variable11 = variable2 /*nodearraylist7*/;
21774 variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21775 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction274___action, LOCATE_parser, 11211); nit_exit(1);}
21776 variable13 = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr( variable9 /*tkwifnode2*/, variable10 /*pexprnode3*/, NIT_NULL /*null*/, variable11 /*pexprnode5*/); /*new AIfExpr*/
21777 variable12 = variable13;
21778 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
21779 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(32)) /*Parser::go_to*/;
21780 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
21781 tracehead = trace.prev;
21782 return;
21783 }
21784 void parser___ReduceAction274___init(val_t self, int* init_table) {
21785 struct trace_t trace = {NULL, NULL, 11221, LOCATE_parser___ReduceAction274___init};
21786 trace.prev = tracehead; tracehead = &trace;
21787 trace.file = LOCATE_parser;
21788 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction274].i]) return;
21789 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction274].i] = 1;
21790 tracehead = trace.prev;
21791 return;
21792 }
21793 void parser___ReduceAction275___action(val_t self, val_t param0) {
21794 struct trace_t trace = {NULL, NULL, 11225, LOCATE_parser___ReduceAction275___action};
21795 val_t variable0;
21796 val_t variable1;
21797 val_t variable2;
21798 val_t variable3;
21799 val_t variable4;
21800 val_t variable5;
21801 trace.prev = tracehead; tracehead = &trace;
21802 trace.file = LOCATE_parser;
21803 variable0 = param0;
21804 variable1 = NIT_NULL /*null*/;
21805 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21806 variable2 = variable3;
21807 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21808 variable3 = variable4;
21809 variable4 = variable2 /*nodearraylist2*/;
21810 variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21811 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction275___action, LOCATE_parser, 11231); nit_exit(1);}
21812 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
21813 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(33)) /*Parser::go_to*/;
21814 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
21815 tracehead = trace.prev;
21816 return;
21817 }
21818 void parser___ReduceAction275___init(val_t self, int* init_table) {
21819 struct trace_t trace = {NULL, NULL, 11235, LOCATE_parser___ReduceAction275___init};
21820 trace.prev = tracehead; tracehead = &trace;
21821 trace.file = LOCATE_parser;
21822 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction275].i]) return;
21823 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction275].i] = 1;
21824 tracehead = trace.prev;
21825 return;
21826 }
21827 void parser___ReduceAction276___action(val_t self, val_t param0) {
21828 struct trace_t trace = {NULL, NULL, 11239, LOCATE_parser___ReduceAction276___action};
21829 val_t variable0;
21830 val_t variable1;
21831 val_t variable2;
21832 val_t variable3;
21833 trace.prev = tracehead; tracehead = &trace;
21834 trace.file = LOCATE_parser;
21835 variable0 = param0;
21836 variable1 = NIT_NULL /*null*/;
21837 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21838 variable2 = variable3;
21839 variable1 = NIT_NULL /*null*/ /*node_list=*/;
21840 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(33)) /*Parser::go_to*/;
21841 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
21842 tracehead = trace.prev;
21843 return;
21844 }
21845 void parser___ReduceAction276___init(val_t self, int* init_table) {
21846 struct trace_t trace = {NULL, NULL, 11246, LOCATE_parser___ReduceAction276___init};
21847 trace.prev = tracehead; tracehead = &trace;
21848 trace.file = LOCATE_parser;
21849 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction276].i]) return;
21850 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction276].i] = 1;
21851 tracehead = trace.prev;
21852 return;
21853 }
21854 void parser___ReduceAction277___action(val_t self, val_t param0) {
21855 struct trace_t trace = {NULL, NULL, 11250, LOCATE_parser___ReduceAction277___action};
21856 val_t variable0;
21857 val_t variable1;
21858 val_t variable2;
21859 val_t variable3;
21860 val_t variable4;
21861 val_t variable5;
21862 val_t variable6;
21863 val_t variable7;
21864 val_t variable8;
21865 val_t variable9;
21866 val_t variable10;
21867 val_t variable11;
21868 val_t variable12;
21869 val_t variable13;
21870 trace.prev = tracehead; tracehead = &trace;
21871 trace.file = LOCATE_parser;
21872 variable0 = param0;
21873 variable1 = NIT_NULL /*null*/;
21874 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21875 variable2 = variable3;
21876 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21877 variable3 = variable4;
21878 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21879 variable4 = variable5;
21880 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21881 variable5 = variable6;
21882 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21883 variable6 = variable7;
21884 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21885 variable7 = variable8;
21886 variable8 = variable7 /*nodearraylist1*/;
21887 variable9 = TAG_Bool(( variable8 /*tkwwhilenode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwwhilenode2*/, COLOR_TKwwhile, ID_TKwwhile)) /*cast TKwwhile*/;
21888 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction277___action, LOCATE_parser, 11260); nit_exit(1);}
21889 variable9 = variable5 /*nodearraylist3*/;
21890 variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21891 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction277___action, LOCATE_parser, 11262); nit_exit(1);}
21892 variable10 = variable3 /*nodearraylist5*/;
21893 variable11 = TAG_Bool(( variable10 /*tkwdonode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwdonode4*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
21894 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction277___action, LOCATE_parser, 11264); nit_exit(1);}
21895 variable11 = variable2 /*nodearraylist6*/;
21896 variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21897 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction277___action, LOCATE_parser, 11266); nit_exit(1);}
21898 variable13 = NEW_AWhileExpr_parser_prod___AWhileExpr___init_awhileexpr( variable8 /*tkwwhilenode2*/, variable9 /*pexprnode3*/, variable10 /*tkwdonode4*/, variable11 /*pexprnode5*/); /*new AWhileExpr*/
21899 variable12 = variable13;
21900 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
21901 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(34)) /*Parser::go_to*/;
21902 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
21903 tracehead = trace.prev;
21904 return;
21905 }
21906 void parser___ReduceAction277___init(val_t self, int* init_table) {
21907 struct trace_t trace = {NULL, NULL, 11276, LOCATE_parser___ReduceAction277___init};
21908 trace.prev = tracehead; tracehead = &trace;
21909 trace.file = LOCATE_parser;
21910 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction277].i]) return;
21911 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction277].i] = 1;
21912 tracehead = trace.prev;
21913 return;
21914 }
21915 void parser___ReduceAction278___action(val_t self, val_t param0) {
21916 struct trace_t trace = {NULL, NULL, 11280, LOCATE_parser___ReduceAction278___action};
21917 val_t variable0;
21918 val_t variable1;
21919 val_t variable2;
21920 val_t variable3;
21921 val_t variable4;
21922 val_t variable5;
21923 val_t variable6;
21924 val_t variable7;
21925 val_t variable8;
21926 val_t variable9;
21927 val_t variable10;
21928 trace.prev = tracehead; tracehead = &trace;
21929 trace.file = LOCATE_parser;
21930 variable0 = param0;
21931 variable1 = NIT_NULL /*null*/;
21932 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21933 variable2 = variable3;
21934 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21935 variable3 = variable4;
21936 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21937 variable4 = variable5;
21938 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21939 variable5 = variable6;
21940 variable6 = variable5 /*nodearraylist1*/;
21941 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21942 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction278___action, LOCATE_parser, 11288); nit_exit(1);}
21943 variable7 = variable3 /*nodearraylist3*/;
21944 variable8 = TAG_Bool(( variable7 /*tkwdonode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwdonode3*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
21945 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction278___action, LOCATE_parser, 11290); nit_exit(1);}
21946 variable8 = variable2 /*nodearraylist4*/;
21947 variable9 = TAG_Bool(( variable8 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
21948 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction278___action, LOCATE_parser, 11292); nit_exit(1);}
21949 variable10 = NEW_AForExpr_parser_prod___AForExpr___init_aforexpr( variable6 /*pexprnode2*/, variable7 /*tkwdonode3*/, variable8 /*pexprnode4*/); /*new AForExpr*/
21950 variable9 = variable10;
21951 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
21952 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(35)) /*Parser::go_to*/;
21953 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
21954 tracehead = trace.prev;
21955 return;
21956 }
21957 void parser___ReduceAction278___init(val_t self, int* init_table) {
21958 struct trace_t trace = {NULL, NULL, 11301, LOCATE_parser___ReduceAction278___init};
21959 trace.prev = tracehead; tracehead = &trace;
21960 trace.file = LOCATE_parser;
21961 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction278].i]) return;
21962 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction278].i] = 1;
21963 tracehead = trace.prev;
21964 return;
21965 }
21966 void parser___ReduceAction279___action(val_t self, val_t param0) {
21967 struct trace_t trace = {NULL, NULL, 11305, LOCATE_parser___ReduceAction279___action};
21968 val_t variable0;
21969 val_t variable1;
21970 val_t variable2;
21971 val_t variable3;
21972 val_t variable4;
21973 val_t variable5;
21974 val_t variable6;
21975 val_t variable7;
21976 val_t variable8;
21977 val_t variable9;
21978 val_t variable10;
21979 val_t variable11;
21980 val_t variable12;
21981 val_t variable13;
21982 trace.prev = tracehead; tracehead = &trace;
21983 trace.file = LOCATE_parser;
21984 variable0 = param0;
21985 variable1 = NIT_NULL /*null*/;
21986 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21987 variable2 = variable3;
21988 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21989 variable3 = variable4;
21990 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21991 variable4 = variable5;
21992 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21993 variable5 = variable6;
21994 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21995 variable6 = variable7;
21996 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21997 variable7 = variable8;
21998 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
21999 variable8 = variable9;
22000 variable9 = variable8 /*nodearraylist1*/;
22001 variable10 = TAG_Bool(( variable9 /*tkwfornode2*/==NIT_NULL) || VAL_ISA( variable9 /*tkwfornode2*/, COLOR_TKwfor, ID_TKwfor)) /*cast TKwfor*/;
22002 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction279___action, LOCATE_parser, 11316); nit_exit(1);}
22003 variable10 = variable6 /*nodearraylist3*/;
22004 variable11 = TAG_Bool(( variable10 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable10 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
22005 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction279___action, LOCATE_parser, 11318); nit_exit(1);}
22006 variable11 = variable2 /*nodearraylist7*/;
22007 variable12 = TAG_Bool(( variable11 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22008 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction279___action, LOCATE_parser, 11320); nit_exit(1);}
22009 variable13 = NEW_AForVardeclExpr_parser_prod___AForVardeclExpr___init_aforvardeclexpr( variable9 /*tkwfornode2*/, variable10 /*tidnode3*/, variable11 /*pexprnode4*/); /*new AForVardeclExpr*/
22010 variable12 = variable13;
22011 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
22012 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(36)) /*Parser::go_to*/;
22013 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
22014 tracehead = trace.prev;
22015 return;
22016 }
22017 void parser___ReduceAction279___init(val_t self, int* init_table) {
22018 struct trace_t trace = {NULL, NULL, 11329, LOCATE_parser___ReduceAction279___init};
22019 trace.prev = tracehead; tracehead = &trace;
22020 trace.file = LOCATE_parser;
22021 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction279].i]) return;
22022 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction279].i] = 1;
22023 tracehead = trace.prev;
22024 return;
22025 }
22026 void parser___ReduceAction280___action(val_t self, val_t param0) {
22027 struct trace_t trace = {NULL, NULL, 11333, LOCATE_parser___ReduceAction280___action};
22028 val_t variable0;
22029 val_t variable1;
22030 val_t variable2;
22031 val_t variable3;
22032 val_t variable4;
22033 val_t variable5;
22034 val_t variable6;
22035 val_t variable7;
22036 trace.prev = tracehead; tracehead = &trace;
22037 trace.file = LOCATE_parser;
22038 variable0 = param0;
22039 variable1 = NIT_NULL /*null*/;
22040 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22041 variable2 = variable3;
22042 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22043 variable3 = variable4;
22044 variable4 = variable3 /*nodearraylist1*/;
22045 variable5 = TAG_Bool(( variable4 /*tkwassertnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwassertnode2*/, COLOR_TKwassert, ID_TKwassert)) /*cast TKwassert*/;
22046 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction280___action, LOCATE_parser, 11339); nit_exit(1);}
22047 variable5 = variable2 /*nodearraylist2*/;
22048 variable6 = TAG_Bool(( variable5 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22049 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction280___action, LOCATE_parser, 11341); nit_exit(1);}
22050 variable7 = NEW_AAssertExpr_parser_prod___AAssertExpr___init_aassertexpr( variable4 /*tkwassertnode2*/, NIT_NULL /*null*/, variable5 /*pexprnode4*/); /*new AAssertExpr*/
22051 variable6 = variable7;
22052 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
22053 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(37)) /*Parser::go_to*/;
22054 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
22055 tracehead = trace.prev;
22056 return;
22057 }
22058 void parser___ReduceAction280___init(val_t self, int* init_table) {
22059 struct trace_t trace = {NULL, NULL, 11350, LOCATE_parser___ReduceAction280___init};
22060 trace.prev = tracehead; tracehead = &trace;
22061 trace.file = LOCATE_parser;
22062 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction280].i]) return;
22063 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction280].i] = 1;
22064 tracehead = trace.prev;
22065 return;
22066 }
22067 void parser___ReduceAction281___action(val_t self, val_t param0) {
22068 struct trace_t trace = {NULL, NULL, 11354, LOCATE_parser___ReduceAction281___action};
22069 val_t variable0;
22070 val_t variable1;
22071 val_t variable2;
22072 val_t variable3;
22073 val_t variable4;
22074 val_t variable5;
22075 val_t variable6;
22076 val_t variable7;
22077 val_t variable8;
22078 val_t variable9;
22079 trace.prev = tracehead; tracehead = &trace;
22080 trace.file = LOCATE_parser;
22081 variable0 = param0;
22082 variable1 = NIT_NULL /*null*/;
22083 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22084 variable2 = variable3;
22085 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22086 variable3 = variable4;
22087 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22088 variable4 = variable5;
22089 variable5 = variable4 /*nodearraylist1*/;
22090 variable6 = TAG_Bool(( variable5 /*tkwassertnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwassertnode2*/, COLOR_TKwassert, ID_TKwassert)) /*cast TKwassert*/;
22091 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction281___action, LOCATE_parser, 11361); nit_exit(1);}
22092 variable6 = variable3 /*nodearraylist2*/;
22093 variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
22094 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction281___action, LOCATE_parser, 11363); nit_exit(1);}
22095 variable7 = variable2 /*nodearraylist3*/;
22096 variable8 = TAG_Bool(( variable7 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22097 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction281___action, LOCATE_parser, 11365); nit_exit(1);}
22098 variable9 = NEW_AAssertExpr_parser_prod___AAssertExpr___init_aassertexpr( variable5 /*tkwassertnode2*/, variable6 /*tidnode3*/, variable7 /*pexprnode4*/); /*new AAssertExpr*/
22099 variable8 = variable9;
22100 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22101 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(37)) /*Parser::go_to*/;
22102 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22103 tracehead = trace.prev;
22104 return;
22105 }
22106 void parser___ReduceAction281___init(val_t self, int* init_table) {
22107 struct trace_t trace = {NULL, NULL, 11374, LOCATE_parser___ReduceAction281___init};
22108 trace.prev = tracehead; tracehead = &trace;
22109 trace.file = LOCATE_parser;
22110 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction281].i]) return;
22111 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction281].i] = 1;
22112 tracehead = trace.prev;
22113 return;
22114 }
22115 void parser___ReduceAction282___action(val_t self, val_t param0) {
22116 struct trace_t trace = {NULL, NULL, 11378, LOCATE_parser___ReduceAction282___action};
22117 val_t variable0;
22118 val_t variable1;
22119 val_t variable2;
22120 val_t variable3;
22121 val_t variable4;
22122 val_t variable5;
22123 trace.prev = tracehead; tracehead = &trace;
22124 trace.file = LOCATE_parser;
22125 variable0 = param0;
22126 variable1 = NIT_NULL /*null*/;
22127 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22128 variable2 = variable3;
22129 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22130 variable3 = variable4;
22131 variable4 = variable3 /*nodearraylist1*/;
22132 variable5 = TAG_Bool(( variable4 /*tidnode1*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode1*/, COLOR_TId, ID_TId)) /*cast TId*/;
22133 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction282___action, LOCATE_parser, 11384); nit_exit(1);}
22134 variable1 = variable4 /*tidnode1*/ /*node_list=*/;
22135 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(38)) /*Parser::go_to*/;
22136 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
22137 tracehead = trace.prev;
22138 return;
22139 }
22140 void parser___ReduceAction282___init(val_t self, int* init_table) {
22141 struct trace_t trace = {NULL, NULL, 11388, LOCATE_parser___ReduceAction282___init};
22142 trace.prev = tracehead; tracehead = &trace;
22143 trace.file = LOCATE_parser;
22144 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction282].i]) return;
22145 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction282].i] = 1;
22146 tracehead = trace.prev;
22147 return;
22148 }
22149 void parser___ReduceAction283___action(val_t self, val_t param0) {
22150 struct trace_t trace = {NULL, NULL, 11392, LOCATE_parser___ReduceAction283___action};
22151 val_t variable0;
22152 val_t variable1;
22153 val_t variable2;
22154 val_t variable3;
22155 val_t variable4;
22156 trace.prev = tracehead; tracehead = &trace;
22157 trace.file = LOCATE_parser;
22158 variable0 = param0;
22159 variable1 = NIT_NULL /*null*/;
22160 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22161 variable2 = variable3;
22162 variable3 = variable2 /*nodearraylist1*/;
22163 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22164 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction283___action, LOCATE_parser, 11397); nit_exit(1);}
22165 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
22166 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(39)) /*Parser::go_to*/;
22167 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
22168 tracehead = trace.prev;
22169 return;
22170 }
22171 void parser___ReduceAction283___init(val_t self, int* init_table) {
22172 struct trace_t trace = {NULL, NULL, 11401, LOCATE_parser___ReduceAction283___init};
22173 trace.prev = tracehead; tracehead = &trace;
22174 trace.file = LOCATE_parser;
22175 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction283].i]) return;
22176 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction283].i] = 1;
22177 tracehead = trace.prev;
22178 return;
22179 }
22180 void parser___ReduceAction284___action(val_t self, val_t param0) {
22181 struct trace_t trace = {NULL, NULL, 11405, LOCATE_parser___ReduceAction284___action};
22182 val_t variable0;
22183 val_t variable1;
22184 val_t variable2;
22185 val_t variable3;
22186 val_t variable4;
22187 val_t variable5;
22188 val_t variable6;
22189 val_t variable7;
22190 val_t variable8;
22191 val_t variable9;
22192 val_t variable10;
22193 val_t variable11;
22194 val_t variable12;
22195 val_t variable13;
22196 val_t variable14;
22197 val_t variable15;
22198 val_t variable16;
22199 val_t variable17;
22200 val_t variable18;
22201 val_t variable19;
22202 val_t variable20;
22203 trace.prev = tracehead; tracehead = &trace;
22204 trace.file = LOCATE_parser;
22205 variable0 = param0;
22206 variable1 = NIT_NULL /*null*/;
22207 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22208 variable2 = variable3;
22209 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22210 variable3 = variable4;
22211 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22212 variable4 = variable5;
22213 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22214 variable5 = variable6;
22215 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22216 variable6 = variable7;
22217 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22218 variable7 = variable8;
22219 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22220 variable8 = variable9;
22221 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22222 variable9 = variable10;
22223 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22224 variable10 = variable11;
22225 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22226 variable11 = variable12;
22227 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22228 variable12 = variable13;
22229 variable13 = variable12 /*nodearraylist1*/;
22230 variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
22231 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction284___action, LOCATE_parser, 11420); nit_exit(1);}
22232 variable14 = variable10 /*nodearraylist3*/;
22233 variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22234 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction284___action, LOCATE_parser, 11422); nit_exit(1);}
22235 variable15 = variable8 /*nodearraylist5*/;
22236 variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/;
22237 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction284___action, LOCATE_parser, 11424); nit_exit(1);}
22238 variable16 = variable6 /*nodearraylist7*/;
22239 variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22240 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction284___action, LOCATE_parser, 11426); nit_exit(1);}
22241 variable17 = variable4 /*nodearraylist9*/;
22242 variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/;
22243 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction284___action, LOCATE_parser, 11428); nit_exit(1);}
22244 variable18 = variable2 /*nodearraylist11*/;
22245 variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22246 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction284___action, LOCATE_parser, 11430); nit_exit(1);}
22247 variable20 = NEW_AIfexprExpr_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/
22248 variable19 = variable20;
22249 variable1 = variable19 /*pexprnode1*/ /*node_list=*/;
22250 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(39)) /*Parser::go_to*/;
22251 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
22252 tracehead = trace.prev;
22253 return;
22254 }
22255 void parser___ReduceAction284___init(val_t self, int* init_table) {
22256 struct trace_t trace = {NULL, NULL, 11442, LOCATE_parser___ReduceAction284___init};
22257 trace.prev = tracehead; tracehead = &trace;
22258 trace.file = LOCATE_parser;
22259 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction284].i]) return;
22260 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction284].i] = 1;
22261 tracehead = trace.prev;
22262 return;
22263 }
22264 void parser___ReduceAction285___action(val_t self, val_t param0) {
22265 struct trace_t trace = {NULL, NULL, 11446, LOCATE_parser___ReduceAction285___action};
22266 val_t variable0;
22267 val_t variable1;
22268 val_t variable2;
22269 val_t variable3;
22270 val_t variable4;
22271 trace.prev = tracehead; tracehead = &trace;
22272 trace.file = LOCATE_parser;
22273 variable0 = param0;
22274 variable1 = NIT_NULL /*null*/;
22275 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22276 variable2 = variable3;
22277 variable3 = variable2 /*nodearraylist1*/;
22278 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22279 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction285___action, LOCATE_parser, 11451); nit_exit(1);}
22280 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
22281 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(40)) /*Parser::go_to*/;
22282 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
22283 tracehead = trace.prev;
22284 return;
22285 }
22286 void parser___ReduceAction285___init(val_t self, int* init_table) {
22287 struct trace_t trace = {NULL, NULL, 11455, LOCATE_parser___ReduceAction285___init};
22288 trace.prev = tracehead; tracehead = &trace;
22289 trace.file = LOCATE_parser;
22290 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction285].i]) return;
22291 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction285].i] = 1;
22292 tracehead = trace.prev;
22293 return;
22294 }
22295 void parser___ReduceAction286___action(val_t self, val_t param0) {
22296 struct trace_t trace = {NULL, NULL, 11459, LOCATE_parser___ReduceAction286___action};
22297 val_t variable0;
22298 val_t variable1;
22299 val_t variable2;
22300 val_t variable3;
22301 val_t variable4;
22302 val_t variable5;
22303 val_t variable6;
22304 val_t variable7;
22305 val_t variable8;
22306 val_t variable9;
22307 trace.prev = tracehead; tracehead = &trace;
22308 trace.file = LOCATE_parser;
22309 variable0 = param0;
22310 variable1 = NIT_NULL /*null*/;
22311 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22312 variable2 = variable3;
22313 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22314 variable3 = variable4;
22315 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22316 variable4 = variable5;
22317 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22318 variable5 = variable6;
22319 variable6 = variable5 /*nodearraylist1*/;
22320 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22321 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction286___action, LOCATE_parser, 11467); nit_exit(1);}
22322 variable7 = variable2 /*nodearraylist4*/;
22323 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22324 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction286___action, LOCATE_parser, 11469); nit_exit(1);}
22325 variable9 = NEW_AOrExpr_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/
22326 variable8 = variable9;
22327 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22328 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(40)) /*Parser::go_to*/;
22329 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22330 tracehead = trace.prev;
22331 return;
22332 }
22333 void parser___ReduceAction286___init(val_t self, int* init_table) {
22334 struct trace_t trace = {NULL, NULL, 11477, LOCATE_parser___ReduceAction286___init};
22335 trace.prev = tracehead; tracehead = &trace;
22336 trace.file = LOCATE_parser;
22337 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction286].i]) return;
22338 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction286].i] = 1;
22339 tracehead = trace.prev;
22340 return;
22341 }
22342 void parser___ReduceAction287___action(val_t self, val_t param0) {
22343 struct trace_t trace = {NULL, NULL, 11481, LOCATE_parser___ReduceAction287___action};
22344 val_t variable0;
22345 val_t variable1;
22346 val_t variable2;
22347 val_t variable3;
22348 val_t variable4;
22349 val_t variable5;
22350 val_t variable6;
22351 val_t variable7;
22352 val_t variable8;
22353 val_t variable9;
22354 trace.prev = tracehead; tracehead = &trace;
22355 trace.file = LOCATE_parser;
22356 variable0 = param0;
22357 variable1 = NIT_NULL /*null*/;
22358 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22359 variable2 = variable3;
22360 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22361 variable3 = variable4;
22362 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22363 variable4 = variable5;
22364 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22365 variable5 = variable6;
22366 variable6 = variable5 /*nodearraylist1*/;
22367 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22368 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction287___action, LOCATE_parser, 11489); nit_exit(1);}
22369 variable7 = variable2 /*nodearraylist4*/;
22370 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22371 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction287___action, LOCATE_parser, 11491); nit_exit(1);}
22372 variable9 = NEW_AAndExpr_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/
22373 variable8 = variable9;
22374 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22375 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(40)) /*Parser::go_to*/;
22376 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22377 tracehead = trace.prev;
22378 return;
22379 }
22380 void parser___ReduceAction287___init(val_t self, int* init_table) {
22381 struct trace_t trace = {NULL, NULL, 11499, LOCATE_parser___ReduceAction287___init};
22382 trace.prev = tracehead; tracehead = &trace;
22383 trace.file = LOCATE_parser;
22384 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction287].i]) return;
22385 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction287].i] = 1;
22386 tracehead = trace.prev;
22387 return;
22388 }
22389 void parser___ReduceAction288___action(val_t self, val_t param0) {
22390 struct trace_t trace = {NULL, NULL, 11503, LOCATE_parser___ReduceAction288___action};
22391 val_t variable0;
22392 val_t variable1;
22393 val_t variable2;
22394 val_t variable3;
22395 val_t variable4;
22396 trace.prev = tracehead; tracehead = &trace;
22397 trace.file = LOCATE_parser;
22398 variable0 = param0;
22399 variable1 = NIT_NULL /*null*/;
22400 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22401 variable2 = variable3;
22402 variable3 = variable2 /*nodearraylist1*/;
22403 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22404 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction288___action, LOCATE_parser, 11508); nit_exit(1);}
22405 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
22406 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(41)) /*Parser::go_to*/;
22407 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
22408 tracehead = trace.prev;
22409 return;
22410 }
22411 void parser___ReduceAction288___init(val_t self, int* init_table) {
22412 struct trace_t trace = {NULL, NULL, 11512, LOCATE_parser___ReduceAction288___init};
22413 trace.prev = tracehead; tracehead = &trace;
22414 trace.file = LOCATE_parser;
22415 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction288].i]) return;
22416 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction288].i] = 1;
22417 tracehead = trace.prev;
22418 return;
22419 }
22420 void parser___ReduceAction289___action(val_t self, val_t param0) {
22421 struct trace_t trace = {NULL, NULL, 11516, LOCATE_parser___ReduceAction289___action};
22422 val_t variable0;
22423 val_t variable1;
22424 val_t variable2;
22425 val_t variable3;
22426 val_t variable4;
22427 val_t variable5;
22428 val_t variable6;
22429 val_t variable7;
22430 val_t variable8;
22431 trace.prev = tracehead; tracehead = &trace;
22432 trace.file = LOCATE_parser;
22433 variable0 = param0;
22434 variable1 = NIT_NULL /*null*/;
22435 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22436 variable2 = variable3;
22437 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22438 variable3 = variable4;
22439 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22440 variable4 = variable5;
22441 variable5 = variable4 /*nodearraylist1*/;
22442 variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/;
22443 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction289___action, LOCATE_parser, 11523); nit_exit(1);}
22444 variable6 = variable2 /*nodearraylist3*/;
22445 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22446 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction289___action, LOCATE_parser, 11525); nit_exit(1);}
22447 variable8 = NEW_ANotExpr_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/
22448 variable7 = variable8;
22449 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
22450 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(41)) /*Parser::go_to*/;
22451 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
22452 tracehead = trace.prev;
22453 return;
22454 }
22455 void parser___ReduceAction289___init(val_t self, int* init_table) {
22456 struct trace_t trace = {NULL, NULL, 11533, LOCATE_parser___ReduceAction289___init};
22457 trace.prev = tracehead; tracehead = &trace;
22458 trace.file = LOCATE_parser;
22459 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction289].i]) return;
22460 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction289].i] = 1;
22461 tracehead = trace.prev;
22462 return;
22463 }
22464 void parser___ReduceAction290___action(val_t self, val_t param0) {
22465 struct trace_t trace = {NULL, NULL, 11537, LOCATE_parser___ReduceAction290___action};
22466 val_t variable0;
22467 val_t variable1;
22468 val_t variable2;
22469 val_t variable3;
22470 val_t variable4;
22471 trace.prev = tracehead; tracehead = &trace;
22472 trace.file = LOCATE_parser;
22473 variable0 = param0;
22474 variable1 = NIT_NULL /*null*/;
22475 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22476 variable2 = variable3;
22477 variable3 = variable2 /*nodearraylist1*/;
22478 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22479 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction290___action, LOCATE_parser, 11542); nit_exit(1);}
22480 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
22481 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22482 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
22483 tracehead = trace.prev;
22484 return;
22485 }
22486 void parser___ReduceAction290___init(val_t self, int* init_table) {
22487 struct trace_t trace = {NULL, NULL, 11546, LOCATE_parser___ReduceAction290___init};
22488 trace.prev = tracehead; tracehead = &trace;
22489 trace.file = LOCATE_parser;
22490 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction290].i]) return;
22491 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction290].i] = 1;
22492 tracehead = trace.prev;
22493 return;
22494 }
22495 void parser___ReduceAction291___action(val_t self, val_t param0) {
22496 struct trace_t trace = {NULL, NULL, 11550, LOCATE_parser___ReduceAction291___action};
22497 val_t variable0;
22498 val_t variable1;
22499 val_t variable2;
22500 val_t variable3;
22501 val_t variable4;
22502 val_t variable5;
22503 val_t variable6;
22504 val_t variable7;
22505 val_t variable8;
22506 val_t variable9;
22507 trace.prev = tracehead; tracehead = &trace;
22508 trace.file = LOCATE_parser;
22509 variable0 = param0;
22510 variable1 = NIT_NULL /*null*/;
22511 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22512 variable2 = variable3;
22513 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22514 variable3 = variable4;
22515 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22516 variable4 = variable5;
22517 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22518 variable5 = variable6;
22519 variable6 = variable5 /*nodearraylist1*/;
22520 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22521 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction291___action, LOCATE_parser, 11558); nit_exit(1);}
22522 variable7 = variable2 /*nodearraylist4*/;
22523 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22524 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction291___action, LOCATE_parser, 11560); nit_exit(1);}
22525 variable9 = NEW_AEqExpr_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/
22526 variable8 = variable9;
22527 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22528 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22529 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22530 tracehead = trace.prev;
22531 return;
22532 }
22533 void parser___ReduceAction291___init(val_t self, int* init_table) {
22534 struct trace_t trace = {NULL, NULL, 11568, LOCATE_parser___ReduceAction291___init};
22535 trace.prev = tracehead; tracehead = &trace;
22536 trace.file = LOCATE_parser;
22537 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction291].i]) return;
22538 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction291].i] = 1;
22539 tracehead = trace.prev;
22540 return;
22541 }
22542 void parser___ReduceAction292___action(val_t self, val_t param0) {
22543 struct trace_t trace = {NULL, NULL, 11572, LOCATE_parser___ReduceAction292___action};
22544 val_t variable0;
22545 val_t variable1;
22546 val_t variable2;
22547 val_t variable3;
22548 val_t variable4;
22549 val_t variable5;
22550 val_t variable6;
22551 val_t variable7;
22552 val_t variable8;
22553 val_t variable9;
22554 trace.prev = tracehead; tracehead = &trace;
22555 trace.file = LOCATE_parser;
22556 variable0 = param0;
22557 variable1 = NIT_NULL /*null*/;
22558 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22559 variable2 = variable3;
22560 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22561 variable3 = variable4;
22562 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22563 variable4 = variable5;
22564 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22565 variable5 = variable6;
22566 variable6 = variable5 /*nodearraylist1*/;
22567 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22568 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction292___action, LOCATE_parser, 11580); nit_exit(1);}
22569 variable7 = variable2 /*nodearraylist4*/;
22570 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22571 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction292___action, LOCATE_parser, 11582); nit_exit(1);}
22572 variable9 = NEW_AEeExpr_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/
22573 variable8 = variable9;
22574 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22575 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22576 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22577 tracehead = trace.prev;
22578 return;
22579 }
22580 void parser___ReduceAction292___init(val_t self, int* init_table) {
22581 struct trace_t trace = {NULL, NULL, 11590, LOCATE_parser___ReduceAction292___init};
22582 trace.prev = tracehead; tracehead = &trace;
22583 trace.file = LOCATE_parser;
22584 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction292].i]) return;
22585 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction292].i] = 1;
22586 tracehead = trace.prev;
22587 return;
22588 }
22589 void parser___ReduceAction293___action(val_t self, val_t param0) {
22590 struct trace_t trace = {NULL, NULL, 11594, LOCATE_parser___ReduceAction293___action};
22591 val_t variable0;
22592 val_t variable1;
22593 val_t variable2;
22594 val_t variable3;
22595 val_t variable4;
22596 val_t variable5;
22597 val_t variable6;
22598 val_t variable7;
22599 val_t variable8;
22600 val_t variable9;
22601 trace.prev = tracehead; tracehead = &trace;
22602 trace.file = LOCATE_parser;
22603 variable0 = param0;
22604 variable1 = NIT_NULL /*null*/;
22605 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22606 variable2 = variable3;
22607 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22608 variable3 = variable4;
22609 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22610 variable4 = variable5;
22611 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22612 variable5 = variable6;
22613 variable6 = variable5 /*nodearraylist1*/;
22614 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22615 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction293___action, LOCATE_parser, 11602); nit_exit(1);}
22616 variable7 = variable2 /*nodearraylist4*/;
22617 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22618 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction293___action, LOCATE_parser, 11604); nit_exit(1);}
22619 variable9 = NEW_ANeExpr_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/
22620 variable8 = variable9;
22621 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22622 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22623 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22624 tracehead = trace.prev;
22625 return;
22626 }
22627 void parser___ReduceAction293___init(val_t self, int* init_table) {
22628 struct trace_t trace = {NULL, NULL, 11612, LOCATE_parser___ReduceAction293___init};
22629 trace.prev = tracehead; tracehead = &trace;
22630 trace.file = LOCATE_parser;
22631 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction293].i]) return;
22632 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction293].i] = 1;
22633 tracehead = trace.prev;
22634 return;
22635 }
22636 void parser___ReduceAction294___action(val_t self, val_t param0) {
22637 struct trace_t trace = {NULL, NULL, 11616, LOCATE_parser___ReduceAction294___action};
22638 val_t variable0;
22639 val_t variable1;
22640 val_t variable2;
22641 val_t variable3;
22642 val_t variable4;
22643 val_t variable5;
22644 val_t variable6;
22645 val_t variable7;
22646 val_t variable8;
22647 val_t variable9;
22648 trace.prev = tracehead; tracehead = &trace;
22649 trace.file = LOCATE_parser;
22650 variable0 = param0;
22651 variable1 = NIT_NULL /*null*/;
22652 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22653 variable2 = variable3;
22654 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22655 variable3 = variable4;
22656 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22657 variable4 = variable5;
22658 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22659 variable5 = variable6;
22660 variable6 = variable5 /*nodearraylist1*/;
22661 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22662 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction294___action, LOCATE_parser, 11624); nit_exit(1);}
22663 variable7 = variable2 /*nodearraylist4*/;
22664 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22665 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction294___action, LOCATE_parser, 11626); nit_exit(1);}
22666 variable9 = NEW_ALtExpr_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/
22667 variable8 = variable9;
22668 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22669 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22670 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22671 tracehead = trace.prev;
22672 return;
22673 }
22674 void parser___ReduceAction294___init(val_t self, int* init_table) {
22675 struct trace_t trace = {NULL, NULL, 11634, LOCATE_parser___ReduceAction294___init};
22676 trace.prev = tracehead; tracehead = &trace;
22677 trace.file = LOCATE_parser;
22678 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction294].i]) return;
22679 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction294].i] = 1;
22680 tracehead = trace.prev;
22681 return;
22682 }
22683 void parser___ReduceAction295___action(val_t self, val_t param0) {
22684 struct trace_t trace = {NULL, NULL, 11638, LOCATE_parser___ReduceAction295___action};
22685 val_t variable0;
22686 val_t variable1;
22687 val_t variable2;
22688 val_t variable3;
22689 val_t variable4;
22690 val_t variable5;
22691 val_t variable6;
22692 val_t variable7;
22693 val_t variable8;
22694 val_t variable9;
22695 trace.prev = tracehead; tracehead = &trace;
22696 trace.file = LOCATE_parser;
22697 variable0 = param0;
22698 variable1 = NIT_NULL /*null*/;
22699 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22700 variable2 = variable3;
22701 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22702 variable3 = variable4;
22703 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22704 variable4 = variable5;
22705 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22706 variable5 = variable6;
22707 variable6 = variable5 /*nodearraylist1*/;
22708 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22709 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction295___action, LOCATE_parser, 11646); nit_exit(1);}
22710 variable7 = variable2 /*nodearraylist4*/;
22711 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22712 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction295___action, LOCATE_parser, 11648); nit_exit(1);}
22713 variable9 = NEW_ALeExpr_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/
22714 variable8 = variable9;
22715 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22716 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22717 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22718 tracehead = trace.prev;
22719 return;
22720 }
22721 void parser___ReduceAction295___init(val_t self, int* init_table) {
22722 struct trace_t trace = {NULL, NULL, 11656, LOCATE_parser___ReduceAction295___init};
22723 trace.prev = tracehead; tracehead = &trace;
22724 trace.file = LOCATE_parser;
22725 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction295].i]) return;
22726 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction295].i] = 1;
22727 tracehead = trace.prev;
22728 return;
22729 }
22730 void parser___ReduceAction296___action(val_t self, val_t param0) {
22731 struct trace_t trace = {NULL, NULL, 11660, LOCATE_parser___ReduceAction296___action};
22732 val_t variable0;
22733 val_t variable1;
22734 val_t variable2;
22735 val_t variable3;
22736 val_t variable4;
22737 val_t variable5;
22738 val_t variable6;
22739 val_t variable7;
22740 val_t variable8;
22741 val_t variable9;
22742 trace.prev = tracehead; tracehead = &trace;
22743 trace.file = LOCATE_parser;
22744 variable0 = param0;
22745 variable1 = NIT_NULL /*null*/;
22746 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22747 variable2 = variable3;
22748 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22749 variable3 = variable4;
22750 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22751 variable4 = variable5;
22752 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22753 variable5 = variable6;
22754 variable6 = variable5 /*nodearraylist1*/;
22755 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22756 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction296___action, LOCATE_parser, 11668); nit_exit(1);}
22757 variable7 = variable2 /*nodearraylist4*/;
22758 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22759 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction296___action, LOCATE_parser, 11670); nit_exit(1);}
22760 variable9 = NEW_AGtExpr_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/
22761 variable8 = variable9;
22762 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22763 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22764 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22765 tracehead = trace.prev;
22766 return;
22767 }
22768 void parser___ReduceAction296___init(val_t self, int* init_table) {
22769 struct trace_t trace = {NULL, NULL, 11678, LOCATE_parser___ReduceAction296___init};
22770 trace.prev = tracehead; tracehead = &trace;
22771 trace.file = LOCATE_parser;
22772 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction296].i]) return;
22773 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction296].i] = 1;
22774 tracehead = trace.prev;
22775 return;
22776 }
22777 void parser___ReduceAction297___action(val_t self, val_t param0) {
22778 struct trace_t trace = {NULL, NULL, 11682, LOCATE_parser___ReduceAction297___action};
22779 val_t variable0;
22780 val_t variable1;
22781 val_t variable2;
22782 val_t variable3;
22783 val_t variable4;
22784 val_t variable5;
22785 val_t variable6;
22786 val_t variable7;
22787 val_t variable8;
22788 val_t variable9;
22789 trace.prev = tracehead; tracehead = &trace;
22790 trace.file = LOCATE_parser;
22791 variable0 = param0;
22792 variable1 = NIT_NULL /*null*/;
22793 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22794 variable2 = variable3;
22795 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22796 variable3 = variable4;
22797 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22798 variable4 = variable5;
22799 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22800 variable5 = variable6;
22801 variable6 = variable5 /*nodearraylist1*/;
22802 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22803 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction297___action, LOCATE_parser, 11690); nit_exit(1);}
22804 variable7 = variable2 /*nodearraylist4*/;
22805 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22806 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction297___action, LOCATE_parser, 11692); nit_exit(1);}
22807 variable9 = NEW_AGeExpr_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/
22808 variable8 = variable9;
22809 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22810 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22811 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22812 tracehead = trace.prev;
22813 return;
22814 }
22815 void parser___ReduceAction297___init(val_t self, int* init_table) {
22816 struct trace_t trace = {NULL, NULL, 11700, LOCATE_parser___ReduceAction297___init};
22817 trace.prev = tracehead; tracehead = &trace;
22818 trace.file = LOCATE_parser;
22819 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction297].i]) return;
22820 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction297].i] = 1;
22821 tracehead = trace.prev;
22822 return;
22823 }
22824 void parser___ReduceAction298___action(val_t self, val_t param0) {
22825 struct trace_t trace = {NULL, NULL, 11704, LOCATE_parser___ReduceAction298___action};
22826 val_t variable0;
22827 val_t variable1;
22828 val_t variable2;
22829 val_t variable3;
22830 val_t variable4;
22831 val_t variable5;
22832 val_t variable6;
22833 val_t variable7;
22834 val_t variable8;
22835 val_t variable9;
22836 trace.prev = tracehead; tracehead = &trace;
22837 trace.file = LOCATE_parser;
22838 variable0 = param0;
22839 variable1 = NIT_NULL /*null*/;
22840 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22841 variable2 = variable3;
22842 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22843 variable3 = variable4;
22844 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22845 variable4 = variable5;
22846 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22847 variable5 = variable6;
22848 variable6 = variable5 /*nodearraylist1*/;
22849 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22850 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction298___action, LOCATE_parser, 11712); nit_exit(1);}
22851 variable7 = variable2 /*nodearraylist4*/;
22852 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22853 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction298___action, LOCATE_parser, 11714); nit_exit(1);}
22854 variable9 = NEW_AStarshipExpr_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/
22855 variable8 = variable9;
22856 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22857 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22858 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22859 tracehead = trace.prev;
22860 return;
22861 }
22862 void parser___ReduceAction298___init(val_t self, int* init_table) {
22863 struct trace_t trace = {NULL, NULL, 11722, LOCATE_parser___ReduceAction298___init};
22864 trace.prev = tracehead; tracehead = &trace;
22865 trace.file = LOCATE_parser;
22866 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction298].i]) return;
22867 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction298].i] = 1;
22868 tracehead = trace.prev;
22869 return;
22870 }
22871 void parser___ReduceAction299___action(val_t self, val_t param0) {
22872 struct trace_t trace = {NULL, NULL, 11726, LOCATE_parser___ReduceAction299___action};
22873 val_t variable0;
22874 val_t variable1;
22875 val_t variable2;
22876 val_t variable3;
22877 val_t variable4;
22878 val_t variable5;
22879 val_t variable6;
22880 val_t variable7;
22881 val_t variable8;
22882 val_t variable9;
22883 trace.prev = tracehead; tracehead = &trace;
22884 trace.file = LOCATE_parser;
22885 variable0 = param0;
22886 variable1 = NIT_NULL /*null*/;
22887 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22888 variable2 = variable3;
22889 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22890 variable3 = variable4;
22891 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22892 variable4 = variable5;
22893 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22894 variable5 = variable6;
22895 variable6 = variable5 /*nodearraylist1*/;
22896 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22897 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction299___action, LOCATE_parser, 11734); nit_exit(1);}
22898 variable7 = variable2 /*nodearraylist4*/;
22899 variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
22900 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction299___action, LOCATE_parser, 11736); nit_exit(1);}
22901 variable9 = NEW_AIsaExpr_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/
22902 variable8 = variable9;
22903 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22904 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(42)) /*Parser::go_to*/;
22905 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22906 tracehead = trace.prev;
22907 return;
22908 }
22909 void parser___ReduceAction299___init(val_t self, int* init_table) {
22910 struct trace_t trace = {NULL, NULL, 11744, LOCATE_parser___ReduceAction299___init};
22911 trace.prev = tracehead; tracehead = &trace;
22912 trace.file = LOCATE_parser;
22913 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction299].i]) return;
22914 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction299].i] = 1;
22915 tracehead = trace.prev;
22916 return;
22917 }
22918 void parser___ReduceAction300___action(val_t self, val_t param0) {
22919 struct trace_t trace = {NULL, NULL, 11748, LOCATE_parser___ReduceAction300___action};
22920 val_t variable0;
22921 val_t variable1;
22922 val_t variable2;
22923 val_t variable3;
22924 val_t variable4;
22925 trace.prev = tracehead; tracehead = &trace;
22926 trace.file = LOCATE_parser;
22927 variable0 = param0;
22928 variable1 = NIT_NULL /*null*/;
22929 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22930 variable2 = variable3;
22931 variable3 = variable2 /*nodearraylist1*/;
22932 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22933 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction300___action, LOCATE_parser, 11753); nit_exit(1);}
22934 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
22935 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(43)) /*Parser::go_to*/;
22936 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
22937 tracehead = trace.prev;
22938 return;
22939 }
22940 void parser___ReduceAction300___init(val_t self, int* init_table) {
22941 struct trace_t trace = {NULL, NULL, 11757, LOCATE_parser___ReduceAction300___init};
22942 trace.prev = tracehead; tracehead = &trace;
22943 trace.file = LOCATE_parser;
22944 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction300].i]) return;
22945 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction300].i] = 1;
22946 tracehead = trace.prev;
22947 return;
22948 }
22949 void parser___ReduceAction301___action(val_t self, val_t param0) {
22950 struct trace_t trace = {NULL, NULL, 11761, LOCATE_parser___ReduceAction301___action};
22951 val_t variable0;
22952 val_t variable1;
22953 val_t variable2;
22954 val_t variable3;
22955 val_t variable4;
22956 val_t variable5;
22957 val_t variable6;
22958 val_t variable7;
22959 val_t variable8;
22960 val_t variable9;
22961 trace.prev = tracehead; tracehead = &trace;
22962 trace.file = LOCATE_parser;
22963 variable0 = param0;
22964 variable1 = NIT_NULL /*null*/;
22965 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22966 variable2 = variable3;
22967 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22968 variable3 = variable4;
22969 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22970 variable4 = variable5;
22971 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
22972 variable5 = variable6;
22973 variable6 = variable5 /*nodearraylist1*/;
22974 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22975 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction301___action, LOCATE_parser, 11769); nit_exit(1);}
22976 variable7 = variable2 /*nodearraylist4*/;
22977 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
22978 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction301___action, LOCATE_parser, 11771); nit_exit(1);}
22979 variable9 = NEW_APlusExpr_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/
22980 variable8 = variable9;
22981 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
22982 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(43)) /*Parser::go_to*/;
22983 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
22984 tracehead = trace.prev;
22985 return;
22986 }
22987 void parser___ReduceAction301___init(val_t self, int* init_table) {
22988 struct trace_t trace = {NULL, NULL, 11779, LOCATE_parser___ReduceAction301___init};
22989 trace.prev = tracehead; tracehead = &trace;
22990 trace.file = LOCATE_parser;
22991 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction301].i]) return;
22992 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction301].i] = 1;
22993 tracehead = trace.prev;
22994 return;
22995 }
22996 void parser___ReduceAction302___action(val_t self, val_t param0) {
22997 struct trace_t trace = {NULL, NULL, 11783, LOCATE_parser___ReduceAction302___action};
22998 val_t variable0;
22999 val_t variable1;
23000 val_t variable2;
23001 val_t variable3;
23002 val_t variable4;
23003 val_t variable5;
23004 val_t variable6;
23005 val_t variable7;
23006 val_t variable8;
23007 val_t variable9;
23008 trace.prev = tracehead; tracehead = &trace;
23009 trace.file = LOCATE_parser;
23010 variable0 = param0;
23011 variable1 = NIT_NULL /*null*/;
23012 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23013 variable2 = variable3;
23014 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23015 variable3 = variable4;
23016 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23017 variable4 = variable5;
23018 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23019 variable5 = variable6;
23020 variable6 = variable5 /*nodearraylist1*/;
23021 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23022 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction302___action, LOCATE_parser, 11791); nit_exit(1);}
23023 variable7 = variable2 /*nodearraylist4*/;
23024 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23025 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction302___action, LOCATE_parser, 11793); nit_exit(1);}
23026 variable9 = NEW_AMinusExpr_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/
23027 variable8 = variable9;
23028 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
23029 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(43)) /*Parser::go_to*/;
23030 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
23031 tracehead = trace.prev;
23032 return;
23033 }
23034 void parser___ReduceAction302___init(val_t self, int* init_table) {
23035 struct trace_t trace = {NULL, NULL, 11801, LOCATE_parser___ReduceAction302___init};
23036 trace.prev = tracehead; tracehead = &trace;
23037 trace.file = LOCATE_parser;
23038 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction302].i]) return;
23039 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction302].i] = 1;
23040 tracehead = trace.prev;
23041 return;
23042 }
23043 void parser___ReduceAction303___action(val_t self, val_t param0) {
23044 struct trace_t trace = {NULL, NULL, 11805, LOCATE_parser___ReduceAction303___action};
23045 val_t variable0;
23046 val_t variable1;
23047 val_t variable2;
23048 val_t variable3;
23049 val_t variable4;
23050 trace.prev = tracehead; tracehead = &trace;
23051 trace.file = LOCATE_parser;
23052 variable0 = param0;
23053 variable1 = NIT_NULL /*null*/;
23054 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23055 variable2 = variable3;
23056 variable3 = variable2 /*nodearraylist1*/;
23057 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23058 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction303___action, LOCATE_parser, 11810); nit_exit(1);}
23059 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
23060 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/;
23061 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
23062 tracehead = trace.prev;
23063 return;
23064 }
23065 void parser___ReduceAction303___init(val_t self, int* init_table) {
23066 struct trace_t trace = {NULL, NULL, 11814, LOCATE_parser___ReduceAction303___init};
23067 trace.prev = tracehead; tracehead = &trace;
23068 trace.file = LOCATE_parser;
23069 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction303].i]) return;
23070 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction303].i] = 1;
23071 tracehead = trace.prev;
23072 return;
23073 }
23074 void parser___ReduceAction304___action(val_t self, val_t param0) {
23075 struct trace_t trace = {NULL, NULL, 11818, LOCATE_parser___ReduceAction304___action};
23076 val_t variable0;
23077 val_t variable1;
23078 val_t variable2;
23079 val_t variable3;
23080 val_t variable4;
23081 val_t variable5;
23082 val_t variable6;
23083 val_t variable7;
23084 val_t variable8;
23085 val_t variable9;
23086 trace.prev = tracehead; tracehead = &trace;
23087 trace.file = LOCATE_parser;
23088 variable0 = param0;
23089 variable1 = NIT_NULL /*null*/;
23090 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23091 variable2 = variable3;
23092 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23093 variable3 = variable4;
23094 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23095 variable4 = variable5;
23096 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23097 variable5 = variable6;
23098 variable6 = variable5 /*nodearraylist1*/;
23099 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23100 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction304___action, LOCATE_parser, 11826); nit_exit(1);}
23101 variable7 = variable2 /*nodearraylist4*/;
23102 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23103 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction304___action, LOCATE_parser, 11828); nit_exit(1);}
23104 variable9 = NEW_AStarExpr_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/
23105 variable8 = variable9;
23106 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
23107 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/;
23108 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
23109 tracehead = trace.prev;
23110 return;
23111 }
23112 void parser___ReduceAction304___init(val_t self, int* init_table) {
23113 struct trace_t trace = {NULL, NULL, 11836, LOCATE_parser___ReduceAction304___init};
23114 trace.prev = tracehead; tracehead = &trace;
23115 trace.file = LOCATE_parser;
23116 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction304].i]) return;
23117 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction304].i] = 1;
23118 tracehead = trace.prev;
23119 return;
23120 }
23121 void parser___ReduceAction305___action(val_t self, val_t param0) {
23122 struct trace_t trace = {NULL, NULL, 11840, LOCATE_parser___ReduceAction305___action};
23123 val_t variable0;
23124 val_t variable1;
23125 val_t variable2;
23126 val_t variable3;
23127 val_t variable4;
23128 val_t variable5;
23129 val_t variable6;
23130 val_t variable7;
23131 val_t variable8;
23132 val_t variable9;
23133 trace.prev = tracehead; tracehead = &trace;
23134 trace.file = LOCATE_parser;
23135 variable0 = param0;
23136 variable1 = NIT_NULL /*null*/;
23137 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23138 variable2 = variable3;
23139 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23140 variable3 = variable4;
23141 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23142 variable4 = variable5;
23143 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23144 variable5 = variable6;
23145 variable6 = variable5 /*nodearraylist1*/;
23146 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23147 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction305___action, LOCATE_parser, 11848); nit_exit(1);}
23148 variable7 = variable2 /*nodearraylist4*/;
23149 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23150 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction305___action, LOCATE_parser, 11850); nit_exit(1);}
23151 variable9 = NEW_ASlashExpr_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/
23152 variable8 = variable9;
23153 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
23154 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/;
23155 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
23156 tracehead = trace.prev;
23157 return;
23158 }
23159 void parser___ReduceAction305___init(val_t self, int* init_table) {
23160 struct trace_t trace = {NULL, NULL, 11858, LOCATE_parser___ReduceAction305___init};
23161 trace.prev = tracehead; tracehead = &trace;
23162 trace.file = LOCATE_parser;
23163 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction305].i]) return;
23164 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction305].i] = 1;
23165 tracehead = trace.prev;
23166 return;
23167 }
23168 void parser___ReduceAction306___action(val_t self, val_t param0) {
23169 struct trace_t trace = {NULL, NULL, 11862, LOCATE_parser___ReduceAction306___action};
23170 val_t variable0;
23171 val_t variable1;
23172 val_t variable2;
23173 val_t variable3;
23174 val_t variable4;
23175 val_t variable5;
23176 val_t variable6;
23177 val_t variable7;
23178 val_t variable8;
23179 val_t variable9;
23180 trace.prev = tracehead; tracehead = &trace;
23181 trace.file = LOCATE_parser;
23182 variable0 = param0;
23183 variable1 = NIT_NULL /*null*/;
23184 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23185 variable2 = variable3;
23186 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23187 variable3 = variable4;
23188 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23189 variable4 = variable5;
23190 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23191 variable5 = variable6;
23192 variable6 = variable5 /*nodearraylist1*/;
23193 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23194 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction306___action, LOCATE_parser, 11870); nit_exit(1);}
23195 variable7 = variable2 /*nodearraylist4*/;
23196 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23197 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction306___action, LOCATE_parser, 11872); nit_exit(1);}
23198 variable9 = NEW_APercentExpr_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/
23199 variable8 = variable9;
23200 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
23201 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(44)) /*Parser::go_to*/;
23202 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
23203 tracehead = trace.prev;
23204 return;
23205 }
23206 void parser___ReduceAction306___init(val_t self, int* init_table) {
23207 struct trace_t trace = {NULL, NULL, 11880, LOCATE_parser___ReduceAction306___init};
23208 trace.prev = tracehead; tracehead = &trace;
23209 trace.file = LOCATE_parser;
23210 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction306].i]) return;
23211 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction306].i] = 1;
23212 tracehead = trace.prev;
23213 return;
23214 }
23215 void parser___ReduceAction307___action(val_t self, val_t param0) {
23216 struct trace_t trace = {NULL, NULL, 11884, LOCATE_parser___ReduceAction307___action};
23217 val_t variable0;
23218 val_t variable1;
23219 val_t variable2;
23220 val_t variable3;
23221 val_t variable4;
23222 trace.prev = tracehead; tracehead = &trace;
23223 trace.file = LOCATE_parser;
23224 variable0 = param0;
23225 variable1 = NIT_NULL /*null*/;
23226 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23227 variable2 = variable3;
23228 variable3 = variable2 /*nodearraylist1*/;
23229 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23230 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction307___action, LOCATE_parser, 11889); nit_exit(1);}
23231 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
23232 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(45)) /*Parser::go_to*/;
23233 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
23234 tracehead = trace.prev;
23235 return;
23236 }
23237 void parser___ReduceAction307___init(val_t self, int* init_table) {
23238 struct trace_t trace = {NULL, NULL, 11893, LOCATE_parser___ReduceAction307___init};
23239 trace.prev = tracehead; tracehead = &trace;
23240 trace.file = LOCATE_parser;
23241 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction307].i]) return;
23242 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction307].i] = 1;
23243 tracehead = trace.prev;
23244 return;
23245 }
23246 void parser___ReduceAction308___action(val_t self, val_t param0) {
23247 struct trace_t trace = {NULL, NULL, 11897, LOCATE_parser___ReduceAction308___action};
23248 val_t variable0;
23249 val_t variable1;
23250 val_t variable2;
23251 val_t variable3;
23252 val_t variable4;
23253 val_t variable5;
23254 val_t variable6;
23255 val_t variable7;
23256 val_t variable8;
23257 trace.prev = tracehead; tracehead = &trace;
23258 trace.file = LOCATE_parser;
23259 variable0 = param0;
23260 variable1 = NIT_NULL /*null*/;
23261 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23262 variable2 = variable3;
23263 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23264 variable3 = variable4;
23265 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23266 variable4 = variable5;
23267 variable5 = variable4 /*nodearraylist1*/;
23268 variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/;
23269 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction308___action, LOCATE_parser, 11904); nit_exit(1);}
23270 variable6 = variable2 /*nodearraylist3*/;
23271 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23272 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction308___action, LOCATE_parser, 11906); nit_exit(1);}
23273 variable8 = NEW_AUminusExpr_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/
23274 variable7 = variable8;
23275 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
23276 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(45)) /*Parser::go_to*/;
23277 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
23278 tracehead = trace.prev;
23279 return;
23280 }
23281 void parser___ReduceAction308___init(val_t self, int* init_table) {
23282 struct trace_t trace = {NULL, NULL, 11914, LOCATE_parser___ReduceAction308___init};
23283 trace.prev = tracehead; tracehead = &trace;
23284 trace.file = LOCATE_parser;
23285 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction308].i]) return;
23286 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction308].i] = 1;
23287 tracehead = trace.prev;
23288 return;
23289 }
23290 void parser___ReduceAction309___action(val_t self, val_t param0) {
23291 struct trace_t trace = {NULL, NULL, 11918, LOCATE_parser___ReduceAction309___action};
23292 val_t variable0;
23293 val_t variable1;
23294 val_t variable2;
23295 val_t variable3;
23296 val_t variable4;
23297 val_t variable5;
23298 val_t variable6;
23299 val_t variable7;
23300 val_t variable8;
23301 trace.prev = tracehead; tracehead = &trace;
23302 trace.file = LOCATE_parser;
23303 variable0 = param0;
23304 variable1 = NIT_NULL /*null*/;
23305 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23306 variable2 = variable3;
23307 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23308 variable3 = variable4;
23309 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23310 variable4 = variable5;
23311 variable5 = variable4 /*nodearraylist1*/;
23312 variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/;
23313 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction309___action, LOCATE_parser, 11925); nit_exit(1);}
23314 variable6 = variable2 /*nodearraylist3*/;
23315 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23316 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction309___action, LOCATE_parser, 11927); nit_exit(1);}
23317 variable8 = NEW_AOnceExpr_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/
23318 variable7 = variable8;
23319 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
23320 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(45)) /*Parser::go_to*/;
23321 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
23322 tracehead = trace.prev;
23323 return;
23324 }
23325 void parser___ReduceAction309___init(val_t self, int* init_table) {
23326 struct trace_t trace = {NULL, NULL, 11935, LOCATE_parser___ReduceAction309___init};
23327 trace.prev = tracehead; tracehead = &trace;
23328 trace.file = LOCATE_parser;
23329 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction309].i]) return;
23330 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction309].i] = 1;
23331 tracehead = trace.prev;
23332 return;
23333 }
23334 void parser___ReduceAction310___action(val_t self, val_t param0) {
23335 struct trace_t trace = {NULL, NULL, 11939, LOCATE_parser___ReduceAction310___action};
23336 val_t variable0;
23337 val_t variable1;
23338 val_t variable2;
23339 val_t variable3;
23340 val_t variable4;
23341 trace.prev = tracehead; tracehead = &trace;
23342 trace.file = LOCATE_parser;
23343 variable0 = param0;
23344 variable1 = NIT_NULL /*null*/;
23345 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23346 variable2 = variable3;
23347 variable3 = variable2 /*nodearraylist1*/;
23348 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23349 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction310___action, LOCATE_parser, 11944); nit_exit(1);}
23350 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
23351 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(46)) /*Parser::go_to*/;
23352 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
23353 tracehead = trace.prev;
23354 return;
23355 }
23356 void parser___ReduceAction310___init(val_t self, int* init_table) {
23357 struct trace_t trace = {NULL, NULL, 11948, LOCATE_parser___ReduceAction310___init};
23358 trace.prev = tracehead; tracehead = &trace;
23359 trace.file = LOCATE_parser;
23360 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction310].i]) return;
23361 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction310].i] = 1;
23362 tracehead = trace.prev;
23363 return;
23364 }
23365 void parser___ReduceAction311___action(val_t self, val_t param0) {
23366 struct trace_t trace = {NULL, NULL, 11952, LOCATE_parser___ReduceAction311___action};
23367 val_t variable0;
23368 val_t variable1;
23369 val_t variable2;
23370 val_t variable3;
23371 val_t variable4;
23372 val_t variable5;
23373 val_t variable6;
23374 val_t variable7;
23375 val_t variable8;
23376 val_t variable9;
23377 val_t variable10;
23378 val_t variable11;
23379 trace.prev = tracehead; tracehead = &trace;
23380 trace.file = LOCATE_parser;
23381 variable0 = param0;
23382 variable1 = NIT_NULL /*null*/;
23383 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23384 variable2 = variable3;
23385 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23386 variable3 = variable4;
23387 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23388 variable4 = variable5;
23389 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23390 variable5 = variable6;
23391 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23392 variable6 = variable7;
23393 variable7 = variable5 /*nodearraylist1*/;
23394 variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
23395 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction311___action, LOCATE_parser, 11961); nit_exit(1);}
23396 variable8 = variable3 /*nodearraylist3*/;
23397 variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
23398 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction311___action, LOCATE_parser, 11963); nit_exit(1);}
23399 variable9 = variable2 /*nodearraylist4*/;
23400 variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23401 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction311___action, LOCATE_parser, 11965); nit_exit(1);}
23402 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23403 if (UNTAG_Bool(variable10)) { /*if*/
23404 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*AbstractArray::is_empty*/;
23405 if (UNTAG_Bool(variable10)) { /*if*/
23406 variable6 = variable9 /*listnode5*/ /*listnode6=*/;
23407 } else { /*if*/
23408 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*IndexedCollection::append*/;
23409 }
23410 }
23411 variable11 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/
23412 variable10 = variable11;
23413 variable1 = variable10 /*pexprnode1*/ /*node_list=*/;
23414 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(46)) /*Parser::go_to*/;
23415 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
23416 tracehead = trace.prev;
23417 return;
23418 }
23419 void parser___ReduceAction311___init(val_t self, int* init_table) {
23420 struct trace_t trace = {NULL, NULL, 11982, LOCATE_parser___ReduceAction311___init};
23421 trace.prev = tracehead; tracehead = &trace;
23422 trace.file = LOCATE_parser;
23423 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction311].i]) return;
23424 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction311].i] = 1;
23425 tracehead = trace.prev;
23426 return;
23427 }
23428 void parser___ReduceAction312___action(val_t self, val_t param0) {
23429 struct trace_t trace = {NULL, NULL, 11986, LOCATE_parser___ReduceAction312___action};
23430 val_t variable0;
23431 val_t variable1;
23432 val_t variable2;
23433 val_t variable3;
23434 val_t variable4;
23435 val_t variable5;
23436 val_t variable6;
23437 val_t variable7;
23438 val_t variable8;
23439 val_t variable9;
23440 trace.prev = tracehead; tracehead = &trace;
23441 trace.file = LOCATE_parser;
23442 variable0 = param0;
23443 variable1 = NIT_NULL /*null*/;
23444 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23445 variable2 = variable3;
23446 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23447 variable3 = variable4;
23448 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23449 variable4 = variable5;
23450 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23451 variable5 = variable6;
23452 variable6 = variable5 /*nodearraylist1*/;
23453 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23454 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction312___action, LOCATE_parser, 11994); nit_exit(1);}
23455 variable7 = variable2 /*nodearraylist4*/;
23456 variable8 = TAG_Bool(( variable7 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
23457 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction312___action, LOCATE_parser, 11996); nit_exit(1);}
23458 variable9 = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr( variable6 /*pexprnode2*/, variable7 /*tattridnode3*/); /*new AAttrExpr*/
23459 variable8 = variable9;
23460 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
23461 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23462 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
23463 tracehead = trace.prev;
23464 return;
23465 }
23466 void parser___ReduceAction312___init(val_t self, int* init_table) {
23467 struct trace_t trace = {NULL, NULL, 12004, LOCATE_parser___ReduceAction312___init};
23468 trace.prev = tracehead; tracehead = &trace;
23469 trace.file = LOCATE_parser;
23470 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction312].i]) return;
23471 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction312].i] = 1;
23472 tracehead = trace.prev;
23473 return;
23474 }
23475 void parser___ReduceAction313___action(val_t self, val_t param0) {
23476 struct trace_t trace = {NULL, NULL, 12008, LOCATE_parser___ReduceAction313___action};
23477 val_t variable0;
23478 val_t variable1;
23479 val_t variable2;
23480 val_t variable3;
23481 val_t variable4;
23482 val_t variable5;
23483 val_t variable6;
23484 trace.prev = tracehead; tracehead = &trace;
23485 trace.file = LOCATE_parser;
23486 variable0 = param0;
23487 variable1 = NIT_NULL /*null*/;
23488 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23489 variable2 = variable3;
23490 variable4 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
23491 variable3 = variable4;
23492 variable4 = variable2 /*nodearraylist1*/;
23493 variable5 = TAG_Bool(( variable4 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
23494 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction313___action, LOCATE_parser, 12015); nit_exit(1);}
23495 variable6 = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr( variable3 /*pexprnode2*/, variable4 /*tattridnode3*/); /*new AAttrExpr*/
23496 variable5 = variable6;
23497 variable1 = variable5 /*pexprnode1*/ /*node_list=*/;
23498 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23499 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
23500 tracehead = trace.prev;
23501 return;
23502 }
23503 void parser___ReduceAction313___init(val_t self, int* init_table) {
23504 struct trace_t trace = {NULL, NULL, 12023, LOCATE_parser___ReduceAction313___init};
23505 trace.prev = tracehead; tracehead = &trace;
23506 trace.file = LOCATE_parser;
23507 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction313].i]) return;
23508 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction313].i] = 1;
23509 tracehead = trace.prev;
23510 return;
23511 }
23512 void parser___ReduceAction314___action(val_t self, val_t param0) {
23513 struct trace_t trace = {NULL, NULL, 12027, LOCATE_parser___ReduceAction314___action};
23514 val_t variable0;
23515 val_t variable1;
23516 val_t variable2;
23517 val_t variable3;
23518 val_t variable4;
23519 val_t variable5;
23520 val_t variable6;
23521 val_t variable7;
23522 val_t variable8;
23523 val_t variable9;
23524 val_t variable10;
23525 val_t variable11;
23526 val_t variable12;
23527 trace.prev = tracehead; tracehead = &trace;
23528 trace.file = LOCATE_parser;
23529 variable0 = param0;
23530 variable1 = NIT_NULL /*null*/;
23531 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23532 variable2 = variable3;
23533 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23534 variable3 = variable4;
23535 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23536 variable4 = variable5;
23537 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23538 variable5 = variable6;
23539 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23540 variable6 = variable7;
23541 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23542 variable7 = variable8;
23543 variable8 = variable6 /*nodearraylist1*/;
23544 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23545 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction314___action, LOCATE_parser, 12037); nit_exit(1);}
23546 variable9 = variable3 /*nodearraylist4*/;
23547 variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
23548 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction314___action, LOCATE_parser, 12039); nit_exit(1);}
23549 variable10 = variable2 /*nodearraylist5*/;
23550 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23551 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction314___action, LOCATE_parser, 12041); nit_exit(1);}
23552 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23553 if (UNTAG_Bool(variable11)) { /*if*/
23554 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
23555 if (UNTAG_Bool(variable11)) { /*if*/
23556 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
23557 } else { /*if*/
23558 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
23559 }
23560 }
23561 variable12 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/
23562 variable11 = variable12;
23563 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
23564 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23565 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
23566 tracehead = trace.prev;
23567 return;
23568 }
23569 void parser___ReduceAction314___init(val_t self, int* init_table) {
23570 struct trace_t trace = {NULL, NULL, 12057, LOCATE_parser___ReduceAction314___init};
23571 trace.prev = tracehead; tracehead = &trace;
23572 trace.file = LOCATE_parser;
23573 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction314].i]) return;
23574 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction314].i] = 1;
23575 tracehead = trace.prev;
23576 return;
23577 }
23578 void parser___ReduceAction315___action(val_t self, val_t param0) {
23579 struct trace_t trace = {NULL, NULL, 12061, LOCATE_parser___ReduceAction315___action};
23580 val_t variable0;
23581 val_t variable1;
23582 val_t variable2;
23583 val_t variable3;
23584 val_t variable4;
23585 val_t variable5;
23586 val_t variable6;
23587 val_t variable7;
23588 val_t variable8;
23589 val_t variable9;
23590 trace.prev = tracehead; tracehead = &trace;
23591 trace.file = LOCATE_parser;
23592 variable0 = param0;
23593 variable1 = NIT_NULL /*null*/;
23594 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23595 variable2 = variable3;
23596 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23597 variable3 = variable4;
23598 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23599 variable4 = variable5;
23600 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
23601 variable5 = variable6;
23602 variable6 = variable3 /*nodearraylist1*/;
23603 variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
23604 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction315___action, LOCATE_parser, 12070); nit_exit(1);}
23605 variable7 = variable2 /*nodearraylist2*/;
23606 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23607 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction315___action, LOCATE_parser, 12072); nit_exit(1);}
23608 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23609 if (UNTAG_Bool(variable8)) { /*if*/
23610 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
23611 if (UNTAG_Bool(variable8)) { /*if*/
23612 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
23613 } else { /*if*/
23614 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
23615 }
23616 }
23617 variable9 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/
23618 variable8 = variable9;
23619 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
23620 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23621 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
23622 tracehead = trace.prev;
23623 return;
23624 }
23625 void parser___ReduceAction315___init(val_t self, int* init_table) {
23626 struct trace_t trace = {NULL, NULL, 12088, LOCATE_parser___ReduceAction315___init};
23627 trace.prev = tracehead; tracehead = &trace;
23628 trace.file = LOCATE_parser;
23629 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction315].i]) return;
23630 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction315].i] = 1;
23631 tracehead = trace.prev;
23632 return;
23633 }
23634 void parser___ReduceAction316___action(val_t self, val_t param0) {
23635 struct trace_t trace = {NULL, NULL, 12092, LOCATE_parser___ReduceAction316___action};
23636 val_t variable0;
23637 val_t variable1;
23638 val_t variable2;
23639 val_t variable3;
23640 val_t variable4;
23641 val_t variable5;
23642 val_t variable6;
23643 val_t variable7;
23644 val_t variable8;
23645 trace.prev = tracehead; tracehead = &trace;
23646 trace.file = LOCATE_parser;
23647 variable0 = param0;
23648 variable1 = NIT_NULL /*null*/;
23649 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23650 variable2 = variable3;
23651 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23652 variable3 = variable4;
23653 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23654 variable4 = variable5;
23655 variable5 = variable3 /*nodearraylist1*/;
23656 variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
23657 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction316___action, LOCATE_parser, 12099); nit_exit(1);}
23658 variable6 = variable2 /*nodearraylist2*/;
23659 variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23660 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction316___action, LOCATE_parser, 12101); nit_exit(1);}
23661 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23662 if (UNTAG_Bool(variable7)) { /*if*/
23663 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
23664 if (UNTAG_Bool(variable7)) { /*if*/
23665 variable4 = variable6 /*listnode4*/ /*listnode5=*/;
23666 } else { /*if*/
23667 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*IndexedCollection::append*/;
23668 }
23669 }
23670 variable8 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/
23671 variable7 = variable8;
23672 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
23673 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23674 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
23675 tracehead = trace.prev;
23676 return;
23677 }
23678 void parser___ReduceAction316___init(val_t self, int* init_table) {
23679 struct trace_t trace = {NULL, NULL, 12117, LOCATE_parser___ReduceAction316___init};
23680 trace.prev = tracehead; tracehead = &trace;
23681 trace.file = LOCATE_parser;
23682 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction316].i]) return;
23683 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction316].i] = 1;
23684 tracehead = trace.prev;
23685 return;
23686 }
23687 void parser___ReduceAction317___action(val_t self, val_t param0) {
23688 struct trace_t trace = {NULL, NULL, 12121, LOCATE_parser___ReduceAction317___action};
23689 val_t variable0;
23690 val_t variable1;
23691 val_t variable2;
23692 val_t variable3;
23693 val_t variable4;
23694 val_t variable5;
23695 val_t variable6;
23696 val_t variable7;
23697 val_t variable8;
23698 val_t variable9;
23699 val_t variable10;
23700 trace.prev = tracehead; tracehead = &trace;
23701 trace.file = LOCATE_parser;
23702 variable0 = param0;
23703 variable1 = NIT_NULL /*null*/;
23704 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23705 variable2 = variable3;
23706 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23707 variable3 = variable4;
23708 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23709 variable4 = variable5;
23710 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23711 variable5 = variable6;
23712 variable6 = variable4 /*nodearraylist1*/;
23713 variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/;
23714 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction317___action, LOCATE_parser, 12129); nit_exit(1);}
23715 variable7 = variable3 /*nodearraylist2*/;
23716 variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
23717 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction317___action, LOCATE_parser, 12131); nit_exit(1);}
23718 variable8 = variable2 /*nodearraylist3*/;
23719 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23720 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction317___action, LOCATE_parser, 12133); nit_exit(1);}
23721 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23722 if (UNTAG_Bool(variable9)) { /*if*/
23723 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
23724 if (UNTAG_Bool(variable9)) { /*if*/
23725 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
23726 } else { /*if*/
23727 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
23728 }
23729 }
23730 variable10 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/
23731 variable9 = variable10;
23732 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
23733 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23734 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
23735 tracehead = trace.prev;
23736 return;
23737 }
23738 void parser___ReduceAction317___init(val_t self, int* init_table) {
23739 struct trace_t trace = {NULL, NULL, 12149, LOCATE_parser___ReduceAction317___init};
23740 trace.prev = tracehead; tracehead = &trace;
23741 trace.file = LOCATE_parser;
23742 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction317].i]) return;
23743 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction317].i] = 1;
23744 tracehead = trace.prev;
23745 return;
23746 }
23747 void parser___ReduceAction318___action(val_t self, val_t param0) {
23748 struct trace_t trace = {NULL, NULL, 12153, LOCATE_parser___ReduceAction318___action};
23749 val_t variable0;
23750 val_t variable1;
23751 val_t variable2;
23752 val_t variable3;
23753 val_t variable4;
23754 val_t variable5;
23755 val_t variable6;
23756 val_t variable7;
23757 val_t variable8;
23758 val_t variable9;
23759 val_t variable10;
23760 val_t variable11;
23761 val_t variable12;
23762 trace.prev = tracehead; tracehead = &trace;
23763 trace.file = LOCATE_parser;
23764 variable0 = param0;
23765 variable1 = NIT_NULL /*null*/;
23766 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23767 variable2 = variable3;
23768 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23769 variable3 = variable4;
23770 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23771 variable4 = variable5;
23772 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23773 variable5 = variable6;
23774 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23775 variable6 = variable7;
23776 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23777 variable7 = variable8;
23778 variable8 = variable6 /*nodearraylist1*/;
23779 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23780 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction318___action, LOCATE_parser, 12163); nit_exit(1);}
23781 variable9 = variable3 /*nodearraylist4*/;
23782 variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
23783 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction318___action, LOCATE_parser, 12165); nit_exit(1);}
23784 variable10 = variable2 /*nodearraylist5*/;
23785 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23786 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction318___action, LOCATE_parser, 12167); nit_exit(1);}
23787 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23788 if (UNTAG_Bool(variable11)) { /*if*/
23789 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
23790 if (UNTAG_Bool(variable11)) { /*if*/
23791 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
23792 } else { /*if*/
23793 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
23794 }
23795 }
23796 variable12 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/
23797 variable11 = variable12;
23798 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
23799 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23800 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
23801 tracehead = trace.prev;
23802 return;
23803 }
23804 void parser___ReduceAction318___init(val_t self, int* init_table) {
23805 struct trace_t trace = {NULL, NULL, 12183, LOCATE_parser___ReduceAction318___init};
23806 trace.prev = tracehead; tracehead = &trace;
23807 trace.file = LOCATE_parser;
23808 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction318].i]) return;
23809 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction318].i] = 1;
23810 tracehead = trace.prev;
23811 return;
23812 }
23813 void parser___ReduceAction319___action(val_t self, val_t param0) {
23814 struct trace_t trace = {NULL, NULL, 12187, LOCATE_parser___ReduceAction319___action};
23815 val_t variable0;
23816 val_t variable1;
23817 val_t variable2;
23818 val_t variable3;
23819 val_t variable4;
23820 val_t variable5;
23821 val_t variable6;
23822 val_t variable7;
23823 val_t variable8;
23824 val_t variable9;
23825 trace.prev = tracehead; tracehead = &trace;
23826 trace.file = LOCATE_parser;
23827 variable0 = param0;
23828 variable1 = NIT_NULL /*null*/;
23829 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23830 variable2 = variable3;
23831 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23832 variable3 = variable4;
23833 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23834 variable4 = variable5;
23835 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
23836 variable5 = variable6;
23837 variable6 = variable3 /*nodearraylist1*/;
23838 variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
23839 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction319___action, LOCATE_parser, 12196); nit_exit(1);}
23840 variable7 = variable2 /*nodearraylist2*/;
23841 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23842 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction319___action, LOCATE_parser, 12198); nit_exit(1);}
23843 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23844 if (UNTAG_Bool(variable8)) { /*if*/
23845 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
23846 if (UNTAG_Bool(variable8)) { /*if*/
23847 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
23848 } else { /*if*/
23849 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
23850 }
23851 }
23852 variable9 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/
23853 variable8 = variable9;
23854 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
23855 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23856 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
23857 tracehead = trace.prev;
23858 return;
23859 }
23860 void parser___ReduceAction319___init(val_t self, int* init_table) {
23861 struct trace_t trace = {NULL, NULL, 12214, LOCATE_parser___ReduceAction319___init};
23862 trace.prev = tracehead; tracehead = &trace;
23863 trace.file = LOCATE_parser;
23864 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction319].i]) return;
23865 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction319].i] = 1;
23866 tracehead = trace.prev;
23867 return;
23868 }
23869 void parser___ReduceAction320___action(val_t self, val_t param0) {
23870 struct trace_t trace = {NULL, NULL, 12218, LOCATE_parser___ReduceAction320___action};
23871 val_t variable0;
23872 val_t variable1;
23873 val_t variable2;
23874 val_t variable3;
23875 val_t variable4;
23876 val_t variable5;
23877 val_t variable6;
23878 val_t variable7;
23879 val_t variable8;
23880 trace.prev = tracehead; tracehead = &trace;
23881 trace.file = LOCATE_parser;
23882 variable0 = param0;
23883 variable1 = NIT_NULL /*null*/;
23884 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23885 variable2 = variable3;
23886 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23887 variable3 = variable4;
23888 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23889 variable4 = variable5;
23890 variable5 = variable3 /*nodearraylist1*/;
23891 variable6 = TAG_Bool(( variable5 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
23892 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction320___action, LOCATE_parser, 12225); nit_exit(1);}
23893 variable6 = variable2 /*nodearraylist2*/;
23894 variable7 = TAG_Bool(( variable6 /*listnode3*/==NIT_NULL) || VAL_ISA( variable6 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23895 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction320___action, LOCATE_parser, 12227); nit_exit(1);}
23896 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode3*/ == NIT_NULL /*null*/) || (( variable6 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23897 if (UNTAG_Bool(variable7)) { /*if*/
23898 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*AbstractArray::is_empty*/;
23899 if (UNTAG_Bool(variable7)) { /*if*/
23900 variable4 = variable6 /*listnode3*/ /*listnode4=*/;
23901 } else { /*if*/
23902 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable6 /*listnode3*/) /*IndexedCollection::append*/;
23903 }
23904 }
23905 variable8 = NEW_ABraExpr_parser_prod___ABraExpr___init_abraexpr( variable5 /*pexprnode2*/, variable4 /*listnode4*/); /*new ABraExpr*/
23906 variable7 = variable8;
23907 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
23908 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23909 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
23910 tracehead = trace.prev;
23911 return;
23912 }
23913 void parser___ReduceAction320___init(val_t self, int* init_table) {
23914 struct trace_t trace = {NULL, NULL, 12242, LOCATE_parser___ReduceAction320___init};
23915 trace.prev = tracehead; tracehead = &trace;
23916 trace.file = LOCATE_parser;
23917 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction320].i]) return;
23918 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction320].i] = 1;
23919 tracehead = trace.prev;
23920 return;
23921 }
23922 void parser___ReduceAction321___action(val_t self, val_t param0) {
23923 struct trace_t trace = {NULL, NULL, 12246, LOCATE_parser___ReduceAction321___action};
23924 val_t variable0;
23925 val_t variable1;
23926 val_t variable2;
23927 val_t variable3;
23928 val_t variable4;
23929 val_t variable5;
23930 val_t variable6;
23931 val_t variable7;
23932 val_t variable8;
23933 val_t variable9;
23934 val_t variable10;
23935 val_t variable11;
23936 val_t variable12;
23937 val_t variable13;
23938 val_t variable14;
23939 val_t variable15;
23940 trace.prev = tracehead; tracehead = &trace;
23941 trace.file = LOCATE_parser;
23942 variable0 = param0;
23943 variable1 = NIT_NULL /*null*/;
23944 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23945 variable2 = variable3;
23946 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23947 variable3 = variable4;
23948 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23949 variable4 = variable5;
23950 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23951 variable5 = variable6;
23952 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23953 variable6 = variable7;
23954 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23955 variable7 = variable8;
23956 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
23957 variable8 = variable9;
23958 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
23959 variable9 = variable10;
23960 variable10 = variable8 /*nodearraylist1*/;
23961 variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
23962 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction321___action, LOCATE_parser, 12258); nit_exit(1);}
23963 variable11 = variable6 /*nodearraylist3*/;
23964 variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
23965 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction321___action, LOCATE_parser, 12260); nit_exit(1);}
23966 variable12 = variable3 /*nodearraylist6*/;
23967 variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/;
23968 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction321___action, LOCATE_parser, 12262); nit_exit(1);}
23969 variable13 = variable2 /*nodearraylist7*/;
23970 variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
23971 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction321___action, LOCATE_parser, 12264); nit_exit(1);}
23972 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
23973 if (UNTAG_Bool(variable14)) { /*if*/
23974 variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*AbstractArray::is_empty*/;
23975 if (UNTAG_Bool(variable14)) { /*if*/
23976 variable9 = variable13 /*listnode5*/ /*listnode6=*/;
23977 } else { /*if*/
23978 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*IndexedCollection::append*/;
23979 }
23980 }
23981 variable15 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/
23982 variable14 = variable15;
23983 variable1 = variable14 /*pexprnode1*/ /*node_list=*/;
23984 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
23985 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
23986 tracehead = trace.prev;
23987 return;
23988 }
23989 void parser___ReduceAction321___init(val_t self, int* init_table) {
23990 struct trace_t trace = {NULL, NULL, 12281, LOCATE_parser___ReduceAction321___init};
23991 trace.prev = tracehead; tracehead = &trace;
23992 trace.file = LOCATE_parser;
23993 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction321].i]) return;
23994 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction321].i] = 1;
23995 tracehead = trace.prev;
23996 return;
23997 }
23998 void parser___ReduceAction322___action(val_t self, val_t param0) {
23999 struct trace_t trace = {NULL, NULL, 12285, LOCATE_parser___ReduceAction322___action};
24000 val_t variable0;
24001 val_t variable1;
24002 val_t variable2;
24003 val_t variable3;
24004 val_t variable4;
24005 val_t variable5;
24006 val_t variable6;
24007 val_t variable7;
24008 val_t variable8;
24009 val_t variable9;
24010 val_t variable10;
24011 val_t variable11;
24012 val_t variable12;
24013 val_t variable13;
24014 val_t variable14;
24015 trace.prev = tracehead; tracehead = &trace;
24016 trace.file = LOCATE_parser;
24017 variable0 = param0;
24018 variable1 = NIT_NULL /*null*/;
24019 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24020 variable2 = variable3;
24021 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24022 variable3 = variable4;
24023 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24024 variable4 = variable5;
24025 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24026 variable5 = variable6;
24027 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24028 variable6 = variable7;
24029 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24030 variable7 = variable8;
24031 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24032 variable8 = variable9;
24033 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24034 variable9 = variable10;
24035 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24036 variable10 = variable11;
24037 variable11 = variable8 /*nodearraylist3*/;
24038 variable12 = TAG_Bool(( variable11 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24039 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction322___action, LOCATE_parser, 12298); nit_exit(1);}
24040 variable12 = variable4 /*nodearraylist7*/;
24041 variable13 = TAG_Bool(( variable12 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24042 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction322___action, LOCATE_parser, 12300); nit_exit(1);}
24043 variable14 = NEW_ACrangeExpr_parser_prod___ACrangeExpr___init_acrangeexpr( variable11 /*pexprnode2*/, variable12 /*pexprnode3*/); /*new ACrangeExpr*/
24044 variable13 = variable14;
24045 variable1 = variable13 /*pexprnode1*/ /*node_list=*/;
24046 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24047 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
24048 tracehead = trace.prev;
24049 return;
24050 }
24051 void parser___ReduceAction322___init(val_t self, int* init_table) {
24052 struct trace_t trace = {NULL, NULL, 12308, LOCATE_parser___ReduceAction322___init};
24053 trace.prev = tracehead; tracehead = &trace;
24054 trace.file = LOCATE_parser;
24055 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction322].i]) return;
24056 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction322].i] = 1;
24057 tracehead = trace.prev;
24058 return;
24059 }
24060 void parser___ReduceAction323___action(val_t self, val_t param0) {
24061 struct trace_t trace = {NULL, NULL, 12312, LOCATE_parser___ReduceAction323___action};
24062 val_t variable0;
24063 val_t variable1;
24064 val_t variable2;
24065 val_t variable3;
24066 val_t variable4;
24067 val_t variable5;
24068 val_t variable6;
24069 val_t variable7;
24070 val_t variable8;
24071 val_t variable9;
24072 val_t variable10;
24073 val_t variable11;
24074 val_t variable12;
24075 val_t variable13;
24076 val_t variable14;
24077 trace.prev = tracehead; tracehead = &trace;
24078 trace.file = LOCATE_parser;
24079 variable0 = param0;
24080 variable1 = NIT_NULL /*null*/;
24081 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24082 variable2 = variable3;
24083 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24084 variable3 = variable4;
24085 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24086 variable4 = variable5;
24087 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24088 variable5 = variable6;
24089 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24090 variable6 = variable7;
24091 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24092 variable7 = variable8;
24093 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24094 variable8 = variable9;
24095 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24096 variable9 = variable10;
24097 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24098 variable10 = variable11;
24099 variable11 = variable8 /*nodearraylist3*/;
24100 variable12 = TAG_Bool(( variable11 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24101 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction323___action, LOCATE_parser, 12325); nit_exit(1);}
24102 variable12 = variable4 /*nodearraylist7*/;
24103 variable13 = TAG_Bool(( variable12 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24104 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction323___action, LOCATE_parser, 12327); nit_exit(1);}
24105 variable14 = NEW_AOrangeExpr_parser_prod___AOrangeExpr___init_aorangeexpr( variable11 /*pexprnode2*/, variable12 /*pexprnode3*/); /*new AOrangeExpr*/
24106 variable13 = variable14;
24107 variable1 = variable13 /*pexprnode1*/ /*node_list=*/;
24108 variable14 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24109 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable14, variable1 /*node_list*/) /*Parser::push*/;
24110 tracehead = trace.prev;
24111 return;
24112 }
24113 void parser___ReduceAction323___init(val_t self, int* init_table) {
24114 struct trace_t trace = {NULL, NULL, 12335, LOCATE_parser___ReduceAction323___init};
24115 trace.prev = tracehead; tracehead = &trace;
24116 trace.file = LOCATE_parser;
24117 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction323].i]) return;
24118 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction323].i] = 1;
24119 tracehead = trace.prev;
24120 return;
24121 }
24122 void parser___ReduceAction324___action(val_t self, val_t param0) {
24123 struct trace_t trace = {NULL, NULL, 12339, LOCATE_parser___ReduceAction324___action};
24124 val_t variable0;
24125 val_t variable1;
24126 val_t variable2;
24127 val_t variable3;
24128 val_t variable4;
24129 val_t variable5;
24130 val_t variable6;
24131 trace.prev = tracehead; tracehead = &trace;
24132 trace.file = LOCATE_parser;
24133 variable0 = param0;
24134 variable1 = NIT_NULL /*null*/;
24135 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24136 variable2 = variable3;
24137 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
24138 variable3 = variable4;
24139 variable4 = variable2 /*nodearraylist1*/;
24140 variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
24141 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction324___action, LOCATE_parser, 12345); nit_exit(1);}
24142 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24143 if (UNTAG_Bool(variable5)) { /*if*/
24144 variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*AbstractArray::is_empty*/;
24145 if (UNTAG_Bool(variable5)) { /*if*/
24146 variable3 = variable4 /*listnode2*/ /*listnode3=*/;
24147 } else { /*if*/
24148 ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*IndexedCollection::append*/;
24149 }
24150 }
24151 variable6 = NEW_AArrayExpr_parser_prod___AArrayExpr___init_aarrayexpr( variable3 /*listnode3*/); /*new AArrayExpr*/
24152 variable5 = variable6;
24153 variable1 = variable5 /*pexprnode1*/ /*node_list=*/;
24154 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24155 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
24156 tracehead = trace.prev;
24157 return;
24158 }
24159 void parser___ReduceAction324___init(val_t self, int* init_table) {
24160 struct trace_t trace = {NULL, NULL, 12359, LOCATE_parser___ReduceAction324___init};
24161 trace.prev = tracehead; tracehead = &trace;
24162 trace.file = LOCATE_parser;
24163 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction324].i]) return;
24164 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction324].i] = 1;
24165 tracehead = trace.prev;
24166 return;
24167 }
24168 void parser___ReduceAction325___action(val_t self, val_t param0) {
24169 struct trace_t trace = {NULL, NULL, 12363, LOCATE_parser___ReduceAction325___action};
24170 val_t variable0;
24171 val_t variable1;
24172 val_t variable2;
24173 val_t variable3;
24174 val_t variable4;
24175 val_t variable5;
24176 trace.prev = tracehead; tracehead = &trace;
24177 trace.file = LOCATE_parser;
24178 variable0 = param0;
24179 variable1 = NIT_NULL /*null*/;
24180 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24181 variable2 = variable3;
24182 variable3 = variable2 /*nodearraylist1*/;
24183 variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/;
24184 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction325___action, LOCATE_parser, 12368); nit_exit(1);}
24185 variable5 = NEW_ASelfExpr_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/
24186 variable4 = variable5;
24187 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24188 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24189 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24190 tracehead = trace.prev;
24191 return;
24192 }
24193 void parser___ReduceAction325___init(val_t self, int* init_table) {
24194 struct trace_t trace = {NULL, NULL, 12375, LOCATE_parser___ReduceAction325___init};
24195 trace.prev = tracehead; tracehead = &trace;
24196 trace.file = LOCATE_parser;
24197 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction325].i]) return;
24198 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction325].i] = 1;
24199 tracehead = trace.prev;
24200 return;
24201 }
24202 void parser___ReduceAction326___action(val_t self, val_t param0) {
24203 struct trace_t trace = {NULL, NULL, 12379, LOCATE_parser___ReduceAction326___action};
24204 val_t variable0;
24205 val_t variable1;
24206 val_t variable2;
24207 val_t variable3;
24208 val_t variable4;
24209 val_t variable5;
24210 trace.prev = tracehead; tracehead = &trace;
24211 trace.file = LOCATE_parser;
24212 variable0 = param0;
24213 variable1 = NIT_NULL /*null*/;
24214 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24215 variable2 = variable3;
24216 variable3 = variable2 /*nodearraylist1*/;
24217 variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/;
24218 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction326___action, LOCATE_parser, 12384); nit_exit(1);}
24219 variable5 = NEW_ATrueExpr_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/
24220 variable4 = variable5;
24221 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24222 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24223 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24224 tracehead = trace.prev;
24225 return;
24226 }
24227 void parser___ReduceAction326___init(val_t self, int* init_table) {
24228 struct trace_t trace = {NULL, NULL, 12391, LOCATE_parser___ReduceAction326___init};
24229 trace.prev = tracehead; tracehead = &trace;
24230 trace.file = LOCATE_parser;
24231 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction326].i]) return;
24232 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction326].i] = 1;
24233 tracehead = trace.prev;
24234 return;
24235 }
24236 void parser___ReduceAction327___action(val_t self, val_t param0) {
24237 struct trace_t trace = {NULL, NULL, 12395, LOCATE_parser___ReduceAction327___action};
24238 val_t variable0;
24239 val_t variable1;
24240 val_t variable2;
24241 val_t variable3;
24242 val_t variable4;
24243 val_t variable5;
24244 trace.prev = tracehead; tracehead = &trace;
24245 trace.file = LOCATE_parser;
24246 variable0 = param0;
24247 variable1 = NIT_NULL /*null*/;
24248 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24249 variable2 = variable3;
24250 variable3 = variable2 /*nodearraylist1*/;
24251 variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/;
24252 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction327___action, LOCATE_parser, 12400); nit_exit(1);}
24253 variable5 = NEW_AFalseExpr_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/
24254 variable4 = variable5;
24255 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24256 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24257 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24258 tracehead = trace.prev;
24259 return;
24260 }
24261 void parser___ReduceAction327___init(val_t self, int* init_table) {
24262 struct trace_t trace = {NULL, NULL, 12407, LOCATE_parser___ReduceAction327___init};
24263 trace.prev = tracehead; tracehead = &trace;
24264 trace.file = LOCATE_parser;
24265 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction327].i]) return;
24266 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction327].i] = 1;
24267 tracehead = trace.prev;
24268 return;
24269 }
24270 void parser___ReduceAction328___action(val_t self, val_t param0) {
24271 struct trace_t trace = {NULL, NULL, 12411, LOCATE_parser___ReduceAction328___action};
24272 val_t variable0;
24273 val_t variable1;
24274 val_t variable2;
24275 val_t variable3;
24276 val_t variable4;
24277 val_t variable5;
24278 trace.prev = tracehead; tracehead = &trace;
24279 trace.file = LOCATE_parser;
24280 variable0 = param0;
24281 variable1 = NIT_NULL /*null*/;
24282 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24283 variable2 = variable3;
24284 variable3 = variable2 /*nodearraylist1*/;
24285 variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/;
24286 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction328___action, LOCATE_parser, 12416); nit_exit(1);}
24287 variable5 = NEW_ANullExpr_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/
24288 variable4 = variable5;
24289 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24290 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24291 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24292 tracehead = trace.prev;
24293 return;
24294 }
24295 void parser___ReduceAction328___init(val_t self, int* init_table) {
24296 struct trace_t trace = {NULL, NULL, 12423, LOCATE_parser___ReduceAction328___init};
24297 trace.prev = tracehead; tracehead = &trace;
24298 trace.file = LOCATE_parser;
24299 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction328].i]) return;
24300 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction328].i] = 1;
24301 tracehead = trace.prev;
24302 return;
24303 }
24304 void parser___ReduceAction329___action(val_t self, val_t param0) {
24305 struct trace_t trace = {NULL, NULL, 12427, LOCATE_parser___ReduceAction329___action};
24306 val_t variable0;
24307 val_t variable1;
24308 val_t variable2;
24309 val_t variable3;
24310 val_t variable4;
24311 val_t variable5;
24312 trace.prev = tracehead; tracehead = &trace;
24313 trace.file = LOCATE_parser;
24314 variable0 = param0;
24315 variable1 = NIT_NULL /*null*/;
24316 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24317 variable2 = variable3;
24318 variable3 = variable2 /*nodearraylist1*/;
24319 variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/;
24320 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction329___action, LOCATE_parser, 12432); nit_exit(1);}
24321 variable5 = NEW_AIntExpr_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/
24322 variable4 = variable5;
24323 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24324 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24325 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24326 tracehead = trace.prev;
24327 return;
24328 }
24329 void parser___ReduceAction329___init(val_t self, int* init_table) {
24330 struct trace_t trace = {NULL, NULL, 12439, LOCATE_parser___ReduceAction329___init};
24331 trace.prev = tracehead; tracehead = &trace;
24332 trace.file = LOCATE_parser;
24333 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction329].i]) return;
24334 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction329].i] = 1;
24335 tracehead = trace.prev;
24336 return;
24337 }
24338 void parser___ReduceAction330___action(val_t self, val_t param0) {
24339 struct trace_t trace = {NULL, NULL, 12443, LOCATE_parser___ReduceAction330___action};
24340 val_t variable0;
24341 val_t variable1;
24342 val_t variable2;
24343 val_t variable3;
24344 val_t variable4;
24345 val_t variable5;
24346 trace.prev = tracehead; tracehead = &trace;
24347 trace.file = LOCATE_parser;
24348 variable0 = param0;
24349 variable1 = NIT_NULL /*null*/;
24350 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24351 variable2 = variable3;
24352 variable3 = variable2 /*nodearraylist1*/;
24353 variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/;
24354 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction330___action, LOCATE_parser, 12448); nit_exit(1);}
24355 variable5 = NEW_AFloatExpr_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/
24356 variable4 = variable5;
24357 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24358 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24359 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24360 tracehead = trace.prev;
24361 return;
24362 }
24363 void parser___ReduceAction330___init(val_t self, int* init_table) {
24364 struct trace_t trace = {NULL, NULL, 12455, LOCATE_parser___ReduceAction330___init};
24365 trace.prev = tracehead; tracehead = &trace;
24366 trace.file = LOCATE_parser;
24367 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction330].i]) return;
24368 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction330].i] = 1;
24369 tracehead = trace.prev;
24370 return;
24371 }
24372 void parser___ReduceAction331___action(val_t self, val_t param0) {
24373 struct trace_t trace = {NULL, NULL, 12459, LOCATE_parser___ReduceAction331___action};
24374 val_t variable0;
24375 val_t variable1;
24376 val_t variable2;
24377 val_t variable3;
24378 val_t variable4;
24379 val_t variable5;
24380 trace.prev = tracehead; tracehead = &trace;
24381 trace.file = LOCATE_parser;
24382 variable0 = param0;
24383 variable1 = NIT_NULL /*null*/;
24384 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24385 variable2 = variable3;
24386 variable3 = variable2 /*nodearraylist1*/;
24387 variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/;
24388 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction331___action, LOCATE_parser, 12464); nit_exit(1);}
24389 variable5 = NEW_ACharExpr_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/
24390 variable4 = variable5;
24391 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24392 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24393 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24394 tracehead = trace.prev;
24395 return;
24396 }
24397 void parser___ReduceAction331___init(val_t self, int* init_table) {
24398 struct trace_t trace = {NULL, NULL, 12471, LOCATE_parser___ReduceAction331___init};
24399 trace.prev = tracehead; tracehead = &trace;
24400 trace.file = LOCATE_parser;
24401 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction331].i]) return;
24402 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction331].i] = 1;
24403 tracehead = trace.prev;
24404 return;
24405 }
24406 void parser___ReduceAction332___action(val_t self, val_t param0) {
24407 struct trace_t trace = {NULL, NULL, 12475, LOCATE_parser___ReduceAction332___action};
24408 val_t variable0;
24409 val_t variable1;
24410 val_t variable2;
24411 val_t variable3;
24412 val_t variable4;
24413 val_t variable5;
24414 trace.prev = tracehead; tracehead = &trace;
24415 trace.file = LOCATE_parser;
24416 variable0 = param0;
24417 variable1 = NIT_NULL /*null*/;
24418 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24419 variable2 = variable3;
24420 variable3 = variable2 /*nodearraylist1*/;
24421 variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/;
24422 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction332___action, LOCATE_parser, 12480); nit_exit(1);}
24423 variable5 = NEW_AStringExpr_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/
24424 variable4 = variable5;
24425 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24426 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24427 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24428 tracehead = trace.prev;
24429 return;
24430 }
24431 void parser___ReduceAction332___init(val_t self, int* init_table) {
24432 struct trace_t trace = {NULL, NULL, 12487, LOCATE_parser___ReduceAction332___init};
24433 trace.prev = tracehead; tracehead = &trace;
24434 trace.file = LOCATE_parser;
24435 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction332].i]) return;
24436 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction332].i] = 1;
24437 tracehead = trace.prev;
24438 return;
24439 }
24440 void parser___ReduceAction333___action(val_t self, val_t param0) {
24441 struct trace_t trace = {NULL, NULL, 12491, LOCATE_parser___ReduceAction333___action};
24442 val_t variable0;
24443 val_t variable1;
24444 val_t variable2;
24445 val_t variable3;
24446 val_t variable4;
24447 trace.prev = tracehead; tracehead = &trace;
24448 trace.file = LOCATE_parser;
24449 variable0 = param0;
24450 variable1 = NIT_NULL /*null*/;
24451 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24452 variable2 = variable3;
24453 variable3 = variable2 /*nodearraylist1*/;
24454 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24455 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction333___action, LOCATE_parser, 12496); nit_exit(1);}
24456 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
24457 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24458 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
24459 tracehead = trace.prev;
24460 return;
24461 }
24462 void parser___ReduceAction333___init(val_t self, int* init_table) {
24463 struct trace_t trace = {NULL, NULL, 12500, LOCATE_parser___ReduceAction333___init};
24464 trace.prev = tracehead; tracehead = &trace;
24465 trace.file = LOCATE_parser;
24466 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction333].i]) return;
24467 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction333].i] = 1;
24468 tracehead = trace.prev;
24469 return;
24470 }
24471 void parser___ReduceAction334___action(val_t self, val_t param0) {
24472 struct trace_t trace = {NULL, NULL, 12504, LOCATE_parser___ReduceAction334___action};
24473 val_t variable0;
24474 val_t variable1;
24475 val_t variable2;
24476 val_t variable3;
24477 val_t variable4;
24478 val_t variable5;
24479 val_t variable6;
24480 trace.prev = tracehead; tracehead = &trace;
24481 trace.file = LOCATE_parser;
24482 variable0 = param0;
24483 variable1 = NIT_NULL /*null*/;
24484 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24485 variable2 = variable3;
24486 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24487 variable3 = variable4;
24488 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24489 variable4 = variable5;
24490 variable5 = variable3 /*nodearraylist2*/;
24491 variable6 = TAG_Bool(( variable5 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24492 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction334___action, LOCATE_parser, 12511); nit_exit(1);}
24493 variable1 = variable5 /*pexprnode1*/ /*node_list=*/;
24494 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24495 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
24496 tracehead = trace.prev;
24497 return;
24498 }
24499 void parser___ReduceAction334___init(val_t self, int* init_table) {
24500 struct trace_t trace = {NULL, NULL, 12515, LOCATE_parser___ReduceAction334___init};
24501 trace.prev = tracehead; tracehead = &trace;
24502 trace.file = LOCATE_parser;
24503 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction334].i]) return;
24504 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction334].i] = 1;
24505 tracehead = trace.prev;
24506 return;
24507 }
24508 void parser___ReduceAction335___action(val_t self, val_t param0) {
24509 struct trace_t trace = {NULL, NULL, 12519, LOCATE_parser___ReduceAction335___action};
24510 val_t variable0;
24511 val_t variable1;
24512 val_t variable2;
24513 val_t variable3;
24514 val_t variable4;
24515 val_t variable5;
24516 val_t variable6;
24517 val_t variable7;
24518 val_t variable8;
24519 val_t variable9;
24520 val_t variable10;
24521 val_t variable11;
24522 val_t variable12;
24523 val_t variable13;
24524 val_t variable14;
24525 val_t variable15;
24526 val_t variable16;
24527 trace.prev = tracehead; tracehead = &trace;
24528 trace.file = LOCATE_parser;
24529 variable0 = param0;
24530 variable1 = NIT_NULL /*null*/;
24531 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24532 variable2 = variable3;
24533 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24534 variable3 = variable4;
24535 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24536 variable4 = variable5;
24537 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24538 variable5 = variable6;
24539 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24540 variable6 = variable7;
24541 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24542 variable7 = variable8;
24543 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24544 variable8 = variable9;
24545 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24546 variable9 = variable10;
24547 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24548 variable10 = variable11;
24549 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24550 variable11 = variable12;
24551 variable12 = variable11 /*nodearraylist1*/;
24552 variable13 = TAG_Bool(( variable12 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24553 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction335___action, LOCATE_parser, 12533); nit_exit(1);}
24554 variable13 = variable8 /*nodearraylist4*/;
24555 variable14 = TAG_Bool(( variable13 /*tkwasnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwasnode3*/, COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
24556 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction335___action, LOCATE_parser, 12535); nit_exit(1);}
24557 variable14 = variable4 /*nodearraylist8*/;
24558 variable15 = TAG_Bool(( variable14 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/;
24559 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction335___action, LOCATE_parser, 12537); nit_exit(1);}
24560 variable16 = NEW_AAsCastExpr_parser_prod___AAsCastExpr___init_aascastexpr( variable12 /*pexprnode2*/, variable13 /*tkwasnode3*/, variable14 /*ptypenode4*/); /*new AAsCastExpr*/
24561 variable15 = variable16;
24562 variable1 = variable15 /*pexprnode1*/ /*node_list=*/;
24563 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(47)) /*Parser::go_to*/;
24564 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
24565 tracehead = trace.prev;
24566 return;
24567 }
24568 void parser___ReduceAction335___init(val_t self, int* init_table) {
24569 struct trace_t trace = {NULL, NULL, 12546, LOCATE_parser___ReduceAction335___init};
24570 trace.prev = tracehead; tracehead = &trace;
24571 trace.file = LOCATE_parser;
24572 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction335].i]) return;
24573 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction335].i] = 1;
24574 tracehead = trace.prev;
24575 return;
24576 }
24577 void parser___ReduceAction336___action(val_t self, val_t param0) {
24578 struct trace_t trace = {NULL, NULL, 12550, LOCATE_parser___ReduceAction336___action};
24579 val_t variable0;
24580 val_t variable1;
24581 val_t variable2;
24582 val_t variable3;
24583 val_t variable4;
24584 val_t variable5;
24585 val_t variable6;
24586 val_t variable7;
24587 val_t variable8;
24588 trace.prev = tracehead; tracehead = &trace;
24589 trace.file = LOCATE_parser;
24590 variable0 = param0;
24591 variable1 = NIT_NULL /*null*/;
24592 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24593 variable2 = variable3;
24594 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24595 variable3 = variable4;
24596 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
24597 variable4 = variable5;
24598 variable5 = variable3 /*nodearraylist1*/;
24599 variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
24600 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction336___action, LOCATE_parser, 12557); nit_exit(1);}
24601 variable6 = variable2 /*nodearraylist2*/;
24602 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24603 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction336___action, LOCATE_parser, 12559); nit_exit(1);}
24604 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24605 if (UNTAG_Bool(variable7)) { /*if*/
24606 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode4*/) /*AbstractArray::is_empty*/;
24607 if (UNTAG_Bool(variable7)) { /*if*/
24608 variable4 = variable5 /*listnode2*/ /*listnode4=*/;
24609 } else { /*if*/
24610 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode4*/, variable5 /*listnode2*/) /*IndexedCollection::append*/;
24611 }
24612 }
24613 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode3*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode3*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24614 if (UNTAG_Bool(variable7)) { /*if*/
24615 ((array___AbstractArray___add_t)CALL( variable4 /*listnode4*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode4*/, variable6 /*pexprnode3*/) /*AbstractArray::add*/;
24616 }
24617 variable8 = NEW_ASuperstringExpr_parser_prod___ASuperstringExpr___init_asuperstringexpr( variable4 /*listnode4*/); /*new ASuperstringExpr*/
24618 variable7 = variable8;
24619 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
24620 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(48)) /*Parser::go_to*/;
24621 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
24622 tracehead = trace.prev;
24623 return;
24624 }
24625 void parser___ReduceAction336___init(val_t self, int* init_table) {
24626 struct trace_t trace = {NULL, NULL, 12576, LOCATE_parser___ReduceAction336___init};
24627 trace.prev = tracehead; tracehead = &trace;
24628 trace.file = LOCATE_parser;
24629 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction336].i]) return;
24630 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction336].i] = 1;
24631 tracehead = trace.prev;
24632 return;
24633 }
24634 void parser___ReduceAction337___action(val_t self, val_t param0) {
24635 struct trace_t trace = {NULL, NULL, 12580, LOCATE_parser___ReduceAction337___action};
24636 val_t variable0;
24637 val_t variable1;
24638 val_t variable2;
24639 val_t variable3;
24640 val_t variable4;
24641 val_t variable5;
24642 val_t variable6;
24643 val_t variable7;
24644 val_t variable8;
24645 val_t variable9;
24646 val_t variable10;
24647 trace.prev = tracehead; tracehead = &trace;
24648 trace.file = LOCATE_parser;
24649 variable0 = param0;
24650 variable1 = NIT_NULL /*null*/;
24651 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24652 variable2 = variable3;
24653 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24654 variable3 = variable4;
24655 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24656 variable4 = variable5;
24657 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
24658 variable5 = variable6;
24659 variable6 = variable4 /*nodearraylist1*/;
24660 variable7 = TAG_Bool(( variable6 /*listnode2*/==NIT_NULL) || VAL_ISA( variable6 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
24661 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction337___action, LOCATE_parser, 12588); nit_exit(1);}
24662 variable7 = variable3 /*nodearraylist2*/;
24663 variable8 = TAG_Bool(( variable7 /*listnode3*/==NIT_NULL) || VAL_ISA( variable7 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
24664 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction337___action, LOCATE_parser, 12590); nit_exit(1);}
24665 variable8 = variable2 /*nodearraylist3*/;
24666 variable9 = TAG_Bool(( variable8 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24667 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction337___action, LOCATE_parser, 12592); nit_exit(1);}
24668 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode2*/ == NIT_NULL /*null*/) || (( variable6 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24669 if (UNTAG_Bool(variable9)) { /*if*/
24670 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
24671 if (UNTAG_Bool(variable9)) { /*if*/
24672 variable5 = variable6 /*listnode2*/ /*listnode5=*/;
24673 } else { /*if*/
24674 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable6 /*listnode2*/) /*IndexedCollection::append*/;
24675 }
24676 }
24677 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode3*/ == NIT_NULL /*null*/) || (( variable7 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24678 if (UNTAG_Bool(variable9)) { /*if*/
24679 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
24680 if (UNTAG_Bool(variable9)) { /*if*/
24681 variable5 = variable7 /*listnode3*/ /*listnode5=*/;
24682 } else { /*if*/
24683 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable7 /*listnode3*/) /*IndexedCollection::append*/;
24684 }
24685 }
24686 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode4*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24687 if (UNTAG_Bool(variable9)) { /*if*/
24688 ((array___AbstractArray___add_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*listnode5*/, variable8 /*pexprnode4*/) /*AbstractArray::add*/;
24689 }
24690 variable10 = NEW_ASuperstringExpr_parser_prod___ASuperstringExpr___init_asuperstringexpr( variable5 /*listnode5*/); /*new ASuperstringExpr*/
24691 variable9 = variable10;
24692 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
24693 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(48)) /*Parser::go_to*/;
24694 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
24695 tracehead = trace.prev;
24696 return;
24697 }
24698 void parser___ReduceAction337___init(val_t self, int* init_table) {
24699 struct trace_t trace = {NULL, NULL, 12616, LOCATE_parser___ReduceAction337___init};
24700 trace.prev = tracehead; tracehead = &trace;
24701 trace.file = LOCATE_parser;
24702 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction337].i]) return;
24703 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction337].i] = 1;
24704 tracehead = trace.prev;
24705 return;
24706 }
24707 void parser___ReduceAction338___action(val_t self, val_t param0) {
24708 struct trace_t trace = {NULL, NULL, 12620, LOCATE_parser___ReduceAction338___action};
24709 val_t variable0;
24710 val_t variable1;
24711 val_t variable2;
24712 val_t variable3;
24713 val_t variable4;
24714 val_t variable5;
24715 val_t variable6;
24716 val_t variable7;
24717 val_t variable8;
24718 val_t variable9;
24719 trace.prev = tracehead; tracehead = &trace;
24720 trace.file = LOCATE_parser;
24721 variable0 = param0;
24722 variable1 = NIT_NULL /*null*/;
24723 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24724 variable2 = variable3;
24725 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24726 variable3 = variable4;
24727 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24728 variable4 = variable5;
24729 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24730 variable5 = variable6;
24731 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
24732 variable6 = variable7;
24733 variable7 = variable5 /*nodearraylist1*/;
24734 variable8 = TAG_Bool(( variable7 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24735 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction338___action, LOCATE_parser, 12629); nit_exit(1);}
24736 variable8 = variable3 /*nodearraylist3*/;
24737 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24738 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction338___action, LOCATE_parser, 12631); nit_exit(1);}
24739 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24740 if (UNTAG_Bool(variable9)) { /*if*/
24741 ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode1*/) /*AbstractArray::add*/;
24742 }
24743 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24744 if (UNTAG_Bool(variable9)) { /*if*/
24745 ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable8 /*pexprnode2*/) /*AbstractArray::add*/;
24746 }
24747 variable1 = variable6 /*listnode3*/ /*node_list=*/;
24748 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(49)) /*Parser::go_to*/;
24749 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
24750 tracehead = trace.prev;
24751 return;
24752 }
24753 void parser___ReduceAction338___init(val_t self, int* init_table) {
24754 struct trace_t trace = {NULL, NULL, 12641, LOCATE_parser___ReduceAction338___init};
24755 trace.prev = tracehead; tracehead = &trace;
24756 trace.file = LOCATE_parser;
24757 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction338].i]) return;
24758 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction338].i] = 1;
24759 tracehead = trace.prev;
24760 return;
24761 }
24762 void parser___ReduceAction339___action(val_t self, val_t param0) {
24763 struct trace_t trace = {NULL, NULL, 12645, LOCATE_parser___ReduceAction339___action};
24764 val_t variable0;
24765 val_t variable1;
24766 val_t variable2;
24767 val_t variable3;
24768 val_t variable4;
24769 val_t variable5;
24770 trace.prev = tracehead; tracehead = &trace;
24771 trace.file = LOCATE_parser;
24772 variable0 = param0;
24773 variable1 = NIT_NULL /*null*/;
24774 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24775 variable2 = variable3;
24776 variable3 = variable2 /*nodearraylist1*/;
24777 variable4 = TAG_Bool(( variable3 /*tstartstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstartstringnode2*/, COLOR_TStartString, ID_TStartString)) /*cast TStartString*/;
24778 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction339___action, LOCATE_parser, 12650); nit_exit(1);}
24779 variable5 = NEW_AStartStringExpr_parser_prod___AStartStringExpr___init_astartstringexpr( variable3 /*tstartstringnode2*/); /*new AStartStringExpr*/
24780 variable4 = variable5;
24781 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24782 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(50)) /*Parser::go_to*/;
24783 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24784 tracehead = trace.prev;
24785 return;
24786 }
24787 void parser___ReduceAction339___init(val_t self, int* init_table) {
24788 struct trace_t trace = {NULL, NULL, 12657, LOCATE_parser___ReduceAction339___init};
24789 trace.prev = tracehead; tracehead = &trace;
24790 trace.file = LOCATE_parser;
24791 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction339].i]) return;
24792 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction339].i] = 1;
24793 tracehead = trace.prev;
24794 return;
24795 }
24796 void parser___ReduceAction340___action(val_t self, val_t param0) {
24797 struct trace_t trace = {NULL, NULL, 12661, LOCATE_parser___ReduceAction340___action};
24798 val_t variable0;
24799 val_t variable1;
24800 val_t variable2;
24801 val_t variable3;
24802 val_t variable4;
24803 val_t variable5;
24804 val_t variable6;
24805 val_t variable7;
24806 val_t variable8;
24807 val_t variable9;
24808 trace.prev = tracehead; tracehead = &trace;
24809 trace.file = LOCATE_parser;
24810 variable0 = param0;
24811 variable1 = NIT_NULL /*null*/;
24812 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24813 variable2 = variable3;
24814 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24815 variable3 = variable4;
24816 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24817 variable4 = variable5;
24818 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24819 variable5 = variable6;
24820 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
24821 variable6 = variable7;
24822 variable7 = variable5 /*nodearraylist1*/;
24823 variable8 = TAG_Bool(( variable7 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24824 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction340___action, LOCATE_parser, 12670); nit_exit(1);}
24825 variable8 = variable3 /*nodearraylist3*/;
24826 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24827 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction340___action, LOCATE_parser, 12672); nit_exit(1);}
24828 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24829 if (UNTAG_Bool(variable9)) { /*if*/
24830 ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode1*/) /*AbstractArray::add*/;
24831 }
24832 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24833 if (UNTAG_Bool(variable9)) { /*if*/
24834 ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable8 /*pexprnode2*/) /*AbstractArray::add*/;
24835 }
24836 variable1 = variable6 /*listnode3*/ /*node_list=*/;
24837 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(51)) /*Parser::go_to*/;
24838 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
24839 tracehead = trace.prev;
24840 return;
24841 }
24842 void parser___ReduceAction340___init(val_t self, int* init_table) {
24843 struct trace_t trace = {NULL, NULL, 12682, LOCATE_parser___ReduceAction340___init};
24844 trace.prev = tracehead; tracehead = &trace;
24845 trace.file = LOCATE_parser;
24846 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction340].i]) return;
24847 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction340].i] = 1;
24848 tracehead = trace.prev;
24849 return;
24850 }
24851 void parser___ReduceAction341___action(val_t self, val_t param0) {
24852 struct trace_t trace = {NULL, NULL, 12686, LOCATE_parser___ReduceAction341___action};
24853 val_t variable0;
24854 val_t variable1;
24855 val_t variable2;
24856 val_t variable3;
24857 val_t variable4;
24858 val_t variable5;
24859 trace.prev = tracehead; tracehead = &trace;
24860 trace.file = LOCATE_parser;
24861 variable0 = param0;
24862 variable1 = NIT_NULL /*null*/;
24863 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24864 variable2 = variable3;
24865 variable3 = variable2 /*nodearraylist1*/;
24866 variable4 = TAG_Bool(( variable3 /*tmidstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tmidstringnode2*/, COLOR_TMidString, ID_TMidString)) /*cast TMidString*/;
24867 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction341___action, LOCATE_parser, 12691); nit_exit(1);}
24868 variable5 = NEW_AMidStringExpr_parser_prod___AMidStringExpr___init_amidstringexpr( variable3 /*tmidstringnode2*/); /*new AMidStringExpr*/
24869 variable4 = variable5;
24870 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24871 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(52)) /*Parser::go_to*/;
24872 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24873 tracehead = trace.prev;
24874 return;
24875 }
24876 void parser___ReduceAction341___init(val_t self, int* init_table) {
24877 struct trace_t trace = {NULL, NULL, 12698, LOCATE_parser___ReduceAction341___init};
24878 trace.prev = tracehead; tracehead = &trace;
24879 trace.file = LOCATE_parser;
24880 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction341].i]) return;
24881 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction341].i] = 1;
24882 tracehead = trace.prev;
24883 return;
24884 }
24885 void parser___ReduceAction342___action(val_t self, val_t param0) {
24886 struct trace_t trace = {NULL, NULL, 12702, LOCATE_parser___ReduceAction342___action};
24887 val_t variable0;
24888 val_t variable1;
24889 val_t variable2;
24890 val_t variable3;
24891 val_t variable4;
24892 val_t variable5;
24893 trace.prev = tracehead; tracehead = &trace;
24894 trace.file = LOCATE_parser;
24895 variable0 = param0;
24896 variable1 = NIT_NULL /*null*/;
24897 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24898 variable2 = variable3;
24899 variable3 = variable2 /*nodearraylist1*/;
24900 variable4 = TAG_Bool(( variable3 /*tendstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tendstringnode2*/, COLOR_TEndString, ID_TEndString)) /*cast TEndString*/;
24901 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction342___action, LOCATE_parser, 12707); nit_exit(1);}
24902 variable5 = NEW_AEndStringExpr_parser_prod___AEndStringExpr___init_aendstringexpr( variable3 /*tendstringnode2*/); /*new AEndStringExpr*/
24903 variable4 = variable5;
24904 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
24905 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(53)) /*Parser::go_to*/;
24906 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
24907 tracehead = trace.prev;
24908 return;
24909 }
24910 void parser___ReduceAction342___init(val_t self, int* init_table) {
24911 struct trace_t trace = {NULL, NULL, 12714, LOCATE_parser___ReduceAction342___init};
24912 trace.prev = tracehead; tracehead = &trace;
24913 trace.file = LOCATE_parser;
24914 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction342].i]) return;
24915 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction342].i] = 1;
24916 tracehead = trace.prev;
24917 return;
24918 }
24919 void parser___ReduceAction343___action(val_t self, val_t param0) {
24920 struct trace_t trace = {NULL, NULL, 12718, LOCATE_parser___ReduceAction343___action};
24921 val_t variable0;
24922 val_t variable1;
24923 val_t variable2;
24924 val_t variable3;
24925 val_t variable4;
24926 val_t variable5;
24927 val_t variable6;
24928 val_t variable7;
24929 val_t variable8;
24930 val_t variable9;
24931 trace.prev = tracehead; tracehead = &trace;
24932 trace.file = LOCATE_parser;
24933 variable0 = param0;
24934 variable1 = NIT_NULL /*null*/;
24935 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24936 variable2 = variable3;
24937 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24938 variable3 = variable4;
24939 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24940 variable4 = variable5;
24941 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24942 variable5 = variable6;
24943 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24944 variable6 = variable7;
24945 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
24946 variable7 = variable8;
24947 variable8 = variable4 /*nodearraylist3*/;
24948 variable9 = TAG_Bool(( variable8 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
24949 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction343___action, LOCATE_parser, 12728); nit_exit(1);}
24950 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
24951 if (UNTAG_Bool(variable9)) { /*if*/
24952 ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pexprnode1*/) /*AbstractArray::add*/;
24953 }
24954 variable1 = variable7 /*listnode2*/ /*node_list=*/;
24955 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/;
24956 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
24957 tracehead = trace.prev;
24958 return;
24959 }
24960 void parser___ReduceAction343___init(val_t self, int* init_table) {
24961 struct trace_t trace = {NULL, NULL, 12735, LOCATE_parser___ReduceAction343___init};
24962 trace.prev = tracehead; tracehead = &trace;
24963 trace.file = LOCATE_parser;
24964 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction343].i]) return;
24965 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction343].i] = 1;
24966 tracehead = trace.prev;
24967 return;
24968 }
24969 void parser___ReduceAction344___action(val_t self, val_t param0) {
24970 struct trace_t trace = {NULL, NULL, 12739, LOCATE_parser___ReduceAction344___action};
24971 val_t variable0;
24972 val_t variable1;
24973 val_t variable2;
24974 val_t variable3;
24975 val_t variable4;
24976 val_t variable5;
24977 val_t variable6;
24978 val_t variable7;
24979 val_t variable8;
24980 val_t variable9;
24981 val_t variable10;
24982 val_t variable11;
24983 trace.prev = tracehead; tracehead = &trace;
24984 trace.file = LOCATE_parser;
24985 variable0 = param0;
24986 variable1 = NIT_NULL /*null*/;
24987 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24988 variable2 = variable3;
24989 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24990 variable3 = variable4;
24991 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24992 variable4 = variable5;
24993 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24994 variable5 = variable6;
24995 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24996 variable6 = variable7;
24997 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
24998 variable7 = variable8;
24999 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25000 variable8 = variable9;
25001 variable9 = variable5 /*nodearraylist3*/;
25002 variable10 = TAG_Bool(( variable9 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
25003 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction344___action, LOCATE_parser, 12750); nit_exit(1);}
25004 variable10 = variable3 /*nodearraylist5*/;
25005 variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
25006 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction344___action, LOCATE_parser, 12752); nit_exit(1);}
25007 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25008 if (UNTAG_Bool(variable11)) { /*if*/
25009 ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pexprnode1*/) /*AbstractArray::add*/;
25010 }
25011 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25012 if (UNTAG_Bool(variable11)) { /*if*/
25013 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*AbstractArray::is_empty*/;
25014 if (UNTAG_Bool(variable11)) { /*if*/
25015 variable8 = variable10 /*listnode2*/ /*listnode3=*/;
25016 } else { /*if*/
25017 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*IndexedCollection::append*/;
25018 }
25019 }
25020 variable1 = variable8 /*listnode3*/ /*node_list=*/;
25021 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/;
25022 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
25023 tracehead = trace.prev;
25024 return;
25025 }
25026 void parser___ReduceAction344___init(val_t self, int* init_table) {
25027 struct trace_t trace = {NULL, NULL, 12766, LOCATE_parser___ReduceAction344___init};
25028 trace.prev = tracehead; tracehead = &trace;
25029 trace.file = LOCATE_parser;
25030 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction344].i]) return;
25031 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction344].i] = 1;
25032 tracehead = trace.prev;
25033 return;
25034 }
25035 void parser___ReduceAction345___action(val_t self, val_t param0) {
25036 struct trace_t trace = {NULL, NULL, 12770, LOCATE_parser___ReduceAction345___action};
25037 val_t variable0;
25038 val_t variable1;
25039 val_t variable2;
25040 val_t variable3;
25041 val_t variable4;
25042 val_t variable5;
25043 val_t variable6;
25044 trace.prev = tracehead; tracehead = &trace;
25045 trace.file = LOCATE_parser;
25046 variable0 = param0;
25047 variable1 = NIT_NULL /*null*/;
25048 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25049 variable2 = variable3;
25050 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25051 variable3 = variable4;
25052 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25053 variable4 = variable5;
25054 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25055 variable5 = variable6;
25056 variable1 = variable5 /*listnode1*/ /*node_list=*/;
25057 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/;
25058 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
25059 tracehead = trace.prev;
25060 return;
25061 }
25062 void parser___ReduceAction345___init(val_t self, int* init_table) {
25063 struct trace_t trace = {NULL, NULL, 12780, LOCATE_parser___ReduceAction345___init};
25064 trace.prev = tracehead; tracehead = &trace;
25065 trace.file = LOCATE_parser;
25066 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction345].i]) return;
25067 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction345].i] = 1;
25068 tracehead = trace.prev;
25069 return;
25070 }
25071 void parser___ReduceAction346___action(val_t self, val_t param0) {
25072 struct trace_t trace = {NULL, NULL, 12784, LOCATE_parser___ReduceAction346___action};
25073 val_t variable0;
25074 val_t variable1;
25075 val_t variable2;
25076 val_t variable3;
25077 trace.prev = tracehead; tracehead = &trace;
25078 trace.file = LOCATE_parser;
25079 variable0 = param0;
25080 variable1 = NIT_NULL /*null*/;
25081 variable3 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25082 variable2 = variable3;
25083 variable1 = variable2 /*listnode1*/ /*node_list=*/;
25084 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(54)) /*Parser::go_to*/;
25085 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
25086 tracehead = trace.prev;
25087 return;
25088 }
25089 void parser___ReduceAction346___init(val_t self, int* init_table) {
25090 struct trace_t trace = {NULL, NULL, 12791, LOCATE_parser___ReduceAction346___init};
25091 trace.prev = tracehead; tracehead = &trace;
25092 trace.file = LOCATE_parser;
25093 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction346].i]) return;
25094 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction346].i] = 1;
25095 tracehead = trace.prev;
25096 return;
25097 }
25098 void parser___ReduceAction347___action(val_t self, val_t param0) {
25099 struct trace_t trace = {NULL, NULL, 12795, LOCATE_parser___ReduceAction347___action};
25100 val_t variable0;
25101 val_t variable1;
25102 val_t variable2;
25103 val_t variable3;
25104 val_t variable4;
25105 val_t variable5;
25106 val_t variable6;
25107 val_t variable7;
25108 val_t variable8;
25109 val_t variable9;
25110 trace.prev = tracehead; tracehead = &trace;
25111 trace.file = LOCATE_parser;
25112 variable0 = param0;
25113 variable1 = NIT_NULL /*null*/;
25114 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25115 variable2 = variable3;
25116 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25117 variable3 = variable4;
25118 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25119 variable4 = variable5;
25120 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25121 variable5 = variable6;
25122 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25123 variable6 = variable7;
25124 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25125 variable7 = variable8;
25126 variable8 = variable4 /*nodearraylist3*/;
25127 variable9 = TAG_Bool(( variable8 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
25128 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction347___action, LOCATE_parser, 12805); nit_exit(1);}
25129 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25130 if (UNTAG_Bool(variable9)) { /*if*/
25131 ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pexprnode1*/) /*AbstractArray::add*/;
25132 }
25133 variable1 = variable7 /*listnode2*/ /*node_list=*/;
25134 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/;
25135 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
25136 tracehead = trace.prev;
25137 return;
25138 }
25139 void parser___ReduceAction347___init(val_t self, int* init_table) {
25140 struct trace_t trace = {NULL, NULL, 12812, LOCATE_parser___ReduceAction347___init};
25141 trace.prev = tracehead; tracehead = &trace;
25142 trace.file = LOCATE_parser;
25143 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction347].i]) return;
25144 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction347].i] = 1;
25145 tracehead = trace.prev;
25146 return;
25147 }
25148 void parser___ReduceAction348___action(val_t self, val_t param0) {
25149 struct trace_t trace = {NULL, NULL, 12816, LOCATE_parser___ReduceAction348___action};
25150 val_t variable0;
25151 val_t variable1;
25152 val_t variable2;
25153 val_t variable3;
25154 val_t variable4;
25155 val_t variable5;
25156 val_t variable6;
25157 val_t variable7;
25158 val_t variable8;
25159 val_t variable9;
25160 val_t variable10;
25161 val_t variable11;
25162 trace.prev = tracehead; tracehead = &trace;
25163 trace.file = LOCATE_parser;
25164 variable0 = param0;
25165 variable1 = NIT_NULL /*null*/;
25166 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25167 variable2 = variable3;
25168 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25169 variable3 = variable4;
25170 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25171 variable4 = variable5;
25172 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25173 variable5 = variable6;
25174 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25175 variable6 = variable7;
25176 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25177 variable7 = variable8;
25178 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25179 variable8 = variable9;
25180 variable9 = variable5 /*nodearraylist3*/;
25181 variable10 = TAG_Bool(( variable9 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
25182 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction348___action, LOCATE_parser, 12827); nit_exit(1);}
25183 variable10 = variable3 /*nodearraylist5*/;
25184 variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
25185 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction348___action, LOCATE_parser, 12829); nit_exit(1);}
25186 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25187 if (UNTAG_Bool(variable11)) { /*if*/
25188 ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pexprnode1*/) /*AbstractArray::add*/;
25189 }
25190 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25191 if (UNTAG_Bool(variable11)) { /*if*/
25192 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*AbstractArray::is_empty*/;
25193 if (UNTAG_Bool(variable11)) { /*if*/
25194 variable8 = variable10 /*listnode2*/ /*listnode3=*/;
25195 } else { /*if*/
25196 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*IndexedCollection::append*/;
25197 }
25198 }
25199 variable1 = variable8 /*listnode3*/ /*node_list=*/;
25200 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/;
25201 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
25202 tracehead = trace.prev;
25203 return;
25204 }
25205 void parser___ReduceAction348___init(val_t self, int* init_table) {
25206 struct trace_t trace = {NULL, NULL, 12843, LOCATE_parser___ReduceAction348___init};
25207 trace.prev = tracehead; tracehead = &trace;
25208 trace.file = LOCATE_parser;
25209 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction348].i]) return;
25210 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction348].i] = 1;
25211 tracehead = trace.prev;
25212 return;
25213 }
25214 void parser___ReduceAction349___action(val_t self, val_t param0) {
25215 struct trace_t trace = {NULL, NULL, 12847, LOCATE_parser___ReduceAction349___action};
25216 val_t variable0;
25217 val_t variable1;
25218 val_t variable2;
25219 val_t variable3;
25220 val_t variable4;
25221 val_t variable5;
25222 trace.prev = tracehead; tracehead = &trace;
25223 trace.file = LOCATE_parser;
25224 variable0 = param0;
25225 variable1 = NIT_NULL /*null*/;
25226 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25227 variable2 = variable3;
25228 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25229 variable3 = variable4;
25230 variable4 = variable2 /*nodearraylist1*/;
25231 variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
25232 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction349___action, LOCATE_parser, 12853); nit_exit(1);}
25233 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25234 if (UNTAG_Bool(variable5)) { /*if*/
25235 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pexprnode1*/) /*AbstractArray::add*/;
25236 }
25237 variable1 = variable3 /*listnode2*/ /*node_list=*/;
25238 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/;
25239 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
25240 tracehead = trace.prev;
25241 return;
25242 }
25243 void parser___ReduceAction349___init(val_t self, int* init_table) {
25244 struct trace_t trace = {NULL, NULL, 12860, LOCATE_parser___ReduceAction349___init};
25245 trace.prev = tracehead; tracehead = &trace;
25246 trace.file = LOCATE_parser;
25247 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction349].i]) return;
25248 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction349].i] = 1;
25249 tracehead = trace.prev;
25250 return;
25251 }
25252 void parser___ReduceAction350___action(val_t self, val_t param0) {
25253 struct trace_t trace = {NULL, NULL, 12864, LOCATE_parser___ReduceAction350___action};
25254 val_t variable0;
25255 val_t variable1;
25256 val_t variable2;
25257 val_t variable3;
25258 val_t variable4;
25259 val_t variable5;
25260 val_t variable6;
25261 trace.prev = tracehead; tracehead = &trace;
25262 trace.file = LOCATE_parser;
25263 variable0 = param0;
25264 variable1 = NIT_NULL /*null*/;
25265 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25266 variable2 = variable3;
25267 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25268 variable3 = variable4;
25269 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25270 variable4 = variable5;
25271 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25272 variable5 = variable6;
25273 variable1 = variable5 /*listnode1*/ /*node_list=*/;
25274 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/;
25275 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
25276 tracehead = trace.prev;
25277 return;
25278 }
25279 void parser___ReduceAction350___init(val_t self, int* init_table) {
25280 struct trace_t trace = {NULL, NULL, 12874, LOCATE_parser___ReduceAction350___init};
25281 trace.prev = tracehead; tracehead = &trace;
25282 trace.file = LOCATE_parser;
25283 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction350].i]) return;
25284 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction350].i] = 1;
25285 tracehead = trace.prev;
25286 return;
25287 }
25288 void parser___ReduceAction351___action(val_t self, val_t param0) {
25289 struct trace_t trace = {NULL, NULL, 12878, LOCATE_parser___ReduceAction351___action};
25290 val_t variable0;
25291 val_t variable1;
25292 val_t variable2;
25293 val_t variable3;
25294 trace.prev = tracehead; tracehead = &trace;
25295 trace.file = LOCATE_parser;
25296 variable0 = param0;
25297 variable1 = NIT_NULL /*null*/;
25298 variable3 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25299 variable2 = variable3;
25300 variable1 = variable2 /*listnode1*/ /*node_list=*/;
25301 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(55)) /*Parser::go_to*/;
25302 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
25303 tracehead = trace.prev;
25304 return;
25305 }
25306 void parser___ReduceAction351___init(val_t self, int* init_table) {
25307 struct trace_t trace = {NULL, NULL, 12885, LOCATE_parser___ReduceAction351___init};
25308 trace.prev = tracehead; tracehead = &trace;
25309 trace.file = LOCATE_parser;
25310 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction351].i]) return;
25311 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction351].i] = 1;
25312 tracehead = trace.prev;
25313 return;
25314 }
25315 void parser___ReduceAction352___action(val_t self, val_t param0) {
25316 struct trace_t trace = {NULL, NULL, 12889, LOCATE_parser___ReduceAction352___action};
25317 val_t variable0;
25318 val_t variable1;
25319 val_t variable2;
25320 val_t variable3;
25321 val_t variable4;
25322 val_t variable5;
25323 val_t variable6;
25324 val_t variable7;
25325 val_t variable8;
25326 val_t variable9;
25327 trace.prev = tracehead; tracehead = &trace;
25328 trace.file = LOCATE_parser;
25329 variable0 = param0;
25330 variable1 = NIT_NULL /*null*/;
25331 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25332 variable2 = variable3;
25333 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25334 variable3 = variable4;
25335 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25336 variable4 = variable5;
25337 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25338 variable5 = variable6;
25339 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25340 variable6 = variable7;
25341 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25342 variable7 = variable8;
25343 variable8 = variable4 /*nodearraylist3*/;
25344 variable9 = TAG_Bool(( variable8 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
25345 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction352___action, LOCATE_parser, 12899); nit_exit(1);}
25346 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25347 if (UNTAG_Bool(variable9)) { /*if*/
25348 ((array___AbstractArray___add_t)CALL( variable7 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode2*/, variable8 /*pexprnode1*/) /*AbstractArray::add*/;
25349 }
25350 variable1 = variable7 /*listnode2*/ /*node_list=*/;
25351 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(56)) /*Parser::go_to*/;
25352 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
25353 tracehead = trace.prev;
25354 return;
25355 }
25356 void parser___ReduceAction352___init(val_t self, int* init_table) {
25357 struct trace_t trace = {NULL, NULL, 12906, LOCATE_parser___ReduceAction352___init};
25358 trace.prev = tracehead; tracehead = &trace;
25359 trace.file = LOCATE_parser;
25360 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction352].i]) return;
25361 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction352].i] = 1;
25362 tracehead = trace.prev;
25363 return;
25364 }
25365 void parser___ReduceAction353___action(val_t self, val_t param0) {
25366 struct trace_t trace = {NULL, NULL, 12910, LOCATE_parser___ReduceAction353___action};
25367 val_t variable0;
25368 val_t variable1;
25369 val_t variable2;
25370 val_t variable3;
25371 val_t variable4;
25372 val_t variable5;
25373 val_t variable6;
25374 val_t variable7;
25375 val_t variable8;
25376 val_t variable9;
25377 val_t variable10;
25378 val_t variable11;
25379 trace.prev = tracehead; tracehead = &trace;
25380 trace.file = LOCATE_parser;
25381 variable0 = param0;
25382 variable1 = NIT_NULL /*null*/;
25383 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25384 variable2 = variable3;
25385 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25386 variable3 = variable4;
25387 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25388 variable4 = variable5;
25389 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25390 variable5 = variable6;
25391 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25392 variable6 = variable7;
25393 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25394 variable7 = variable8;
25395 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25396 variable8 = variable9;
25397 variable9 = variable5 /*nodearraylist3*/;
25398 variable10 = TAG_Bool(( variable9 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
25399 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction353___action, LOCATE_parser, 12921); nit_exit(1);}
25400 variable10 = variable3 /*nodearraylist5*/;
25401 variable11 = TAG_Bool(( variable10 /*listnode2*/==NIT_NULL) || VAL_ISA( variable10 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
25402 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction353___action, LOCATE_parser, 12923); nit_exit(1);}
25403 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable9 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable9 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25404 if (UNTAG_Bool(variable11)) { /*if*/
25405 ((array___AbstractArray___add_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable8 /*listnode3*/, variable9 /*pexprnode1*/) /*AbstractArray::add*/;
25406 }
25407 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode2*/ == NIT_NULL /*null*/) || (( variable10 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25408 if (UNTAG_Bool(variable11)) { /*if*/
25409 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode3*/) /*AbstractArray::is_empty*/;
25410 if (UNTAG_Bool(variable11)) { /*if*/
25411 variable8 = variable10 /*listnode2*/ /*listnode3=*/;
25412 } else { /*if*/
25413 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode3*/, variable10 /*listnode2*/) /*IndexedCollection::append*/;
25414 }
25415 }
25416 variable1 = variable8 /*listnode3*/ /*node_list=*/;
25417 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(56)) /*Parser::go_to*/;
25418 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
25419 tracehead = trace.prev;
25420 return;
25421 }
25422 void parser___ReduceAction353___init(val_t self, int* init_table) {
25423 struct trace_t trace = {NULL, NULL, 12937, LOCATE_parser___ReduceAction353___init};
25424 trace.prev = tracehead; tracehead = &trace;
25425 trace.file = LOCATE_parser;
25426 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction353].i]) return;
25427 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction353].i] = 1;
25428 tracehead = trace.prev;
25429 return;
25430 }
25431 void parser___ReduceAction354___action(val_t self, val_t param0) {
25432 struct trace_t trace = {NULL, NULL, 12941, LOCATE_parser___ReduceAction354___action};
25433 val_t variable0;
25434 val_t variable1;
25435 val_t variable2;
25436 val_t variable3;
25437 val_t variable4;
25438 val_t variable5;
25439 val_t variable6;
25440 val_t variable7;
25441 trace.prev = tracehead; tracehead = &trace;
25442 trace.file = LOCATE_parser;
25443 variable0 = param0;
25444 variable1 = NIT_NULL /*null*/;
25445 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25446 variable2 = variable3;
25447 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25448 variable3 = variable4;
25449 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25450 variable4 = variable5;
25451 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25452 variable5 = variable6;
25453 variable6 = variable3 /*nodearraylist3*/;
25454 variable7 = TAG_Bool(( variable6 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
25455 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction354___action, LOCATE_parser, 12949); nit_exit(1);}
25456 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
25457 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(57)) /*Parser::go_to*/;
25458 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
25459 tracehead = trace.prev;
25460 return;
25461 }
25462 void parser___ReduceAction354___init(val_t self, int* init_table) {
25463 struct trace_t trace = {NULL, NULL, 12953, LOCATE_parser___ReduceAction354___init};
25464 trace.prev = tracehead; tracehead = &trace;
25465 trace.file = LOCATE_parser;
25466 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction354].i]) return;
25467 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction354].i] = 1;
25468 tracehead = trace.prev;
25469 return;
25470 }
25471 void parser___ReduceAction355___action(val_t self, val_t param0) {
25472 struct trace_t trace = {NULL, NULL, 12957, LOCATE_parser___ReduceAction355___action};
25473 val_t variable0;
25474 val_t variable1;
25475 val_t variable2;
25476 val_t variable3;
25477 val_t variable4;
25478 val_t variable5;
25479 val_t variable6;
25480 trace.prev = tracehead; tracehead = &trace;
25481 trace.file = LOCATE_parser;
25482 variable0 = param0;
25483 variable1 = NIT_NULL /*null*/;
25484 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25485 variable2 = variable3;
25486 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25487 variable3 = variable4;
25488 variable4 = variable2 /*nodearraylist1*/;
25489 variable5 = TAG_Bool(( variable4 /*tclassidnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode3*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
25490 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction355___action, LOCATE_parser, 12963); nit_exit(1);}
25491 variable6 = NEW_AQualified_parser_prod___AQualified___init_aqualified( variable3 /*listnode2*/, variable4 /*tclassidnode3*/); /*new AQualified*/
25492 variable5 = variable6;
25493 variable1 = variable5 /*pqualifiednode1*/ /*node_list=*/;
25494 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(58)) /*Parser::go_to*/;
25495 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
25496 tracehead = trace.prev;
25497 return;
25498 }
25499 void parser___ReduceAction355___init(val_t self, int* init_table) {
25500 struct trace_t trace = {NULL, NULL, 12971, LOCATE_parser___ReduceAction355___init};
25501 trace.prev = tracehead; tracehead = &trace;
25502 trace.file = LOCATE_parser;
25503 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction355].i]) return;
25504 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction355].i] = 1;
25505 tracehead = trace.prev;
25506 return;
25507 }
25508 void parser___ReduceAction356___action(val_t self, val_t param0) {
25509 struct trace_t trace = {NULL, NULL, 12975, LOCATE_parser___ReduceAction356___action};
25510 val_t variable0;
25511 val_t variable1;
25512 val_t variable2;
25513 val_t variable3;
25514 val_t variable4;
25515 val_t variable5;
25516 val_t variable6;
25517 val_t variable7;
25518 val_t variable8;
25519 trace.prev = tracehead; tracehead = &trace;
25520 trace.file = LOCATE_parser;
25521 variable0 = param0;
25522 variable1 = NIT_NULL /*null*/;
25523 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25524 variable2 = variable3;
25525 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25526 variable3 = variable4;
25527 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25528 variable4 = variable5;
25529 variable5 = variable3 /*nodearraylist1*/;
25530 variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
25531 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction356___action, LOCATE_parser, 12982); nit_exit(1);}
25532 variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25533 if (UNTAG_Bool(variable6)) { /*if*/
25534 variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
25535 if (UNTAG_Bool(variable6)) { /*if*/
25536 variable4 = variable5 /*listnode2*/ /*listnode3=*/;
25537 } else { /*if*/
25538 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode2*/) /*IndexedCollection::append*/;
25539 }
25540 }
25541 variable6 = variable2 /*nodearraylist2*/;
25542 variable7 = TAG_Bool(( variable6 /*tclassidnode4*/==NIT_NULL) || VAL_ISA( variable6 /*tclassidnode4*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
25543 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction356___action, LOCATE_parser, 12991); nit_exit(1);}
25544 variable8 = NEW_AQualified_parser_prod___AQualified___init_aqualified( variable4 /*listnode3*/, variable6 /*tclassidnode4*/); /*new AQualified*/
25545 variable7 = variable8;
25546 variable1 = variable7 /*pqualifiednode1*/ /*node_list=*/;
25547 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(58)) /*Parser::go_to*/;
25548 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
25549 tracehead = trace.prev;
25550 return;
25551 }
25552 void parser___ReduceAction356___init(val_t self, int* init_table) {
25553 struct trace_t trace = {NULL, NULL, 12999, LOCATE_parser___ReduceAction356___init};
25554 trace.prev = tracehead; tracehead = &trace;
25555 trace.file = LOCATE_parser;
25556 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction356].i]) return;
25557 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction356].i] = 1;
25558 tracehead = trace.prev;
25559 return;
25560 }
25561 void parser___ReduceAction357___action(val_t self, val_t param0) {
25562 struct trace_t trace = {NULL, NULL, 13003, LOCATE_parser___ReduceAction357___action};
25563 val_t variable0;
25564 val_t variable1;
25565 val_t variable2;
25566 val_t variable3;
25567 val_t variable4;
25568 val_t variable5;
25569 val_t variable6;
25570 trace.prev = tracehead; tracehead = &trace;
25571 trace.file = LOCATE_parser;
25572 variable0 = param0;
25573 variable1 = NIT_NULL /*null*/;
25574 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25575 variable2 = variable3;
25576 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25577 variable3 = variable4;
25578 variable4 = variable2 /*nodearraylist1*/;
25579 variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
25580 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction357___action, LOCATE_parser, 13009); nit_exit(1);}
25581 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25582 if (UNTAG_Bool(variable5)) { /*if*/
25583 variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*AbstractArray::is_empty*/;
25584 if (UNTAG_Bool(variable5)) { /*if*/
25585 variable3 = variable4 /*listnode2*/ /*listnode3=*/;
25586 } else { /*if*/
25587 ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*IndexedCollection::append*/;
25588 }
25589 }
25590 variable6 = NEW_AQualified_parser_prod___AQualified___init_aqualified( variable3 /*listnode3*/, NIT_NULL /*null*/); /*new AQualified*/
25591 variable5 = variable6;
25592 variable1 = variable5 /*pqualifiednode1*/ /*node_list=*/;
25593 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(58)) /*Parser::go_to*/;
25594 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
25595 tracehead = trace.prev;
25596 return;
25597 }
25598 void parser___ReduceAction357___init(val_t self, int* init_table) {
25599 struct trace_t trace = {NULL, NULL, 13024, LOCATE_parser___ReduceAction357___init};
25600 trace.prev = tracehead; tracehead = &trace;
25601 trace.file = LOCATE_parser;
25602 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction357].i]) return;
25603 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction357].i] = 1;
25604 tracehead = trace.prev;
25605 return;
25606 }
25607 void parser___ReduceAction358___action(val_t self, val_t param0) {
25608 struct trace_t trace = {NULL, NULL, 13028, LOCATE_parser___ReduceAction358___action};
25609 val_t variable0;
25610 val_t variable1;
25611 val_t variable2;
25612 val_t variable3;
25613 val_t variable4;
25614 val_t variable5;
25615 val_t variable6;
25616 trace.prev = tracehead; tracehead = &trace;
25617 trace.file = LOCATE_parser;
25618 variable0 = param0;
25619 variable1 = NIT_NULL /*null*/;
25620 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25621 variable2 = variable3;
25622 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25623 variable3 = variable4;
25624 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25625 variable4 = variable5;
25626 variable5 = variable4 /*nodearraylist1*/;
25627 variable6 = TAG_Bool(( variable5 /*tidnode1*/==NIT_NULL) || VAL_ISA( variable5 /*tidnode1*/, COLOR_TId, ID_TId)) /*cast TId*/;
25628 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction358___action, LOCATE_parser, 13035); nit_exit(1);}
25629 variable1 = variable5 /*tidnode1*/ /*node_list=*/;
25630 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(59)) /*Parser::go_to*/;
25631 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
25632 tracehead = trace.prev;
25633 return;
25634 }
25635 void parser___ReduceAction358___init(val_t self, int* init_table) {
25636 struct trace_t trace = {NULL, NULL, 13039, LOCATE_parser___ReduceAction358___init};
25637 trace.prev = tracehead; tracehead = &trace;
25638 trace.file = LOCATE_parser;
25639 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction358].i]) return;
25640 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction358].i] = 1;
25641 tracehead = trace.prev;
25642 return;
25643 }
25644 void parser___ReduceAction359___action(val_t self, val_t param0) {
25645 struct trace_t trace = {NULL, NULL, 13043, LOCATE_parser___ReduceAction359___action};
25646 val_t variable0;
25647 val_t variable1;
25648 val_t variable2;
25649 val_t variable3;
25650 val_t variable4;
25651 val_t variable5;
25652 val_t variable6;
25653 trace.prev = tracehead; tracehead = &trace;
25654 trace.file = LOCATE_parser;
25655 variable0 = param0;
25656 variable1 = NIT_NULL /*null*/;
25657 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25658 variable2 = variable3;
25659 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25660 variable3 = variable4;
25661 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25662 variable4 = variable5;
25663 variable5 = variable4 /*nodearraylist1*/;
25664 variable6 = TAG_Bool(( variable5 /*tclassidnode1*/==NIT_NULL) || VAL_ISA( variable5 /*tclassidnode1*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
25665 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction359___action, LOCATE_parser, 13050); nit_exit(1);}
25666 variable1 = variable5 /*tclassidnode1*/ /*node_list=*/;
25667 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(60)) /*Parser::go_to*/;
25668 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
25669 tracehead = trace.prev;
25670 return;
25671 }
25672 void parser___ReduceAction359___init(val_t self, int* init_table) {
25673 struct trace_t trace = {NULL, NULL, 13054, LOCATE_parser___ReduceAction359___init};
25674 trace.prev = tracehead; tracehead = &trace;
25675 trace.file = LOCATE_parser;
25676 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction359].i]) return;
25677 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction359].i] = 1;
25678 tracehead = trace.prev;
25679 return;
25680 }
25681 void parser___ReduceAction360___action(val_t self, val_t param0) {
25682 struct trace_t trace = {NULL, NULL, 13058, LOCATE_parser___ReduceAction360___action};
25683 val_t variable0;
25684 val_t variable1;
25685 val_t variable2;
25686 val_t variable3;
25687 trace.prev = tracehead; tracehead = &trace;
25688 trace.file = LOCATE_parser;
25689 variable0 = param0;
25690 variable1 = NIT_NULL /*null*/;
25691 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25692 variable2 = variable3;
25693 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(61)) /*Parser::go_to*/;
25694 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
25695 tracehead = trace.prev;
25696 return;
25697 }
25698 void parser___ReduceAction360___init(val_t self, int* init_table) {
25699 struct trace_t trace = {NULL, NULL, 13064, LOCATE_parser___ReduceAction360___init};
25700 trace.prev = tracehead; tracehead = &trace;
25701 trace.file = LOCATE_parser;
25702 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction360].i]) return;
25703 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction360].i] = 1;
25704 tracehead = trace.prev;
25705 return;
25706 }
25707 void parser___ReduceAction361___action(val_t self, val_t param0) {
25708 struct trace_t trace = {NULL, NULL, 13068, LOCATE_parser___ReduceAction361___action};
25709 val_t variable0;
25710 val_t variable1;
25711 val_t variable2;
25712 val_t variable3;
25713 trace.prev = tracehead; tracehead = &trace;
25714 trace.file = LOCATE_parser;
25715 variable0 = param0;
25716 variable1 = NIT_NULL /*null*/;
25717 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25718 variable2 = variable3;
25719 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(61)) /*Parser::go_to*/;
25720 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
25721 tracehead = trace.prev;
25722 return;
25723 }
25724 void parser___ReduceAction361___init(val_t self, int* init_table) {
25725 struct trace_t trace = {NULL, NULL, 13074, LOCATE_parser___ReduceAction361___init};
25726 trace.prev = tracehead; tracehead = &trace;
25727 trace.file = LOCATE_parser;
25728 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction361].i]) return;
25729 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction361].i] = 1;
25730 tracehead = trace.prev;
25731 return;
25732 }
25733 void parser___ReduceAction362___action(val_t self, val_t param0) {
25734 struct trace_t trace = {NULL, NULL, 13078, LOCATE_parser___ReduceAction362___action};
25735 val_t variable0;
25736 val_t variable1;
25737 val_t variable2;
25738 val_t variable3;
25739 val_t variable4;
25740 val_t variable5;
25741 val_t variable6;
25742 trace.prev = tracehead; tracehead = &trace;
25743 trace.file = LOCATE_parser;
25744 variable0 = param0;
25745 variable1 = NIT_NULL /*null*/;
25746 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25747 variable2 = variable3;
25748 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25749 variable3 = variable4;
25750 variable4 = variable2 /*nodearraylist1*/;
25751 variable5 = TAG_Bool(( variable4 /*listnode2*/==NIT_NULL) || VAL_ISA( variable4 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
25752 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction362___action, LOCATE_parser, 13084); nit_exit(1);}
25753 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode2*/ == NIT_NULL /*null*/) || (( variable4 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25754 if (UNTAG_Bool(variable5)) { /*if*/
25755 variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode3*/) /*AbstractArray::is_empty*/;
25756 if (UNTAG_Bool(variable5)) { /*if*/
25757 variable3 = variable4 /*listnode2*/ /*listnode3=*/;
25758 } else { /*if*/
25759 ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode3*/, variable4 /*listnode2*/) /*IndexedCollection::append*/;
25760 }
25761 }
25762 variable6 = NEW_ADoc_parser_prod___ADoc___init_adoc( variable3 /*listnode3*/); /*new ADoc*/
25763 variable5 = variable6;
25764 variable1 = variable5 /*pdocnode1*/ /*node_list=*/;
25765 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(62)) /*Parser::go_to*/;
25766 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
25767 tracehead = trace.prev;
25768 return;
25769 }
25770 void parser___ReduceAction362___init(val_t self, int* init_table) {
25771 struct trace_t trace = {NULL, NULL, 13098, LOCATE_parser___ReduceAction362___init};
25772 trace.prev = tracehead; tracehead = &trace;
25773 trace.file = LOCATE_parser;
25774 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction362].i]) return;
25775 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction362].i] = 1;
25776 tracehead = trace.prev;
25777 return;
25778 }
25779 void parser___ReduceAction363___action(val_t self, val_t param0) {
25780 struct trace_t trace = {NULL, NULL, 13102, LOCATE_parser___ReduceAction363___action};
25781 val_t variable0;
25782 val_t variable1;
25783 val_t variable2;
25784 val_t variable3;
25785 val_t variable4;
25786 val_t variable5;
25787 val_t variable6;
25788 val_t variable7;
25789 trace.prev = tracehead; tracehead = &trace;
25790 trace.file = LOCATE_parser;
25791 variable0 = param0;
25792 variable1 = NIT_NULL /*null*/;
25793 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25794 variable2 = variable3;
25795 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25796 variable3 = variable4;
25797 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
25798 variable4 = variable5;
25799 variable5 = variable2 /*nodearraylist2*/;
25800 variable6 = TAG_Bool(( variable5 /*listnode2*/==NIT_NULL) || VAL_ISA( variable5 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
25801 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction363___action, LOCATE_parser, 13109); nit_exit(1);}
25802 variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode2*/ == NIT_NULL /*null*/) || (( variable5 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
25803 if (UNTAG_Bool(variable6)) { /*if*/
25804 variable6 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
25805 if (UNTAG_Bool(variable6)) { /*if*/
25806 variable4 = variable5 /*listnode2*/ /*listnode3=*/;
25807 } else { /*if*/
25808 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode2*/) /*IndexedCollection::append*/;
25809 }
25810 }
25811 variable7 = NEW_ADoc_parser_prod___ADoc___init_adoc( variable4 /*listnode3*/); /*new ADoc*/
25812 variable6 = variable7;
25813 variable1 = variable6 /*pdocnode1*/ /*node_list=*/;
25814 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(62)) /*Parser::go_to*/;
25815 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
25816 tracehead = trace.prev;
25817 return;
25818 }
25819 void parser___ReduceAction363___init(val_t self, int* init_table) {
25820 struct trace_t trace = {NULL, NULL, 13123, LOCATE_parser___ReduceAction363___init};
25821 trace.prev = tracehead; tracehead = &trace;
25822 trace.file = LOCATE_parser;
25823 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction363].i]) return;
25824 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction363].i] = 1;
25825 tracehead = trace.prev;
25826 return;
25827 }
25828 void parser___ReduceAction364___action(val_t self, val_t param0) {
25829 struct trace_t trace = {NULL, NULL, 13127, LOCATE_parser___ReduceAction364___action};
25830 val_t variable0;
25831 val_t variable1;
25832 val_t variable2;
25833 val_t variable3;
25834 trace.prev = tracehead; tracehead = &trace;
25835 trace.file = LOCATE_parser;
25836 variable0 = param0;
25837 variable1 = NIT_NULL /*null*/;
25838 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25839 variable2 = variable3;
25840 variable1 = NIT_NULL /*null*/ /*node_list=*/;
25841 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(62)) /*Parser::go_to*/;
25842 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
25843 tracehead = trace.prev;
25844 return;
25845 }
25846 void parser___ReduceAction364___init(val_t self, int* init_table) {
25847 struct trace_t trace = {NULL, NULL, 13134, LOCATE_parser___ReduceAction364___init};
25848 trace.prev = tracehead; tracehead = &trace;
25849 trace.file = LOCATE_parser;
25850 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction364].i]) return;
25851 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction364].i] = 1;
25852 tracehead = trace.prev;
25853 return;
25854 }
25855 void parser___ReduceAction365___action(val_t self, val_t param0) {
25856 struct trace_t trace = {NULL, NULL, 13138, LOCATE_parser___ReduceAction365___action};
25857 val_t variable0;
25858 val_t variable1;
25859 val_t variable2;
25860 trace.prev = tracehead; tracehead = &trace;
25861 trace.file = LOCATE_parser;
25862 variable0 = param0;
25863 variable1 = NIT_NULL /*null*/;
25864 variable1 = NIT_NULL /*null*/ /*node_list=*/;
25865 variable2 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(63)) /*Parser::go_to*/;
25866 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable2, variable1 /*node_list*/) /*Parser::push*/;
25867 tracehead = trace.prev;
25868 return;
25869 }
25870 void parser___ReduceAction365___init(val_t self, int* init_table) {
25871 struct trace_t trace = {NULL, NULL, 13144, LOCATE_parser___ReduceAction365___init};
25872 trace.prev = tracehead; tracehead = &trace;
25873 trace.file = LOCATE_parser;
25874 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction365].i]) return;
25875 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction365].i] = 1;
25876 tracehead = trace.prev;
25877 return;
25878 }
25879 void parser___ReduceAction366___action(val_t self, val_t param0) {
25880 struct trace_t trace = {NULL, NULL, 13148, LOCATE_parser___ReduceAction366___action};
25881 val_t variable0;
25882 val_t variable1;
25883 val_t variable2;
25884 val_t variable3;
25885 val_t variable4;
25886 trace.prev = tracehead; tracehead = &trace;
25887 trace.file = LOCATE_parser;
25888 variable0 = param0;
25889 variable1 = NIT_NULL /*null*/;
25890 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25891 variable2 = variable3;
25892 variable3 = variable2 /*nodearraylist1*/;
25893 variable4 = TAG_Bool(( variable3 /*pdocnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pdocnode1*/, COLOR_PDoc, ID_PDoc)) /*cast PDoc*/;
25894 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction366___action, LOCATE_parser, 13153); nit_exit(1);}
25895 variable1 = variable3 /*pdocnode1*/ /*node_list=*/;
25896 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(63)) /*Parser::go_to*/;
25897 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
25898 tracehead = trace.prev;
25899 return;
25900 }
25901 void parser___ReduceAction366___init(val_t self, int* init_table) {
25902 struct trace_t trace = {NULL, NULL, 13157, LOCATE_parser___ReduceAction366___init};
25903 trace.prev = tracehead; tracehead = &trace;
25904 trace.file = LOCATE_parser;
25905 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction366].i]) return;
25906 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction366].i] = 1;
25907 tracehead = trace.prev;
25908 return;
25909 }
25910 void parser___ReduceAction367___action(val_t self, val_t param0) {
25911 struct trace_t trace = {NULL, NULL, 13161, LOCATE_parser___ReduceAction367___action};
25912 val_t variable0;
25913 val_t variable1;
25914 val_t variable2;
25915 val_t variable3;
25916 val_t variable4;
25917 trace.prev = tracehead; tracehead = &trace;
25918 trace.file = LOCATE_parser;
25919 variable0 = param0;
25920 variable1 = NIT_NULL /*null*/;
25921 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25922 variable2 = variable3;
25923 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25924 variable3 = variable4;
25925 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(64)) /*Parser::go_to*/;
25926 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
25927 tracehead = trace.prev;
25928 return;
25929 }
25930 void parser___ReduceAction367___init(val_t self, int* init_table) {
25931 struct trace_t trace = {NULL, NULL, 13168, LOCATE_parser___ReduceAction367___init};
25932 trace.prev = tracehead; tracehead = &trace;
25933 trace.file = LOCATE_parser;
25934 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction367].i]) return;
25935 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction367].i] = 1;
25936 tracehead = trace.prev;
25937 return;
25938 }
25939 void parser___ReduceAction368___action(val_t self, val_t param0) {
25940 struct trace_t trace = {NULL, NULL, 13172, LOCATE_parser___ReduceAction368___action};
25941 val_t variable0;
25942 val_t variable1;
25943 val_t variable2;
25944 val_t variable3;
25945 val_t variable4;
25946 val_t variable5;
25947 trace.prev = tracehead; tracehead = &trace;
25948 trace.file = LOCATE_parser;
25949 variable0 = param0;
25950 variable1 = NIT_NULL /*null*/;
25951 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25952 variable2 = variable3;
25953 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25954 variable3 = variable4;
25955 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25956 variable4 = variable5;
25957 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(64)) /*Parser::go_to*/;
25958 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
25959 tracehead = trace.prev;
25960 return;
25961 }
25962 void parser___ReduceAction368___init(val_t self, int* init_table) {
25963 struct trace_t trace = {NULL, NULL, 13180, LOCATE_parser___ReduceAction368___init};
25964 trace.prev = tracehead; tracehead = &trace;
25965 trace.file = LOCATE_parser;
25966 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction368].i]) return;
25967 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction368].i] = 1;
25968 tracehead = trace.prev;
25969 return;
25970 }
25971 void parser___ReduceAction369___action(val_t self, val_t param0) {
25972 struct trace_t trace = {NULL, NULL, 13184, LOCATE_parser___ReduceAction369___action};
25973 val_t variable0;
25974 val_t variable1;
25975 val_t variable2;
25976 val_t variable3;
25977 trace.prev = tracehead; tracehead = &trace;
25978 trace.file = LOCATE_parser;
25979 variable0 = param0;
25980 variable1 = NIT_NULL /*null*/;
25981 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
25982 variable2 = variable3;
25983 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(64)) /*Parser::go_to*/;
25984 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
25985 tracehead = trace.prev;
25986 return;
25987 }
25988 void parser___ReduceAction369___init(val_t self, int* init_table) {
25989 struct trace_t trace = {NULL, NULL, 13190, LOCATE_parser___ReduceAction369___init};
25990 trace.prev = tracehead; tracehead = &trace;
25991 trace.file = LOCATE_parser;
25992 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction369].i]) return;
25993 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction369].i] = 1;
25994 tracehead = trace.prev;
25995 return;
25996 }
25997 void parser___ReduceAction370___action(val_t self, val_t param0) {
25998 struct trace_t trace = {NULL, NULL, 13194, LOCATE_parser___ReduceAction370___action};
25999 val_t variable0;
26000 val_t variable1;
26001 val_t variable2;
26002 val_t variable3;
26003 val_t variable4;
26004 val_t variable5;
26005 val_t variable6;
26006 trace.prev = tracehead; tracehead = &trace;
26007 trace.file = LOCATE_parser;
26008 variable0 = param0;
26009 variable1 = NIT_NULL /*null*/;
26010 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26011 variable2 = variable3;
26012 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
26013 variable3 = variable4;
26014 variable4 = variable2 /*nodearraylist1*/;
26015 variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
26016 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction370___action, LOCATE_parser, 13200); nit_exit(1);}
26017 variable6 = NEW_AType_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/
26018 variable5 = variable6;
26019 variable1 = variable5 /*ptypenode1*/ /*node_list=*/;
26020 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(65)) /*Parser::go_to*/;
26021 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
26022 tracehead = trace.prev;
26023 return;
26024 }
26025 void parser___ReduceAction370___init(val_t self, int* init_table) {
26026 struct trace_t trace = {NULL, NULL, 13208, LOCATE_parser___ReduceAction370___init};
26027 trace.prev = tracehead; tracehead = &trace;
26028 trace.file = LOCATE_parser;
26029 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction370].i]) return;
26030 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction370].i] = 1;
26031 tracehead = trace.prev;
26032 return;
26033 }
26034 void parser___ReduceAction371___action(val_t self, val_t param0) {
26035 struct trace_t trace = {NULL, NULL, 13212, LOCATE_parser___ReduceAction371___action};
26036 val_t variable0;
26037 val_t variable1;
26038 val_t variable2;
26039 val_t variable3;
26040 val_t variable4;
26041 trace.prev = tracehead; tracehead = &trace;
26042 trace.file = LOCATE_parser;
26043 variable0 = param0;
26044 variable1 = NIT_NULL /*null*/;
26045 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26046 variable2 = variable3;
26047 variable3 = variable2 /*nodearraylist1*/;
26048 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26049 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction371___action, LOCATE_parser, 13217); nit_exit(1);}
26050 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
26051 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(66)) /*Parser::go_to*/;
26052 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
26053 tracehead = trace.prev;
26054 return;
26055 }
26056 void parser___ReduceAction371___init(val_t self, int* init_table) {
26057 struct trace_t trace = {NULL, NULL, 13221, LOCATE_parser___ReduceAction371___init};
26058 trace.prev = tracehead; tracehead = &trace;
26059 trace.file = LOCATE_parser;
26060 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction371].i]) return;
26061 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction371].i] = 1;
26062 tracehead = trace.prev;
26063 return;
26064 }
26065 void parser___ReduceAction372___action(val_t self, val_t param0) {
26066 struct trace_t trace = {NULL, NULL, 13225, LOCATE_parser___ReduceAction372___action};
26067 val_t variable0;
26068 val_t variable1;
26069 val_t variable2;
26070 val_t variable3;
26071 val_t variable4;
26072 val_t variable5;
26073 val_t variable6;
26074 val_t variable7;
26075 val_t variable8;
26076 val_t variable9;
26077 val_t variable10;
26078 val_t variable11;
26079 val_t variable12;
26080 val_t variable13;
26081 val_t variable14;
26082 val_t variable15;
26083 val_t variable16;
26084 val_t variable17;
26085 val_t variable18;
26086 val_t variable19;
26087 val_t variable20;
26088 trace.prev = tracehead; tracehead = &trace;
26089 trace.file = LOCATE_parser;
26090 variable0 = param0;
26091 variable1 = NIT_NULL /*null*/;
26092 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26093 variable2 = variable3;
26094 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26095 variable3 = variable4;
26096 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26097 variable4 = variable5;
26098 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26099 variable5 = variable6;
26100 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26101 variable6 = variable7;
26102 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26103 variable7 = variable8;
26104 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26105 variable8 = variable9;
26106 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26107 variable9 = variable10;
26108 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26109 variable10 = variable11;
26110 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26111 variable11 = variable12;
26112 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26113 variable12 = variable13;
26114 variable13 = variable12 /*nodearraylist1*/;
26115 variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
26116 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction372___action, LOCATE_parser, 13240); nit_exit(1);}
26117 variable14 = variable10 /*nodearraylist3*/;
26118 variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26119 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction372___action, LOCATE_parser, 13242); nit_exit(1);}
26120 variable15 = variable8 /*nodearraylist5*/;
26121 variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/;
26122 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction372___action, LOCATE_parser, 13244); nit_exit(1);}
26123 variable16 = variable6 /*nodearraylist7*/;
26124 variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26125 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction372___action, LOCATE_parser, 13246); nit_exit(1);}
26126 variable17 = variable4 /*nodearraylist9*/;
26127 variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/;
26128 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction372___action, LOCATE_parser, 13248); nit_exit(1);}
26129 variable18 = variable2 /*nodearraylist11*/;
26130 variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26131 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction372___action, LOCATE_parser, 13250); nit_exit(1);}
26132 variable20 = NEW_AIfexprExpr_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/
26133 variable19 = variable20;
26134 variable1 = variable19 /*pexprnode1*/ /*node_list=*/;
26135 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(66)) /*Parser::go_to*/;
26136 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
26137 tracehead = trace.prev;
26138 return;
26139 }
26140 void parser___ReduceAction372___init(val_t self, int* init_table) {
26141 struct trace_t trace = {NULL, NULL, 13262, LOCATE_parser___ReduceAction372___init};
26142 trace.prev = tracehead; tracehead = &trace;
26143 trace.file = LOCATE_parser;
26144 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction372].i]) return;
26145 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction372].i] = 1;
26146 tracehead = trace.prev;
26147 return;
26148 }
26149 void parser___ReduceAction373___action(val_t self, val_t param0) {
26150 struct trace_t trace = {NULL, NULL, 13266, LOCATE_parser___ReduceAction373___action};
26151 val_t variable0;
26152 val_t variable1;
26153 val_t variable2;
26154 val_t variable3;
26155 val_t variable4;
26156 trace.prev = tracehead; tracehead = &trace;
26157 trace.file = LOCATE_parser;
26158 variable0 = param0;
26159 variable1 = NIT_NULL /*null*/;
26160 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26161 variable2 = variable3;
26162 variable3 = variable2 /*nodearraylist1*/;
26163 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26164 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction373___action, LOCATE_parser, 13271); nit_exit(1);}
26165 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
26166 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(67)) /*Parser::go_to*/;
26167 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
26168 tracehead = trace.prev;
26169 return;
26170 }
26171 void parser___ReduceAction373___init(val_t self, int* init_table) {
26172 struct trace_t trace = {NULL, NULL, 13275, LOCATE_parser___ReduceAction373___init};
26173 trace.prev = tracehead; tracehead = &trace;
26174 trace.file = LOCATE_parser;
26175 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction373].i]) return;
26176 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction373].i] = 1;
26177 tracehead = trace.prev;
26178 return;
26179 }
26180 void parser___ReduceAction374___action(val_t self, val_t param0) {
26181 struct trace_t trace = {NULL, NULL, 13279, LOCATE_parser___ReduceAction374___action};
26182 val_t variable0;
26183 val_t variable1;
26184 val_t variable2;
26185 val_t variable3;
26186 val_t variable4;
26187 val_t variable5;
26188 val_t variable6;
26189 val_t variable7;
26190 val_t variable8;
26191 val_t variable9;
26192 trace.prev = tracehead; tracehead = &trace;
26193 trace.file = LOCATE_parser;
26194 variable0 = param0;
26195 variable1 = NIT_NULL /*null*/;
26196 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26197 variable2 = variable3;
26198 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26199 variable3 = variable4;
26200 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26201 variable4 = variable5;
26202 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26203 variable5 = variable6;
26204 variable6 = variable5 /*nodearraylist1*/;
26205 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26206 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction374___action, LOCATE_parser, 13287); nit_exit(1);}
26207 variable7 = variable2 /*nodearraylist4*/;
26208 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26209 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction374___action, LOCATE_parser, 13289); nit_exit(1);}
26210 variable9 = NEW_AOrExpr_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/
26211 variable8 = variable9;
26212 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26213 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(67)) /*Parser::go_to*/;
26214 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26215 tracehead = trace.prev;
26216 return;
26217 }
26218 void parser___ReduceAction374___init(val_t self, int* init_table) {
26219 struct trace_t trace = {NULL, NULL, 13297, LOCATE_parser___ReduceAction374___init};
26220 trace.prev = tracehead; tracehead = &trace;
26221 trace.file = LOCATE_parser;
26222 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction374].i]) return;
26223 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction374].i] = 1;
26224 tracehead = trace.prev;
26225 return;
26226 }
26227 void parser___ReduceAction375___action(val_t self, val_t param0) {
26228 struct trace_t trace = {NULL, NULL, 13301, LOCATE_parser___ReduceAction375___action};
26229 val_t variable0;
26230 val_t variable1;
26231 val_t variable2;
26232 val_t variable3;
26233 val_t variable4;
26234 val_t variable5;
26235 val_t variable6;
26236 val_t variable7;
26237 val_t variable8;
26238 val_t variable9;
26239 trace.prev = tracehead; tracehead = &trace;
26240 trace.file = LOCATE_parser;
26241 variable0 = param0;
26242 variable1 = NIT_NULL /*null*/;
26243 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26244 variable2 = variable3;
26245 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26246 variable3 = variable4;
26247 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26248 variable4 = variable5;
26249 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26250 variable5 = variable6;
26251 variable6 = variable5 /*nodearraylist1*/;
26252 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26253 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction375___action, LOCATE_parser, 13309); nit_exit(1);}
26254 variable7 = variable2 /*nodearraylist4*/;
26255 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26256 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction375___action, LOCATE_parser, 13311); nit_exit(1);}
26257 variable9 = NEW_AAndExpr_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/
26258 variable8 = variable9;
26259 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26260 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(67)) /*Parser::go_to*/;
26261 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26262 tracehead = trace.prev;
26263 return;
26264 }
26265 void parser___ReduceAction375___init(val_t self, int* init_table) {
26266 struct trace_t trace = {NULL, NULL, 13319, LOCATE_parser___ReduceAction375___init};
26267 trace.prev = tracehead; tracehead = &trace;
26268 trace.file = LOCATE_parser;
26269 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction375].i]) return;
26270 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction375].i] = 1;
26271 tracehead = trace.prev;
26272 return;
26273 }
26274 void parser___ReduceAction376___action(val_t self, val_t param0) {
26275 struct trace_t trace = {NULL, NULL, 13323, LOCATE_parser___ReduceAction376___action};
26276 val_t variable0;
26277 val_t variable1;
26278 val_t variable2;
26279 val_t variable3;
26280 val_t variable4;
26281 trace.prev = tracehead; tracehead = &trace;
26282 trace.file = LOCATE_parser;
26283 variable0 = param0;
26284 variable1 = NIT_NULL /*null*/;
26285 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26286 variable2 = variable3;
26287 variable3 = variable2 /*nodearraylist1*/;
26288 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26289 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction376___action, LOCATE_parser, 13328); nit_exit(1);}
26290 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
26291 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(68)) /*Parser::go_to*/;
26292 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
26293 tracehead = trace.prev;
26294 return;
26295 }
26296 void parser___ReduceAction376___init(val_t self, int* init_table) {
26297 struct trace_t trace = {NULL, NULL, 13332, LOCATE_parser___ReduceAction376___init};
26298 trace.prev = tracehead; tracehead = &trace;
26299 trace.file = LOCATE_parser;
26300 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction376].i]) return;
26301 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction376].i] = 1;
26302 tracehead = trace.prev;
26303 return;
26304 }
26305 void parser___ReduceAction377___action(val_t self, val_t param0) {
26306 struct trace_t trace = {NULL, NULL, 13336, LOCATE_parser___ReduceAction377___action};
26307 val_t variable0;
26308 val_t variable1;
26309 val_t variable2;
26310 val_t variable3;
26311 val_t variable4;
26312 val_t variable5;
26313 val_t variable6;
26314 val_t variable7;
26315 val_t variable8;
26316 trace.prev = tracehead; tracehead = &trace;
26317 trace.file = LOCATE_parser;
26318 variable0 = param0;
26319 variable1 = NIT_NULL /*null*/;
26320 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26321 variable2 = variable3;
26322 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26323 variable3 = variable4;
26324 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26325 variable4 = variable5;
26326 variable5 = variable4 /*nodearraylist1*/;
26327 variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/;
26328 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction377___action, LOCATE_parser, 13343); nit_exit(1);}
26329 variable6 = variable2 /*nodearraylist3*/;
26330 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26331 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction377___action, LOCATE_parser, 13345); nit_exit(1);}
26332 variable8 = NEW_ANotExpr_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/
26333 variable7 = variable8;
26334 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
26335 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(68)) /*Parser::go_to*/;
26336 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
26337 tracehead = trace.prev;
26338 return;
26339 }
26340 void parser___ReduceAction377___init(val_t self, int* init_table) {
26341 struct trace_t trace = {NULL, NULL, 13353, LOCATE_parser___ReduceAction377___init};
26342 trace.prev = tracehead; tracehead = &trace;
26343 trace.file = LOCATE_parser;
26344 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction377].i]) return;
26345 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction377].i] = 1;
26346 tracehead = trace.prev;
26347 return;
26348 }
26349 void parser___ReduceAction378___action(val_t self, val_t param0) {
26350 struct trace_t trace = {NULL, NULL, 13357, LOCATE_parser___ReduceAction378___action};
26351 val_t variable0;
26352 val_t variable1;
26353 val_t variable2;
26354 val_t variable3;
26355 val_t variable4;
26356 trace.prev = tracehead; tracehead = &trace;
26357 trace.file = LOCATE_parser;
26358 variable0 = param0;
26359 variable1 = NIT_NULL /*null*/;
26360 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26361 variable2 = variable3;
26362 variable3 = variable2 /*nodearraylist1*/;
26363 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26364 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction378___action, LOCATE_parser, 13362); nit_exit(1);}
26365 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
26366 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26367 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
26368 tracehead = trace.prev;
26369 return;
26370 }
26371 void parser___ReduceAction378___init(val_t self, int* init_table) {
26372 struct trace_t trace = {NULL, NULL, 13366, LOCATE_parser___ReduceAction378___init};
26373 trace.prev = tracehead; tracehead = &trace;
26374 trace.file = LOCATE_parser;
26375 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction378].i]) return;
26376 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction378].i] = 1;
26377 tracehead = trace.prev;
26378 return;
26379 }
26380 void parser___ReduceAction379___action(val_t self, val_t param0) {
26381 struct trace_t trace = {NULL, NULL, 13370, LOCATE_parser___ReduceAction379___action};
26382 val_t variable0;
26383 val_t variable1;
26384 val_t variable2;
26385 val_t variable3;
26386 val_t variable4;
26387 val_t variable5;
26388 val_t variable6;
26389 val_t variable7;
26390 val_t variable8;
26391 val_t variable9;
26392 trace.prev = tracehead; tracehead = &trace;
26393 trace.file = LOCATE_parser;
26394 variable0 = param0;
26395 variable1 = NIT_NULL /*null*/;
26396 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26397 variable2 = variable3;
26398 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26399 variable3 = variable4;
26400 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26401 variable4 = variable5;
26402 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26403 variable5 = variable6;
26404 variable6 = variable5 /*nodearraylist1*/;
26405 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26406 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction379___action, LOCATE_parser, 13378); nit_exit(1);}
26407 variable7 = variable2 /*nodearraylist4*/;
26408 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26409 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction379___action, LOCATE_parser, 13380); nit_exit(1);}
26410 variable9 = NEW_AEqExpr_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/
26411 variable8 = variable9;
26412 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26413 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26414 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26415 tracehead = trace.prev;
26416 return;
26417 }
26418 void parser___ReduceAction379___init(val_t self, int* init_table) {
26419 struct trace_t trace = {NULL, NULL, 13388, LOCATE_parser___ReduceAction379___init};
26420 trace.prev = tracehead; tracehead = &trace;
26421 trace.file = LOCATE_parser;
26422 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction379].i]) return;
26423 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction379].i] = 1;
26424 tracehead = trace.prev;
26425 return;
26426 }
26427 void parser___ReduceAction380___action(val_t self, val_t param0) {
26428 struct trace_t trace = {NULL, NULL, 13392, LOCATE_parser___ReduceAction380___action};
26429 val_t variable0;
26430 val_t variable1;
26431 val_t variable2;
26432 val_t variable3;
26433 val_t variable4;
26434 val_t variable5;
26435 val_t variable6;
26436 val_t variable7;
26437 val_t variable8;
26438 val_t variable9;
26439 trace.prev = tracehead; tracehead = &trace;
26440 trace.file = LOCATE_parser;
26441 variable0 = param0;
26442 variable1 = NIT_NULL /*null*/;
26443 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26444 variable2 = variable3;
26445 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26446 variable3 = variable4;
26447 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26448 variable4 = variable5;
26449 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26450 variable5 = variable6;
26451 variable6 = variable5 /*nodearraylist1*/;
26452 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26453 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction380___action, LOCATE_parser, 13400); nit_exit(1);}
26454 variable7 = variable2 /*nodearraylist4*/;
26455 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26456 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction380___action, LOCATE_parser, 13402); nit_exit(1);}
26457 variable9 = NEW_AEeExpr_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/
26458 variable8 = variable9;
26459 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26460 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26461 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26462 tracehead = trace.prev;
26463 return;
26464 }
26465 void parser___ReduceAction380___init(val_t self, int* init_table) {
26466 struct trace_t trace = {NULL, NULL, 13410, LOCATE_parser___ReduceAction380___init};
26467 trace.prev = tracehead; tracehead = &trace;
26468 trace.file = LOCATE_parser;
26469 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction380].i]) return;
26470 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction380].i] = 1;
26471 tracehead = trace.prev;
26472 return;
26473 }
26474 void parser___ReduceAction381___action(val_t self, val_t param0) {
26475 struct trace_t trace = {NULL, NULL, 13414, LOCATE_parser___ReduceAction381___action};
26476 val_t variable0;
26477 val_t variable1;
26478 val_t variable2;
26479 val_t variable3;
26480 val_t variable4;
26481 val_t variable5;
26482 val_t variable6;
26483 val_t variable7;
26484 val_t variable8;
26485 val_t variable9;
26486 trace.prev = tracehead; tracehead = &trace;
26487 trace.file = LOCATE_parser;
26488 variable0 = param0;
26489 variable1 = NIT_NULL /*null*/;
26490 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26491 variable2 = variable3;
26492 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26493 variable3 = variable4;
26494 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26495 variable4 = variable5;
26496 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26497 variable5 = variable6;
26498 variable6 = variable5 /*nodearraylist1*/;
26499 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26500 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction381___action, LOCATE_parser, 13422); nit_exit(1);}
26501 variable7 = variable2 /*nodearraylist4*/;
26502 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26503 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction381___action, LOCATE_parser, 13424); nit_exit(1);}
26504 variable9 = NEW_ANeExpr_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/
26505 variable8 = variable9;
26506 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26507 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26508 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26509 tracehead = trace.prev;
26510 return;
26511 }
26512 void parser___ReduceAction381___init(val_t self, int* init_table) {
26513 struct trace_t trace = {NULL, NULL, 13432, LOCATE_parser___ReduceAction381___init};
26514 trace.prev = tracehead; tracehead = &trace;
26515 trace.file = LOCATE_parser;
26516 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction381].i]) return;
26517 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction381].i] = 1;
26518 tracehead = trace.prev;
26519 return;
26520 }
26521 void parser___ReduceAction382___action(val_t self, val_t param0) {
26522 struct trace_t trace = {NULL, NULL, 13436, LOCATE_parser___ReduceAction382___action};
26523 val_t variable0;
26524 val_t variable1;
26525 val_t variable2;
26526 val_t variable3;
26527 val_t variable4;
26528 val_t variable5;
26529 val_t variable6;
26530 val_t variable7;
26531 val_t variable8;
26532 val_t variable9;
26533 trace.prev = tracehead; tracehead = &trace;
26534 trace.file = LOCATE_parser;
26535 variable0 = param0;
26536 variable1 = NIT_NULL /*null*/;
26537 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26538 variable2 = variable3;
26539 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26540 variable3 = variable4;
26541 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26542 variable4 = variable5;
26543 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26544 variable5 = variable6;
26545 variable6 = variable5 /*nodearraylist1*/;
26546 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26547 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction382___action, LOCATE_parser, 13444); nit_exit(1);}
26548 variable7 = variable2 /*nodearraylist4*/;
26549 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26550 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction382___action, LOCATE_parser, 13446); nit_exit(1);}
26551 variable9 = NEW_ALtExpr_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/
26552 variable8 = variable9;
26553 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26554 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26555 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26556 tracehead = trace.prev;
26557 return;
26558 }
26559 void parser___ReduceAction382___init(val_t self, int* init_table) {
26560 struct trace_t trace = {NULL, NULL, 13454, LOCATE_parser___ReduceAction382___init};
26561 trace.prev = tracehead; tracehead = &trace;
26562 trace.file = LOCATE_parser;
26563 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction382].i]) return;
26564 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction382].i] = 1;
26565 tracehead = trace.prev;
26566 return;
26567 }
26568 void parser___ReduceAction383___action(val_t self, val_t param0) {
26569 struct trace_t trace = {NULL, NULL, 13458, LOCATE_parser___ReduceAction383___action};
26570 val_t variable0;
26571 val_t variable1;
26572 val_t variable2;
26573 val_t variable3;
26574 val_t variable4;
26575 val_t variable5;
26576 val_t variable6;
26577 val_t variable7;
26578 val_t variable8;
26579 val_t variable9;
26580 trace.prev = tracehead; tracehead = &trace;
26581 trace.file = LOCATE_parser;
26582 variable0 = param0;
26583 variable1 = NIT_NULL /*null*/;
26584 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26585 variable2 = variable3;
26586 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26587 variable3 = variable4;
26588 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26589 variable4 = variable5;
26590 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26591 variable5 = variable6;
26592 variable6 = variable5 /*nodearraylist1*/;
26593 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26594 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction383___action, LOCATE_parser, 13466); nit_exit(1);}
26595 variable7 = variable2 /*nodearraylist4*/;
26596 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26597 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction383___action, LOCATE_parser, 13468); nit_exit(1);}
26598 variable9 = NEW_ALeExpr_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/
26599 variable8 = variable9;
26600 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26601 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26602 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26603 tracehead = trace.prev;
26604 return;
26605 }
26606 void parser___ReduceAction383___init(val_t self, int* init_table) {
26607 struct trace_t trace = {NULL, NULL, 13476, LOCATE_parser___ReduceAction383___init};
26608 trace.prev = tracehead; tracehead = &trace;
26609 trace.file = LOCATE_parser;
26610 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction383].i]) return;
26611 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction383].i] = 1;
26612 tracehead = trace.prev;
26613 return;
26614 }
26615 void parser___ReduceAction384___action(val_t self, val_t param0) {
26616 struct trace_t trace = {NULL, NULL, 13480, LOCATE_parser___ReduceAction384___action};
26617 val_t variable0;
26618 val_t variable1;
26619 val_t variable2;
26620 val_t variable3;
26621 val_t variable4;
26622 val_t variable5;
26623 val_t variable6;
26624 val_t variable7;
26625 val_t variable8;
26626 val_t variable9;
26627 trace.prev = tracehead; tracehead = &trace;
26628 trace.file = LOCATE_parser;
26629 variable0 = param0;
26630 variable1 = NIT_NULL /*null*/;
26631 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26632 variable2 = variable3;
26633 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26634 variable3 = variable4;
26635 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26636 variable4 = variable5;
26637 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26638 variable5 = variable6;
26639 variable6 = variable5 /*nodearraylist1*/;
26640 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26641 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction384___action, LOCATE_parser, 13488); nit_exit(1);}
26642 variable7 = variable2 /*nodearraylist4*/;
26643 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26644 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction384___action, LOCATE_parser, 13490); nit_exit(1);}
26645 variable9 = NEW_AGtExpr_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/
26646 variable8 = variable9;
26647 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26648 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26649 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26650 tracehead = trace.prev;
26651 return;
26652 }
26653 void parser___ReduceAction384___init(val_t self, int* init_table) {
26654 struct trace_t trace = {NULL, NULL, 13498, LOCATE_parser___ReduceAction384___init};
26655 trace.prev = tracehead; tracehead = &trace;
26656 trace.file = LOCATE_parser;
26657 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction384].i]) return;
26658 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction384].i] = 1;
26659 tracehead = trace.prev;
26660 return;
26661 }
26662 void parser___ReduceAction385___action(val_t self, val_t param0) {
26663 struct trace_t trace = {NULL, NULL, 13502, LOCATE_parser___ReduceAction385___action};
26664 val_t variable0;
26665 val_t variable1;
26666 val_t variable2;
26667 val_t variable3;
26668 val_t variable4;
26669 val_t variable5;
26670 val_t variable6;
26671 val_t variable7;
26672 val_t variable8;
26673 val_t variable9;
26674 trace.prev = tracehead; tracehead = &trace;
26675 trace.file = LOCATE_parser;
26676 variable0 = param0;
26677 variable1 = NIT_NULL /*null*/;
26678 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26679 variable2 = variable3;
26680 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26681 variable3 = variable4;
26682 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26683 variable4 = variable5;
26684 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26685 variable5 = variable6;
26686 variable6 = variable5 /*nodearraylist1*/;
26687 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26688 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction385___action, LOCATE_parser, 13510); nit_exit(1);}
26689 variable7 = variable2 /*nodearraylist4*/;
26690 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26691 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction385___action, LOCATE_parser, 13512); nit_exit(1);}
26692 variable9 = NEW_AGeExpr_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/
26693 variable8 = variable9;
26694 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26695 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26696 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26697 tracehead = trace.prev;
26698 return;
26699 }
26700 void parser___ReduceAction385___init(val_t self, int* init_table) {
26701 struct trace_t trace = {NULL, NULL, 13520, LOCATE_parser___ReduceAction385___init};
26702 trace.prev = tracehead; tracehead = &trace;
26703 trace.file = LOCATE_parser;
26704 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction385].i]) return;
26705 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction385].i] = 1;
26706 tracehead = trace.prev;
26707 return;
26708 }
26709 void parser___ReduceAction386___action(val_t self, val_t param0) {
26710 struct trace_t trace = {NULL, NULL, 13524, LOCATE_parser___ReduceAction386___action};
26711 val_t variable0;
26712 val_t variable1;
26713 val_t variable2;
26714 val_t variable3;
26715 val_t variable4;
26716 val_t variable5;
26717 val_t variable6;
26718 val_t variable7;
26719 val_t variable8;
26720 val_t variable9;
26721 trace.prev = tracehead; tracehead = &trace;
26722 trace.file = LOCATE_parser;
26723 variable0 = param0;
26724 variable1 = NIT_NULL /*null*/;
26725 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26726 variable2 = variable3;
26727 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26728 variable3 = variable4;
26729 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26730 variable4 = variable5;
26731 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26732 variable5 = variable6;
26733 variable6 = variable5 /*nodearraylist1*/;
26734 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26735 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction386___action, LOCATE_parser, 13532); nit_exit(1);}
26736 variable7 = variable2 /*nodearraylist4*/;
26737 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26738 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction386___action, LOCATE_parser, 13534); nit_exit(1);}
26739 variable9 = NEW_AStarshipExpr_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/
26740 variable8 = variable9;
26741 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26742 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26743 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26744 tracehead = trace.prev;
26745 return;
26746 }
26747 void parser___ReduceAction386___init(val_t self, int* init_table) {
26748 struct trace_t trace = {NULL, NULL, 13542, LOCATE_parser___ReduceAction386___init};
26749 trace.prev = tracehead; tracehead = &trace;
26750 trace.file = LOCATE_parser;
26751 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction386].i]) return;
26752 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction386].i] = 1;
26753 tracehead = trace.prev;
26754 return;
26755 }
26756 void parser___ReduceAction387___action(val_t self, val_t param0) {
26757 struct trace_t trace = {NULL, NULL, 13546, LOCATE_parser___ReduceAction387___action};
26758 val_t variable0;
26759 val_t variable1;
26760 val_t variable2;
26761 val_t variable3;
26762 val_t variable4;
26763 val_t variable5;
26764 val_t variable6;
26765 val_t variable7;
26766 val_t variable8;
26767 val_t variable9;
26768 trace.prev = tracehead; tracehead = &trace;
26769 trace.file = LOCATE_parser;
26770 variable0 = param0;
26771 variable1 = NIT_NULL /*null*/;
26772 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26773 variable2 = variable3;
26774 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26775 variable3 = variable4;
26776 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26777 variable4 = variable5;
26778 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26779 variable5 = variable6;
26780 variable6 = variable5 /*nodearraylist1*/;
26781 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26782 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction387___action, LOCATE_parser, 13554); nit_exit(1);}
26783 variable7 = variable2 /*nodearraylist4*/;
26784 variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
26785 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction387___action, LOCATE_parser, 13556); nit_exit(1);}
26786 variable9 = NEW_AIsaExpr_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/
26787 variable8 = variable9;
26788 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26789 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(69)) /*Parser::go_to*/;
26790 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26791 tracehead = trace.prev;
26792 return;
26793 }
26794 void parser___ReduceAction387___init(val_t self, int* init_table) {
26795 struct trace_t trace = {NULL, NULL, 13564, LOCATE_parser___ReduceAction387___init};
26796 trace.prev = tracehead; tracehead = &trace;
26797 trace.file = LOCATE_parser;
26798 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction387].i]) return;
26799 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction387].i] = 1;
26800 tracehead = trace.prev;
26801 return;
26802 }
26803 void parser___ReduceAction388___action(val_t self, val_t param0) {
26804 struct trace_t trace = {NULL, NULL, 13568, LOCATE_parser___ReduceAction388___action};
26805 val_t variable0;
26806 val_t variable1;
26807 val_t variable2;
26808 val_t variable3;
26809 val_t variable4;
26810 trace.prev = tracehead; tracehead = &trace;
26811 trace.file = LOCATE_parser;
26812 variable0 = param0;
26813 variable1 = NIT_NULL /*null*/;
26814 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26815 variable2 = variable3;
26816 variable3 = variable2 /*nodearraylist1*/;
26817 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26818 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction388___action, LOCATE_parser, 13573); nit_exit(1);}
26819 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
26820 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(70)) /*Parser::go_to*/;
26821 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
26822 tracehead = trace.prev;
26823 return;
26824 }
26825 void parser___ReduceAction388___init(val_t self, int* init_table) {
26826 struct trace_t trace = {NULL, NULL, 13577, LOCATE_parser___ReduceAction388___init};
26827 trace.prev = tracehead; tracehead = &trace;
26828 trace.file = LOCATE_parser;
26829 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction388].i]) return;
26830 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction388].i] = 1;
26831 tracehead = trace.prev;
26832 return;
26833 }
26834 void parser___ReduceAction389___action(val_t self, val_t param0) {
26835 struct trace_t trace = {NULL, NULL, 13581, LOCATE_parser___ReduceAction389___action};
26836 val_t variable0;
26837 val_t variable1;
26838 val_t variable2;
26839 val_t variable3;
26840 val_t variable4;
26841 val_t variable5;
26842 val_t variable6;
26843 val_t variable7;
26844 val_t variable8;
26845 val_t variable9;
26846 trace.prev = tracehead; tracehead = &trace;
26847 trace.file = LOCATE_parser;
26848 variable0 = param0;
26849 variable1 = NIT_NULL /*null*/;
26850 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26851 variable2 = variable3;
26852 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26853 variable3 = variable4;
26854 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26855 variable4 = variable5;
26856 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26857 variable5 = variable6;
26858 variable6 = variable5 /*nodearraylist1*/;
26859 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26860 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction389___action, LOCATE_parser, 13589); nit_exit(1);}
26861 variable7 = variable2 /*nodearraylist4*/;
26862 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26863 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction389___action, LOCATE_parser, 13591); nit_exit(1);}
26864 variable9 = NEW_APlusExpr_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/
26865 variable8 = variable9;
26866 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26867 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(70)) /*Parser::go_to*/;
26868 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26869 tracehead = trace.prev;
26870 return;
26871 }
26872 void parser___ReduceAction389___init(val_t self, int* init_table) {
26873 struct trace_t trace = {NULL, NULL, 13599, LOCATE_parser___ReduceAction389___init};
26874 trace.prev = tracehead; tracehead = &trace;
26875 trace.file = LOCATE_parser;
26876 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction389].i]) return;
26877 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction389].i] = 1;
26878 tracehead = trace.prev;
26879 return;
26880 }
26881 void parser___ReduceAction390___action(val_t self, val_t param0) {
26882 struct trace_t trace = {NULL, NULL, 13603, LOCATE_parser___ReduceAction390___action};
26883 val_t variable0;
26884 val_t variable1;
26885 val_t variable2;
26886 val_t variable3;
26887 val_t variable4;
26888 val_t variable5;
26889 val_t variable6;
26890 val_t variable7;
26891 val_t variable8;
26892 val_t variable9;
26893 trace.prev = tracehead; tracehead = &trace;
26894 trace.file = LOCATE_parser;
26895 variable0 = param0;
26896 variable1 = NIT_NULL /*null*/;
26897 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26898 variable2 = variable3;
26899 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26900 variable3 = variable4;
26901 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26902 variable4 = variable5;
26903 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26904 variable5 = variable6;
26905 variable6 = variable5 /*nodearraylist1*/;
26906 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26907 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction390___action, LOCATE_parser, 13611); nit_exit(1);}
26908 variable7 = variable2 /*nodearraylist4*/;
26909 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26910 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction390___action, LOCATE_parser, 13613); nit_exit(1);}
26911 variable9 = NEW_AMinusExpr_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/
26912 variable8 = variable9;
26913 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26914 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(70)) /*Parser::go_to*/;
26915 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26916 tracehead = trace.prev;
26917 return;
26918 }
26919 void parser___ReduceAction390___init(val_t self, int* init_table) {
26920 struct trace_t trace = {NULL, NULL, 13621, LOCATE_parser___ReduceAction390___init};
26921 trace.prev = tracehead; tracehead = &trace;
26922 trace.file = LOCATE_parser;
26923 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction390].i]) return;
26924 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction390].i] = 1;
26925 tracehead = trace.prev;
26926 return;
26927 }
26928 void parser___ReduceAction391___action(val_t self, val_t param0) {
26929 struct trace_t trace = {NULL, NULL, 13625, LOCATE_parser___ReduceAction391___action};
26930 val_t variable0;
26931 val_t variable1;
26932 val_t variable2;
26933 val_t variable3;
26934 val_t variable4;
26935 trace.prev = tracehead; tracehead = &trace;
26936 trace.file = LOCATE_parser;
26937 variable0 = param0;
26938 variable1 = NIT_NULL /*null*/;
26939 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26940 variable2 = variable3;
26941 variable3 = variable2 /*nodearraylist1*/;
26942 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26943 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction391___action, LOCATE_parser, 13630); nit_exit(1);}
26944 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
26945 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/;
26946 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
26947 tracehead = trace.prev;
26948 return;
26949 }
26950 void parser___ReduceAction391___init(val_t self, int* init_table) {
26951 struct trace_t trace = {NULL, NULL, 13634, LOCATE_parser___ReduceAction391___init};
26952 trace.prev = tracehead; tracehead = &trace;
26953 trace.file = LOCATE_parser;
26954 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction391].i]) return;
26955 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction391].i] = 1;
26956 tracehead = trace.prev;
26957 return;
26958 }
26959 void parser___ReduceAction392___action(val_t self, val_t param0) {
26960 struct trace_t trace = {NULL, NULL, 13638, LOCATE_parser___ReduceAction392___action};
26961 val_t variable0;
26962 val_t variable1;
26963 val_t variable2;
26964 val_t variable3;
26965 val_t variable4;
26966 val_t variable5;
26967 val_t variable6;
26968 val_t variable7;
26969 val_t variable8;
26970 val_t variable9;
26971 trace.prev = tracehead; tracehead = &trace;
26972 trace.file = LOCATE_parser;
26973 variable0 = param0;
26974 variable1 = NIT_NULL /*null*/;
26975 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26976 variable2 = variable3;
26977 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26978 variable3 = variable4;
26979 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26980 variable4 = variable5;
26981 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
26982 variable5 = variable6;
26983 variable6 = variable5 /*nodearraylist1*/;
26984 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26985 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction392___action, LOCATE_parser, 13646); nit_exit(1);}
26986 variable7 = variable2 /*nodearraylist4*/;
26987 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
26988 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction392___action, LOCATE_parser, 13648); nit_exit(1);}
26989 variable9 = NEW_AStarExpr_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/
26990 variable8 = variable9;
26991 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
26992 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/;
26993 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
26994 tracehead = trace.prev;
26995 return;
26996 }
26997 void parser___ReduceAction392___init(val_t self, int* init_table) {
26998 struct trace_t trace = {NULL, NULL, 13656, LOCATE_parser___ReduceAction392___init};
26999 trace.prev = tracehead; tracehead = &trace;
27000 trace.file = LOCATE_parser;
27001 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction392].i]) return;
27002 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction392].i] = 1;
27003 tracehead = trace.prev;
27004 return;
27005 }
27006 void parser___ReduceAction393___action(val_t self, val_t param0) {
27007 struct trace_t trace = {NULL, NULL, 13660, LOCATE_parser___ReduceAction393___action};
27008 val_t variable0;
27009 val_t variable1;
27010 val_t variable2;
27011 val_t variable3;
27012 val_t variable4;
27013 val_t variable5;
27014 val_t variable6;
27015 val_t variable7;
27016 val_t variable8;
27017 val_t variable9;
27018 trace.prev = tracehead; tracehead = &trace;
27019 trace.file = LOCATE_parser;
27020 variable0 = param0;
27021 variable1 = NIT_NULL /*null*/;
27022 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27023 variable2 = variable3;
27024 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27025 variable3 = variable4;
27026 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27027 variable4 = variable5;
27028 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27029 variable5 = variable6;
27030 variable6 = variable5 /*nodearraylist1*/;
27031 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27032 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction393___action, LOCATE_parser, 13668); nit_exit(1);}
27033 variable7 = variable2 /*nodearraylist4*/;
27034 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27035 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction393___action, LOCATE_parser, 13670); nit_exit(1);}
27036 variable9 = NEW_ASlashExpr_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/
27037 variable8 = variable9;
27038 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
27039 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/;
27040 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
27041 tracehead = trace.prev;
27042 return;
27043 }
27044 void parser___ReduceAction393___init(val_t self, int* init_table) {
27045 struct trace_t trace = {NULL, NULL, 13678, LOCATE_parser___ReduceAction393___init};
27046 trace.prev = tracehead; tracehead = &trace;
27047 trace.file = LOCATE_parser;
27048 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction393].i]) return;
27049 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction393].i] = 1;
27050 tracehead = trace.prev;
27051 return;
27052 }
27053 void parser___ReduceAction394___action(val_t self, val_t param0) {
27054 struct trace_t trace = {NULL, NULL, 13682, LOCATE_parser___ReduceAction394___action};
27055 val_t variable0;
27056 val_t variable1;
27057 val_t variable2;
27058 val_t variable3;
27059 val_t variable4;
27060 val_t variable5;
27061 val_t variable6;
27062 val_t variable7;
27063 val_t variable8;
27064 val_t variable9;
27065 trace.prev = tracehead; tracehead = &trace;
27066 trace.file = LOCATE_parser;
27067 variable0 = param0;
27068 variable1 = NIT_NULL /*null*/;
27069 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27070 variable2 = variable3;
27071 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27072 variable3 = variable4;
27073 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27074 variable4 = variable5;
27075 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27076 variable5 = variable6;
27077 variable6 = variable5 /*nodearraylist1*/;
27078 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27079 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction394___action, LOCATE_parser, 13690); nit_exit(1);}
27080 variable7 = variable2 /*nodearraylist4*/;
27081 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27082 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction394___action, LOCATE_parser, 13692); nit_exit(1);}
27083 variable9 = NEW_APercentExpr_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/
27084 variable8 = variable9;
27085 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
27086 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(71)) /*Parser::go_to*/;
27087 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
27088 tracehead = trace.prev;
27089 return;
27090 }
27091 void parser___ReduceAction394___init(val_t self, int* init_table) {
27092 struct trace_t trace = {NULL, NULL, 13700, LOCATE_parser___ReduceAction394___init};
27093 trace.prev = tracehead; tracehead = &trace;
27094 trace.file = LOCATE_parser;
27095 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction394].i]) return;
27096 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction394].i] = 1;
27097 tracehead = trace.prev;
27098 return;
27099 }
27100 void parser___ReduceAction395___action(val_t self, val_t param0) {
27101 struct trace_t trace = {NULL, NULL, 13704, LOCATE_parser___ReduceAction395___action};
27102 val_t variable0;
27103 val_t variable1;
27104 val_t variable2;
27105 val_t variable3;
27106 val_t variable4;
27107 trace.prev = tracehead; tracehead = &trace;
27108 trace.file = LOCATE_parser;
27109 variable0 = param0;
27110 variable1 = NIT_NULL /*null*/;
27111 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27112 variable2 = variable3;
27113 variable3 = variable2 /*nodearraylist1*/;
27114 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27115 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction395___action, LOCATE_parser, 13709); nit_exit(1);}
27116 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
27117 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(72)) /*Parser::go_to*/;
27118 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
27119 tracehead = trace.prev;
27120 return;
27121 }
27122 void parser___ReduceAction395___init(val_t self, int* init_table) {
27123 struct trace_t trace = {NULL, NULL, 13713, LOCATE_parser___ReduceAction395___init};
27124 trace.prev = tracehead; tracehead = &trace;
27125 trace.file = LOCATE_parser;
27126 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction395].i]) return;
27127 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction395].i] = 1;
27128 tracehead = trace.prev;
27129 return;
27130 }
27131 void parser___ReduceAction396___action(val_t self, val_t param0) {
27132 struct trace_t trace = {NULL, NULL, 13717, LOCATE_parser___ReduceAction396___action};
27133 val_t variable0;
27134 val_t variable1;
27135 val_t variable2;
27136 val_t variable3;
27137 val_t variable4;
27138 val_t variable5;
27139 val_t variable6;
27140 val_t variable7;
27141 val_t variable8;
27142 trace.prev = tracehead; tracehead = &trace;
27143 trace.file = LOCATE_parser;
27144 variable0 = param0;
27145 variable1 = NIT_NULL /*null*/;
27146 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27147 variable2 = variable3;
27148 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27149 variable3 = variable4;
27150 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27151 variable4 = variable5;
27152 variable5 = variable4 /*nodearraylist1*/;
27153 variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/;
27154 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction396___action, LOCATE_parser, 13724); nit_exit(1);}
27155 variable6 = variable2 /*nodearraylist3*/;
27156 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27157 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction396___action, LOCATE_parser, 13726); nit_exit(1);}
27158 variable8 = NEW_AUminusExpr_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/
27159 variable7 = variable8;
27160 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
27161 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(72)) /*Parser::go_to*/;
27162 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
27163 tracehead = trace.prev;
27164 return;
27165 }
27166 void parser___ReduceAction396___init(val_t self, int* init_table) {
27167 struct trace_t trace = {NULL, NULL, 13734, LOCATE_parser___ReduceAction396___init};
27168 trace.prev = tracehead; tracehead = &trace;
27169 trace.file = LOCATE_parser;
27170 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction396].i]) return;
27171 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction396].i] = 1;
27172 tracehead = trace.prev;
27173 return;
27174 }
27175 void parser___ReduceAction397___action(val_t self, val_t param0) {
27176 struct trace_t trace = {NULL, NULL, 13738, LOCATE_parser___ReduceAction397___action};
27177 val_t variable0;
27178 val_t variable1;
27179 val_t variable2;
27180 val_t variable3;
27181 val_t variable4;
27182 val_t variable5;
27183 val_t variable6;
27184 val_t variable7;
27185 val_t variable8;
27186 trace.prev = tracehead; tracehead = &trace;
27187 trace.file = LOCATE_parser;
27188 variable0 = param0;
27189 variable1 = NIT_NULL /*null*/;
27190 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27191 variable2 = variable3;
27192 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27193 variable3 = variable4;
27194 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27195 variable4 = variable5;
27196 variable5 = variable4 /*nodearraylist1*/;
27197 variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/;
27198 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction397___action, LOCATE_parser, 13745); nit_exit(1);}
27199 variable6 = variable2 /*nodearraylist3*/;
27200 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27201 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction397___action, LOCATE_parser, 13747); nit_exit(1);}
27202 variable8 = NEW_AOnceExpr_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/
27203 variable7 = variable8;
27204 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
27205 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(72)) /*Parser::go_to*/;
27206 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
27207 tracehead = trace.prev;
27208 return;
27209 }
27210 void parser___ReduceAction397___init(val_t self, int* init_table) {
27211 struct trace_t trace = {NULL, NULL, 13755, LOCATE_parser___ReduceAction397___init};
27212 trace.prev = tracehead; tracehead = &trace;
27213 trace.file = LOCATE_parser;
27214 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction397].i]) return;
27215 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction397].i] = 1;
27216 tracehead = trace.prev;
27217 return;
27218 }
27219 void parser___ReduceAction398___action(val_t self, val_t param0) {
27220 struct trace_t trace = {NULL, NULL, 13759, LOCATE_parser___ReduceAction398___action};
27221 val_t variable0;
27222 val_t variable1;
27223 val_t variable2;
27224 val_t variable3;
27225 val_t variable4;
27226 trace.prev = tracehead; tracehead = &trace;
27227 trace.file = LOCATE_parser;
27228 variable0 = param0;
27229 variable1 = NIT_NULL /*null*/;
27230 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27231 variable2 = variable3;
27232 variable3 = variable2 /*nodearraylist1*/;
27233 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27234 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction398___action, LOCATE_parser, 13764); nit_exit(1);}
27235 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
27236 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(73)) /*Parser::go_to*/;
27237 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
27238 tracehead = trace.prev;
27239 return;
27240 }
27241 void parser___ReduceAction398___init(val_t self, int* init_table) {
27242 struct trace_t trace = {NULL, NULL, 13768, LOCATE_parser___ReduceAction398___init};
27243 trace.prev = tracehead; tracehead = &trace;
27244 trace.file = LOCATE_parser;
27245 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction398].i]) return;
27246 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction398].i] = 1;
27247 tracehead = trace.prev;
27248 return;
27249 }
27250 void parser___ReduceAction399___action(val_t self, val_t param0) {
27251 struct trace_t trace = {NULL, NULL, 13772, LOCATE_parser___ReduceAction399___action};
27252 val_t variable0;
27253 val_t variable1;
27254 val_t variable2;
27255 val_t variable3;
27256 val_t variable4;
27257 val_t variable5;
27258 val_t variable6;
27259 val_t variable7;
27260 val_t variable8;
27261 val_t variable9;
27262 val_t variable10;
27263 val_t variable11;
27264 trace.prev = tracehead; tracehead = &trace;
27265 trace.file = LOCATE_parser;
27266 variable0 = param0;
27267 variable1 = NIT_NULL /*null*/;
27268 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27269 variable2 = variable3;
27270 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27271 variable3 = variable4;
27272 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27273 variable4 = variable5;
27274 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27275 variable5 = variable6;
27276 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27277 variable6 = variable7;
27278 variable7 = variable5 /*nodearraylist1*/;
27279 variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
27280 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction399___action, LOCATE_parser, 13781); nit_exit(1);}
27281 variable8 = variable3 /*nodearraylist3*/;
27282 variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
27283 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction399___action, LOCATE_parser, 13783); nit_exit(1);}
27284 variable9 = variable2 /*nodearraylist4*/;
27285 variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27286 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction399___action, LOCATE_parser, 13785); nit_exit(1);}
27287 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27288 if (UNTAG_Bool(variable10)) { /*if*/
27289 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*AbstractArray::is_empty*/;
27290 if (UNTAG_Bool(variable10)) { /*if*/
27291 variable6 = variable9 /*listnode5*/ /*listnode6=*/;
27292 } else { /*if*/
27293 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*IndexedCollection::append*/;
27294 }
27295 }
27296 variable11 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/
27297 variable10 = variable11;
27298 variable1 = variable10 /*pexprnode1*/ /*node_list=*/;
27299 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(73)) /*Parser::go_to*/;
27300 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
27301 tracehead = trace.prev;
27302 return;
27303 }
27304 void parser___ReduceAction399___init(val_t self, int* init_table) {
27305 struct trace_t trace = {NULL, NULL, 13802, LOCATE_parser___ReduceAction399___init};
27306 trace.prev = tracehead; tracehead = &trace;
27307 trace.file = LOCATE_parser;
27308 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction399].i]) return;
27309 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction399].i] = 1;
27310 tracehead = trace.prev;
27311 return;
27312 }
27313 void parser___ReduceAction400___action(val_t self, val_t param0) {
27314 struct trace_t trace = {NULL, NULL, 13806, LOCATE_parser___ReduceAction400___action};
27315 val_t variable0;
27316 val_t variable1;
27317 val_t variable2;
27318 val_t variable3;
27319 val_t variable4;
27320 val_t variable5;
27321 val_t variable6;
27322 val_t variable7;
27323 val_t variable8;
27324 val_t variable9;
27325 trace.prev = tracehead; tracehead = &trace;
27326 trace.file = LOCATE_parser;
27327 variable0 = param0;
27328 variable1 = NIT_NULL /*null*/;
27329 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27330 variable2 = variable3;
27331 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27332 variable3 = variable4;
27333 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27334 variable4 = variable5;
27335 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27336 variable5 = variable6;
27337 variable6 = variable5 /*nodearraylist1*/;
27338 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27339 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction400___action, LOCATE_parser, 13814); nit_exit(1);}
27340 variable7 = variable2 /*nodearraylist4*/;
27341 variable8 = TAG_Bool(( variable7 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
27342 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction400___action, LOCATE_parser, 13816); nit_exit(1);}
27343 variable9 = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr( variable6 /*pexprnode2*/, variable7 /*tattridnode3*/); /*new AAttrExpr*/
27344 variable8 = variable9;
27345 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
27346 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27347 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
27348 tracehead = trace.prev;
27349 return;
27350 }
27351 void parser___ReduceAction400___init(val_t self, int* init_table) {
27352 struct trace_t trace = {NULL, NULL, 13824, LOCATE_parser___ReduceAction400___init};
27353 trace.prev = tracehead; tracehead = &trace;
27354 trace.file = LOCATE_parser;
27355 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction400].i]) return;
27356 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction400].i] = 1;
27357 tracehead = trace.prev;
27358 return;
27359 }
27360 void parser___ReduceAction401___action(val_t self, val_t param0) {
27361 struct trace_t trace = {NULL, NULL, 13828, LOCATE_parser___ReduceAction401___action};
27362 val_t variable0;
27363 val_t variable1;
27364 val_t variable2;
27365 val_t variable3;
27366 val_t variable4;
27367 val_t variable5;
27368 val_t variable6;
27369 trace.prev = tracehead; tracehead = &trace;
27370 trace.file = LOCATE_parser;
27371 variable0 = param0;
27372 variable1 = NIT_NULL /*null*/;
27373 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27374 variable2 = variable3;
27375 variable4 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
27376 variable3 = variable4;
27377 variable4 = variable2 /*nodearraylist1*/;
27378 variable5 = TAG_Bool(( variable4 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
27379 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction401___action, LOCATE_parser, 13835); nit_exit(1);}
27380 variable6 = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr( variable3 /*pexprnode2*/, variable4 /*tattridnode3*/); /*new AAttrExpr*/
27381 variable5 = variable6;
27382 variable1 = variable5 /*pexprnode1*/ /*node_list=*/;
27383 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27384 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
27385 tracehead = trace.prev;
27386 return;
27387 }
27388 void parser___ReduceAction401___init(val_t self, int* init_table) {
27389 struct trace_t trace = {NULL, NULL, 13843, LOCATE_parser___ReduceAction401___init};
27390 trace.prev = tracehead; tracehead = &trace;
27391 trace.file = LOCATE_parser;
27392 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction401].i]) return;
27393 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction401].i] = 1;
27394 tracehead = trace.prev;
27395 return;
27396 }
27397 void parser___ReduceAction402___action(val_t self, val_t param0) {
27398 struct trace_t trace = {NULL, NULL, 13847, LOCATE_parser___ReduceAction402___action};
27399 val_t variable0;
27400 val_t variable1;
27401 val_t variable2;
27402 val_t variable3;
27403 val_t variable4;
27404 val_t variable5;
27405 val_t variable6;
27406 val_t variable7;
27407 val_t variable8;
27408 val_t variable9;
27409 val_t variable10;
27410 val_t variable11;
27411 val_t variable12;
27412 trace.prev = tracehead; tracehead = &trace;
27413 trace.file = LOCATE_parser;
27414 variable0 = param0;
27415 variable1 = NIT_NULL /*null*/;
27416 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27417 variable2 = variable3;
27418 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27419 variable3 = variable4;
27420 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27421 variable4 = variable5;
27422 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27423 variable5 = variable6;
27424 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27425 variable6 = variable7;
27426 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27427 variable7 = variable8;
27428 variable8 = variable6 /*nodearraylist1*/;
27429 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27430 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction402___action, LOCATE_parser, 13857); nit_exit(1);}
27431 variable9 = variable3 /*nodearraylist4*/;
27432 variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
27433 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction402___action, LOCATE_parser, 13859); nit_exit(1);}
27434 variable10 = variable2 /*nodearraylist5*/;
27435 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27436 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction402___action, LOCATE_parser, 13861); nit_exit(1);}
27437 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27438 if (UNTAG_Bool(variable11)) { /*if*/
27439 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
27440 if (UNTAG_Bool(variable11)) { /*if*/
27441 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
27442 } else { /*if*/
27443 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
27444 }
27445 }
27446 variable12 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/
27447 variable11 = variable12;
27448 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
27449 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27450 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
27451 tracehead = trace.prev;
27452 return;
27453 }
27454 void parser___ReduceAction402___init(val_t self, int* init_table) {
27455 struct trace_t trace = {NULL, NULL, 13877, LOCATE_parser___ReduceAction402___init};
27456 trace.prev = tracehead; tracehead = &trace;
27457 trace.file = LOCATE_parser;
27458 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction402].i]) return;
27459 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction402].i] = 1;
27460 tracehead = trace.prev;
27461 return;
27462 }
27463 void parser___ReduceAction403___action(val_t self, val_t param0) {
27464 struct trace_t trace = {NULL, NULL, 13881, LOCATE_parser___ReduceAction403___action};
27465 val_t variable0;
27466 val_t variable1;
27467 val_t variable2;
27468 val_t variable3;
27469 val_t variable4;
27470 val_t variable5;
27471 val_t variable6;
27472 val_t variable7;
27473 val_t variable8;
27474 val_t variable9;
27475 trace.prev = tracehead; tracehead = &trace;
27476 trace.file = LOCATE_parser;
27477 variable0 = param0;
27478 variable1 = NIT_NULL /*null*/;
27479 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27480 variable2 = variable3;
27481 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27482 variable3 = variable4;
27483 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27484 variable4 = variable5;
27485 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
27486 variable5 = variable6;
27487 variable6 = variable3 /*nodearraylist1*/;
27488 variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
27489 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction403___action, LOCATE_parser, 13890); nit_exit(1);}
27490 variable7 = variable2 /*nodearraylist2*/;
27491 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27492 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction403___action, LOCATE_parser, 13892); nit_exit(1);}
27493 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27494 if (UNTAG_Bool(variable8)) { /*if*/
27495 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
27496 if (UNTAG_Bool(variable8)) { /*if*/
27497 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
27498 } else { /*if*/
27499 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
27500 }
27501 }
27502 variable9 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/
27503 variable8 = variable9;
27504 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
27505 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27506 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
27507 tracehead = trace.prev;
27508 return;
27509 }
27510 void parser___ReduceAction403___init(val_t self, int* init_table) {
27511 struct trace_t trace = {NULL, NULL, 13908, LOCATE_parser___ReduceAction403___init};
27512 trace.prev = tracehead; tracehead = &trace;
27513 trace.file = LOCATE_parser;
27514 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction403].i]) return;
27515 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction403].i] = 1;
27516 tracehead = trace.prev;
27517 return;
27518 }
27519 void parser___ReduceAction404___action(val_t self, val_t param0) {
27520 struct trace_t trace = {NULL, NULL, 13912, LOCATE_parser___ReduceAction404___action};
27521 val_t variable0;
27522 val_t variable1;
27523 val_t variable2;
27524 val_t variable3;
27525 val_t variable4;
27526 val_t variable5;
27527 val_t variable6;
27528 val_t variable7;
27529 val_t variable8;
27530 trace.prev = tracehead; tracehead = &trace;
27531 trace.file = LOCATE_parser;
27532 variable0 = param0;
27533 variable1 = NIT_NULL /*null*/;
27534 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27535 variable2 = variable3;
27536 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27537 variable3 = variable4;
27538 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27539 variable4 = variable5;
27540 variable5 = variable3 /*nodearraylist1*/;
27541 variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
27542 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction404___action, LOCATE_parser, 13919); nit_exit(1);}
27543 variable6 = variable2 /*nodearraylist2*/;
27544 variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27545 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction404___action, LOCATE_parser, 13921); nit_exit(1);}
27546 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27547 if (UNTAG_Bool(variable7)) { /*if*/
27548 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
27549 if (UNTAG_Bool(variable7)) { /*if*/
27550 variable4 = variable6 /*listnode4*/ /*listnode5=*/;
27551 } else { /*if*/
27552 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*IndexedCollection::append*/;
27553 }
27554 }
27555 variable8 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/
27556 variable7 = variable8;
27557 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
27558 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27559 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
27560 tracehead = trace.prev;
27561 return;
27562 }
27563 void parser___ReduceAction404___init(val_t self, int* init_table) {
27564 struct trace_t trace = {NULL, NULL, 13937, LOCATE_parser___ReduceAction404___init};
27565 trace.prev = tracehead; tracehead = &trace;
27566 trace.file = LOCATE_parser;
27567 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction404].i]) return;
27568 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction404].i] = 1;
27569 tracehead = trace.prev;
27570 return;
27571 }
27572 void parser___ReduceAction405___action(val_t self, val_t param0) {
27573 struct trace_t trace = {NULL, NULL, 13941, LOCATE_parser___ReduceAction405___action};
27574 val_t variable0;
27575 val_t variable1;
27576 val_t variable2;
27577 val_t variable3;
27578 val_t variable4;
27579 val_t variable5;
27580 val_t variable6;
27581 val_t variable7;
27582 val_t variable8;
27583 val_t variable9;
27584 val_t variable10;
27585 trace.prev = tracehead; tracehead = &trace;
27586 trace.file = LOCATE_parser;
27587 variable0 = param0;
27588 variable1 = NIT_NULL /*null*/;
27589 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27590 variable2 = variable3;
27591 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27592 variable3 = variable4;
27593 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27594 variable4 = variable5;
27595 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27596 variable5 = variable6;
27597 variable6 = variable4 /*nodearraylist1*/;
27598 variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/;
27599 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction405___action, LOCATE_parser, 13949); nit_exit(1);}
27600 variable7 = variable3 /*nodearraylist2*/;
27601 variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
27602 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction405___action, LOCATE_parser, 13951); nit_exit(1);}
27603 variable8 = variable2 /*nodearraylist3*/;
27604 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27605 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction405___action, LOCATE_parser, 13953); nit_exit(1);}
27606 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27607 if (UNTAG_Bool(variable9)) { /*if*/
27608 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
27609 if (UNTAG_Bool(variable9)) { /*if*/
27610 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
27611 } else { /*if*/
27612 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
27613 }
27614 }
27615 variable10 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/
27616 variable9 = variable10;
27617 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
27618 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27619 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
27620 tracehead = trace.prev;
27621 return;
27622 }
27623 void parser___ReduceAction405___init(val_t self, int* init_table) {
27624 struct trace_t trace = {NULL, NULL, 13969, LOCATE_parser___ReduceAction405___init};
27625 trace.prev = tracehead; tracehead = &trace;
27626 trace.file = LOCATE_parser;
27627 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction405].i]) return;
27628 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction405].i] = 1;
27629 tracehead = trace.prev;
27630 return;
27631 }
27632 void parser___ReduceAction406___action(val_t self, val_t param0) {
27633 struct trace_t trace = {NULL, NULL, 13973, LOCATE_parser___ReduceAction406___action};
27634 val_t variable0;
27635 val_t variable1;
27636 val_t variable2;
27637 val_t variable3;
27638 val_t variable4;
27639 val_t variable5;
27640 val_t variable6;
27641 val_t variable7;
27642 val_t variable8;
27643 val_t variable9;
27644 val_t variable10;
27645 val_t variable11;
27646 val_t variable12;
27647 trace.prev = tracehead; tracehead = &trace;
27648 trace.file = LOCATE_parser;
27649 variable0 = param0;
27650 variable1 = NIT_NULL /*null*/;
27651 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27652 variable2 = variable3;
27653 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27654 variable3 = variable4;
27655 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27656 variable4 = variable5;
27657 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27658 variable5 = variable6;
27659 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27660 variable6 = variable7;
27661 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27662 variable7 = variable8;
27663 variable8 = variable6 /*nodearraylist1*/;
27664 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
27665 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction406___action, LOCATE_parser, 13983); nit_exit(1);}
27666 variable9 = variable3 /*nodearraylist4*/;
27667 variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
27668 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction406___action, LOCATE_parser, 13985); nit_exit(1);}
27669 variable10 = variable2 /*nodearraylist5*/;
27670 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27671 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction406___action, LOCATE_parser, 13987); nit_exit(1);}
27672 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27673 if (UNTAG_Bool(variable11)) { /*if*/
27674 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
27675 if (UNTAG_Bool(variable11)) { /*if*/
27676 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
27677 } else { /*if*/
27678 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
27679 }
27680 }
27681 variable12 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/
27682 variable11 = variable12;
27683 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
27684 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27685 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
27686 tracehead = trace.prev;
27687 return;
27688 }
27689 void parser___ReduceAction406___init(val_t self, int* init_table) {
27690 struct trace_t trace = {NULL, NULL, 14003, LOCATE_parser___ReduceAction406___init};
27691 trace.prev = tracehead; tracehead = &trace;
27692 trace.file = LOCATE_parser;
27693 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction406].i]) return;
27694 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction406].i] = 1;
27695 tracehead = trace.prev;
27696 return;
27697 }
27698 void parser___ReduceAction407___action(val_t self, val_t param0) {
27699 struct trace_t trace = {NULL, NULL, 14007, LOCATE_parser___ReduceAction407___action};
27700 val_t variable0;
27701 val_t variable1;
27702 val_t variable2;
27703 val_t variable3;
27704 val_t variable4;
27705 val_t variable5;
27706 val_t variable6;
27707 val_t variable7;
27708 val_t variable8;
27709 val_t variable9;
27710 trace.prev = tracehead; tracehead = &trace;
27711 trace.file = LOCATE_parser;
27712 variable0 = param0;
27713 variable1 = NIT_NULL /*null*/;
27714 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27715 variable2 = variable3;
27716 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27717 variable3 = variable4;
27718 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27719 variable4 = variable5;
27720 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
27721 variable5 = variable6;
27722 variable6 = variable3 /*nodearraylist1*/;
27723 variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
27724 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction407___action, LOCATE_parser, 14016); nit_exit(1);}
27725 variable7 = variable2 /*nodearraylist2*/;
27726 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27727 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction407___action, LOCATE_parser, 14018); nit_exit(1);}
27728 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27729 if (UNTAG_Bool(variable8)) { /*if*/
27730 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
27731 if (UNTAG_Bool(variable8)) { /*if*/
27732 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
27733 } else { /*if*/
27734 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
27735 }
27736 }
27737 variable9 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/
27738 variable8 = variable9;
27739 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
27740 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27741 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
27742 tracehead = trace.prev;
27743 return;
27744 }
27745 void parser___ReduceAction407___init(val_t self, int* init_table) {
27746 struct trace_t trace = {NULL, NULL, 14034, LOCATE_parser___ReduceAction407___init};
27747 trace.prev = tracehead; tracehead = &trace;
27748 trace.file = LOCATE_parser;
27749 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction407].i]) return;
27750 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction407].i] = 1;
27751 tracehead = trace.prev;
27752 return;
27753 }
27754 void parser___ReduceAction408___action(val_t self, val_t param0) {
27755 struct trace_t trace = {NULL, NULL, 14038, LOCATE_parser___ReduceAction408___action};
27756 val_t variable0;
27757 val_t variable1;
27758 val_t variable2;
27759 val_t variable3;
27760 val_t variable4;
27761 val_t variable5;
27762 val_t variable6;
27763 val_t variable7;
27764 val_t variable8;
27765 val_t variable9;
27766 val_t variable10;
27767 val_t variable11;
27768 val_t variable12;
27769 val_t variable13;
27770 val_t variable14;
27771 val_t variable15;
27772 trace.prev = tracehead; tracehead = &trace;
27773 trace.file = LOCATE_parser;
27774 variable0 = param0;
27775 variable1 = NIT_NULL /*null*/;
27776 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27777 variable2 = variable3;
27778 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27779 variable3 = variable4;
27780 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27781 variable4 = variable5;
27782 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27783 variable5 = variable6;
27784 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27785 variable6 = variable7;
27786 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27787 variable7 = variable8;
27788 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27789 variable8 = variable9;
27790 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
27791 variable9 = variable10;
27792 variable10 = variable8 /*nodearraylist1*/;
27793 variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
27794 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction408___action, LOCATE_parser, 14050); nit_exit(1);}
27795 variable11 = variable6 /*nodearraylist3*/;
27796 variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
27797 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction408___action, LOCATE_parser, 14052); nit_exit(1);}
27798 variable12 = variable3 /*nodearraylist6*/;
27799 variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/;
27800 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction408___action, LOCATE_parser, 14054); nit_exit(1);}
27801 variable13 = variable2 /*nodearraylist7*/;
27802 variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
27803 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction408___action, LOCATE_parser, 14056); nit_exit(1);}
27804 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
27805 if (UNTAG_Bool(variable14)) { /*if*/
27806 variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*AbstractArray::is_empty*/;
27807 if (UNTAG_Bool(variable14)) { /*if*/
27808 variable9 = variable13 /*listnode5*/ /*listnode6=*/;
27809 } else { /*if*/
27810 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*IndexedCollection::append*/;
27811 }
27812 }
27813 variable15 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/
27814 variable14 = variable15;
27815 variable1 = variable14 /*pexprnode1*/ /*node_list=*/;
27816 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27817 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
27818 tracehead = trace.prev;
27819 return;
27820 }
27821 void parser___ReduceAction408___init(val_t self, int* init_table) {
27822 struct trace_t trace = {NULL, NULL, 14073, LOCATE_parser___ReduceAction408___init};
27823 trace.prev = tracehead; tracehead = &trace;
27824 trace.file = LOCATE_parser;
27825 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction408].i]) return;
27826 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction408].i] = 1;
27827 tracehead = trace.prev;
27828 return;
27829 }
27830 void parser___ReduceAction409___action(val_t self, val_t param0) {
27831 struct trace_t trace = {NULL, NULL, 14077, LOCATE_parser___ReduceAction409___action};
27832 val_t variable0;
27833 val_t variable1;
27834 val_t variable2;
27835 val_t variable3;
27836 val_t variable4;
27837 val_t variable5;
27838 trace.prev = tracehead; tracehead = &trace;
27839 trace.file = LOCATE_parser;
27840 variable0 = param0;
27841 variable1 = NIT_NULL /*null*/;
27842 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27843 variable2 = variable3;
27844 variable3 = variable2 /*nodearraylist1*/;
27845 variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/;
27846 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction409___action, LOCATE_parser, 14082); nit_exit(1);}
27847 variable5 = NEW_ASelfExpr_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/
27848 variable4 = variable5;
27849 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
27850 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27851 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
27852 tracehead = trace.prev;
27853 return;
27854 }
27855 void parser___ReduceAction409___init(val_t self, int* init_table) {
27856 struct trace_t trace = {NULL, NULL, 14089, LOCATE_parser___ReduceAction409___init};
27857 trace.prev = tracehead; tracehead = &trace;
27858 trace.file = LOCATE_parser;
27859 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction409].i]) return;
27860 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction409].i] = 1;
27861 tracehead = trace.prev;
27862 return;
27863 }
27864 void parser___ReduceAction410___action(val_t self, val_t param0) {
27865 struct trace_t trace = {NULL, NULL, 14093, LOCATE_parser___ReduceAction410___action};
27866 val_t variable0;
27867 val_t variable1;
27868 val_t variable2;
27869 val_t variable3;
27870 val_t variable4;
27871 val_t variable5;
27872 trace.prev = tracehead; tracehead = &trace;
27873 trace.file = LOCATE_parser;
27874 variable0 = param0;
27875 variable1 = NIT_NULL /*null*/;
27876 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27877 variable2 = variable3;
27878 variable3 = variable2 /*nodearraylist1*/;
27879 variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/;
27880 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction410___action, LOCATE_parser, 14098); nit_exit(1);}
27881 variable5 = NEW_ATrueExpr_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/
27882 variable4 = variable5;
27883 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
27884 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27885 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
27886 tracehead = trace.prev;
27887 return;
27888 }
27889 void parser___ReduceAction410___init(val_t self, int* init_table) {
27890 struct trace_t trace = {NULL, NULL, 14105, LOCATE_parser___ReduceAction410___init};
27891 trace.prev = tracehead; tracehead = &trace;
27892 trace.file = LOCATE_parser;
27893 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction410].i]) return;
27894 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction410].i] = 1;
27895 tracehead = trace.prev;
27896 return;
27897 }
27898 void parser___ReduceAction411___action(val_t self, val_t param0) {
27899 struct trace_t trace = {NULL, NULL, 14109, LOCATE_parser___ReduceAction411___action};
27900 val_t variable0;
27901 val_t variable1;
27902 val_t variable2;
27903 val_t variable3;
27904 val_t variable4;
27905 val_t variable5;
27906 trace.prev = tracehead; tracehead = &trace;
27907 trace.file = LOCATE_parser;
27908 variable0 = param0;
27909 variable1 = NIT_NULL /*null*/;
27910 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27911 variable2 = variable3;
27912 variable3 = variable2 /*nodearraylist1*/;
27913 variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/;
27914 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction411___action, LOCATE_parser, 14114); nit_exit(1);}
27915 variable5 = NEW_AFalseExpr_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/
27916 variable4 = variable5;
27917 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
27918 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27919 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
27920 tracehead = trace.prev;
27921 return;
27922 }
27923 void parser___ReduceAction411___init(val_t self, int* init_table) {
27924 struct trace_t trace = {NULL, NULL, 14121, LOCATE_parser___ReduceAction411___init};
27925 trace.prev = tracehead; tracehead = &trace;
27926 trace.file = LOCATE_parser;
27927 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction411].i]) return;
27928 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction411].i] = 1;
27929 tracehead = trace.prev;
27930 return;
27931 }
27932 void parser___ReduceAction412___action(val_t self, val_t param0) {
27933 struct trace_t trace = {NULL, NULL, 14125, LOCATE_parser___ReduceAction412___action};
27934 val_t variable0;
27935 val_t variable1;
27936 val_t variable2;
27937 val_t variable3;
27938 val_t variable4;
27939 val_t variable5;
27940 trace.prev = tracehead; tracehead = &trace;
27941 trace.file = LOCATE_parser;
27942 variable0 = param0;
27943 variable1 = NIT_NULL /*null*/;
27944 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27945 variable2 = variable3;
27946 variable3 = variable2 /*nodearraylist1*/;
27947 variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/;
27948 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction412___action, LOCATE_parser, 14130); nit_exit(1);}
27949 variable5 = NEW_ANullExpr_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/
27950 variable4 = variable5;
27951 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
27952 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27953 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
27954 tracehead = trace.prev;
27955 return;
27956 }
27957 void parser___ReduceAction412___init(val_t self, int* init_table) {
27958 struct trace_t trace = {NULL, NULL, 14137, LOCATE_parser___ReduceAction412___init};
27959 trace.prev = tracehead; tracehead = &trace;
27960 trace.file = LOCATE_parser;
27961 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction412].i]) return;
27962 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction412].i] = 1;
27963 tracehead = trace.prev;
27964 return;
27965 }
27966 void parser___ReduceAction413___action(val_t self, val_t param0) {
27967 struct trace_t trace = {NULL, NULL, 14141, LOCATE_parser___ReduceAction413___action};
27968 val_t variable0;
27969 val_t variable1;
27970 val_t variable2;
27971 val_t variable3;
27972 val_t variable4;
27973 val_t variable5;
27974 trace.prev = tracehead; tracehead = &trace;
27975 trace.file = LOCATE_parser;
27976 variable0 = param0;
27977 variable1 = NIT_NULL /*null*/;
27978 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
27979 variable2 = variable3;
27980 variable3 = variable2 /*nodearraylist1*/;
27981 variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/;
27982 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction413___action, LOCATE_parser, 14146); nit_exit(1);}
27983 variable5 = NEW_AIntExpr_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/
27984 variable4 = variable5;
27985 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
27986 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
27987 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
27988 tracehead = trace.prev;
27989 return;
27990 }
27991 void parser___ReduceAction413___init(val_t self, int* init_table) {
27992 struct trace_t trace = {NULL, NULL, 14153, LOCATE_parser___ReduceAction413___init};
27993 trace.prev = tracehead; tracehead = &trace;
27994 trace.file = LOCATE_parser;
27995 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction413].i]) return;
27996 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction413].i] = 1;
27997 tracehead = trace.prev;
27998 return;
27999 }
28000 void parser___ReduceAction414___action(val_t self, val_t param0) {
28001 struct trace_t trace = {NULL, NULL, 14157, LOCATE_parser___ReduceAction414___action};
28002 val_t variable0;
28003 val_t variable1;
28004 val_t variable2;
28005 val_t variable3;
28006 val_t variable4;
28007 val_t variable5;
28008 trace.prev = tracehead; tracehead = &trace;
28009 trace.file = LOCATE_parser;
28010 variable0 = param0;
28011 variable1 = NIT_NULL /*null*/;
28012 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28013 variable2 = variable3;
28014 variable3 = variable2 /*nodearraylist1*/;
28015 variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/;
28016 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction414___action, LOCATE_parser, 14162); nit_exit(1);}
28017 variable5 = NEW_AFloatExpr_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/
28018 variable4 = variable5;
28019 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
28020 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
28021 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
28022 tracehead = trace.prev;
28023 return;
28024 }
28025 void parser___ReduceAction414___init(val_t self, int* init_table) {
28026 struct trace_t trace = {NULL, NULL, 14169, LOCATE_parser___ReduceAction414___init};
28027 trace.prev = tracehead; tracehead = &trace;
28028 trace.file = LOCATE_parser;
28029 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction414].i]) return;
28030 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction414].i] = 1;
28031 tracehead = trace.prev;
28032 return;
28033 }
28034 void parser___ReduceAction415___action(val_t self, val_t param0) {
28035 struct trace_t trace = {NULL, NULL, 14173, LOCATE_parser___ReduceAction415___action};
28036 val_t variable0;
28037 val_t variable1;
28038 val_t variable2;
28039 val_t variable3;
28040 val_t variable4;
28041 val_t variable5;
28042 trace.prev = tracehead; tracehead = &trace;
28043 trace.file = LOCATE_parser;
28044 variable0 = param0;
28045 variable1 = NIT_NULL /*null*/;
28046 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28047 variable2 = variable3;
28048 variable3 = variable2 /*nodearraylist1*/;
28049 variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/;
28050 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction415___action, LOCATE_parser, 14178); nit_exit(1);}
28051 variable5 = NEW_ACharExpr_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/
28052 variable4 = variable5;
28053 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
28054 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
28055 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
28056 tracehead = trace.prev;
28057 return;
28058 }
28059 void parser___ReduceAction415___init(val_t self, int* init_table) {
28060 struct trace_t trace = {NULL, NULL, 14185, LOCATE_parser___ReduceAction415___init};
28061 trace.prev = tracehead; tracehead = &trace;
28062 trace.file = LOCATE_parser;
28063 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction415].i]) return;
28064 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction415].i] = 1;
28065 tracehead = trace.prev;
28066 return;
28067 }
28068 void parser___ReduceAction416___action(val_t self, val_t param0) {
28069 struct trace_t trace = {NULL, NULL, 14189, LOCATE_parser___ReduceAction416___action};
28070 val_t variable0;
28071 val_t variable1;
28072 val_t variable2;
28073 val_t variable3;
28074 val_t variable4;
28075 val_t variable5;
28076 trace.prev = tracehead; tracehead = &trace;
28077 trace.file = LOCATE_parser;
28078 variable0 = param0;
28079 variable1 = NIT_NULL /*null*/;
28080 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28081 variable2 = variable3;
28082 variable3 = variable2 /*nodearraylist1*/;
28083 variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/;
28084 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction416___action, LOCATE_parser, 14194); nit_exit(1);}
28085 variable5 = NEW_AStringExpr_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/
28086 variable4 = variable5;
28087 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
28088 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
28089 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
28090 tracehead = trace.prev;
28091 return;
28092 }
28093 void parser___ReduceAction416___init(val_t self, int* init_table) {
28094 struct trace_t trace = {NULL, NULL, 14201, LOCATE_parser___ReduceAction416___init};
28095 trace.prev = tracehead; tracehead = &trace;
28096 trace.file = LOCATE_parser;
28097 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction416].i]) return;
28098 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction416].i] = 1;
28099 tracehead = trace.prev;
28100 return;
28101 }
28102 void parser___ReduceAction417___action(val_t self, val_t param0) {
28103 struct trace_t trace = {NULL, NULL, 14205, LOCATE_parser___ReduceAction417___action};
28104 val_t variable0;
28105 val_t variable1;
28106 val_t variable2;
28107 val_t variable3;
28108 val_t variable4;
28109 trace.prev = tracehead; tracehead = &trace;
28110 trace.file = LOCATE_parser;
28111 variable0 = param0;
28112 variable1 = NIT_NULL /*null*/;
28113 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28114 variable2 = variable3;
28115 variable3 = variable2 /*nodearraylist1*/;
28116 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28117 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction417___action, LOCATE_parser, 14210); nit_exit(1);}
28118 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28119 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
28120 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28121 tracehead = trace.prev;
28122 return;
28123 }
28124 void parser___ReduceAction417___init(val_t self, int* init_table) {
28125 struct trace_t trace = {NULL, NULL, 14214, LOCATE_parser___ReduceAction417___init};
28126 trace.prev = tracehead; tracehead = &trace;
28127 trace.file = LOCATE_parser;
28128 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction417].i]) return;
28129 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction417].i] = 1;
28130 tracehead = trace.prev;
28131 return;
28132 }
28133 void parser___ReduceAction418___action(val_t self, val_t param0) {
28134 struct trace_t trace = {NULL, NULL, 14218, LOCATE_parser___ReduceAction418___action};
28135 val_t variable0;
28136 val_t variable1;
28137 val_t variable2;
28138 val_t variable3;
28139 val_t variable4;
28140 val_t variable5;
28141 val_t variable6;
28142 trace.prev = tracehead; tracehead = &trace;
28143 trace.file = LOCATE_parser;
28144 variable0 = param0;
28145 variable1 = NIT_NULL /*null*/;
28146 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28147 variable2 = variable3;
28148 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28149 variable3 = variable4;
28150 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28151 variable4 = variable5;
28152 variable5 = variable3 /*nodearraylist2*/;
28153 variable6 = TAG_Bool(( variable5 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28154 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction418___action, LOCATE_parser, 14225); nit_exit(1);}
28155 variable1 = variable5 /*pexprnode1*/ /*node_list=*/;
28156 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
28157 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
28158 tracehead = trace.prev;
28159 return;
28160 }
28161 void parser___ReduceAction418___init(val_t self, int* init_table) {
28162 struct trace_t trace = {NULL, NULL, 14229, LOCATE_parser___ReduceAction418___init};
28163 trace.prev = tracehead; tracehead = &trace;
28164 trace.file = LOCATE_parser;
28165 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction418].i]) return;
28166 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction418].i] = 1;
28167 tracehead = trace.prev;
28168 return;
28169 }
28170 void parser___ReduceAction419___action(val_t self, val_t param0) {
28171 struct trace_t trace = {NULL, NULL, 14233, LOCATE_parser___ReduceAction419___action};
28172 val_t variable0;
28173 val_t variable1;
28174 val_t variable2;
28175 val_t variable3;
28176 val_t variable4;
28177 val_t variable5;
28178 val_t variable6;
28179 val_t variable7;
28180 val_t variable8;
28181 val_t variable9;
28182 val_t variable10;
28183 val_t variable11;
28184 val_t variable12;
28185 val_t variable13;
28186 val_t variable14;
28187 val_t variable15;
28188 val_t variable16;
28189 trace.prev = tracehead; tracehead = &trace;
28190 trace.file = LOCATE_parser;
28191 variable0 = param0;
28192 variable1 = NIT_NULL /*null*/;
28193 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28194 variable2 = variable3;
28195 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28196 variable3 = variable4;
28197 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28198 variable4 = variable5;
28199 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28200 variable5 = variable6;
28201 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28202 variable6 = variable7;
28203 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28204 variable7 = variable8;
28205 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28206 variable8 = variable9;
28207 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28208 variable9 = variable10;
28209 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28210 variable10 = variable11;
28211 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28212 variable11 = variable12;
28213 variable12 = variable11 /*nodearraylist1*/;
28214 variable13 = TAG_Bool(( variable12 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28215 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction419___action, LOCATE_parser, 14247); nit_exit(1);}
28216 variable13 = variable8 /*nodearraylist4*/;
28217 variable14 = TAG_Bool(( variable13 /*tkwasnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwasnode3*/, COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
28218 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction419___action, LOCATE_parser, 14249); nit_exit(1);}
28219 variable14 = variable4 /*nodearraylist8*/;
28220 variable15 = TAG_Bool(( variable14 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/;
28221 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction419___action, LOCATE_parser, 14251); nit_exit(1);}
28222 variable16 = NEW_AAsCastExpr_parser_prod___AAsCastExpr___init_aascastexpr( variable12 /*pexprnode2*/, variable13 /*tkwasnode3*/, variable14 /*ptypenode4*/); /*new AAsCastExpr*/
28223 variable15 = variable16;
28224 variable1 = variable15 /*pexprnode1*/ /*node_list=*/;
28225 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(74)) /*Parser::go_to*/;
28226 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
28227 tracehead = trace.prev;
28228 return;
28229 }
28230 void parser___ReduceAction419___init(val_t self, int* init_table) {
28231 struct trace_t trace = {NULL, NULL, 14260, LOCATE_parser___ReduceAction419___init};
28232 trace.prev = tracehead; tracehead = &trace;
28233 trace.file = LOCATE_parser;
28234 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction419].i]) return;
28235 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction419].i] = 1;
28236 tracehead = trace.prev;
28237 return;
28238 }
28239 void parser___ReduceAction420___action(val_t self, val_t param0) {
28240 struct trace_t trace = {NULL, NULL, 14264, LOCATE_parser___ReduceAction420___action};
28241 val_t variable0;
28242 val_t variable1;
28243 val_t variable2;
28244 val_t variable3;
28245 val_t variable4;
28246 trace.prev = tracehead; tracehead = &trace;
28247 trace.file = LOCATE_parser;
28248 variable0 = param0;
28249 variable1 = NIT_NULL /*null*/;
28250 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28251 variable2 = variable3;
28252 variable3 = variable2 /*nodearraylist1*/;
28253 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28254 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction420___action, LOCATE_parser, 14269); nit_exit(1);}
28255 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28256 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/;
28257 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28258 tracehead = trace.prev;
28259 return;
28260 }
28261 void parser___ReduceAction420___init(val_t self, int* init_table) {
28262 struct trace_t trace = {NULL, NULL, 14273, LOCATE_parser___ReduceAction420___init};
28263 trace.prev = tracehead; tracehead = &trace;
28264 trace.file = LOCATE_parser;
28265 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction420].i]) return;
28266 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction420].i] = 1;
28267 tracehead = trace.prev;
28268 return;
28269 }
28270 void parser___ReduceAction421___action(val_t self, val_t param0) {
28271 struct trace_t trace = {NULL, NULL, 14277, LOCATE_parser___ReduceAction421___action};
28272 val_t variable0;
28273 val_t variable1;
28274 val_t variable2;
28275 val_t variable3;
28276 val_t variable4;
28277 val_t variable5;
28278 val_t variable6;
28279 val_t variable7;
28280 val_t variable8;
28281 val_t variable9;
28282 trace.prev = tracehead; tracehead = &trace;
28283 trace.file = LOCATE_parser;
28284 variable0 = param0;
28285 variable1 = NIT_NULL /*null*/;
28286 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28287 variable2 = variable3;
28288 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28289 variable3 = variable4;
28290 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28291 variable4 = variable5;
28292 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28293 variable5 = variable6;
28294 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
28295 variable6 = variable7;
28296 variable7 = variable4 /*nodearraylist2*/;
28297 variable8 = TAG_Bool(( variable7 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28298 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction421___action, LOCATE_parser, 14286); nit_exit(1);}
28299 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable7 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable7 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
28300 if (UNTAG_Bool(variable8)) { /*if*/
28301 ((array___AbstractArray___add_t)CALL( variable6 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable6 /*listnode3*/, variable7 /*pexprnode2*/) /*AbstractArray::add*/;
28302 }
28303 variable9 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable6 /*listnode3*/); /*new ABlockExpr*/
28304 variable8 = variable9;
28305 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
28306 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/;
28307 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
28308 tracehead = trace.prev;
28309 return;
28310 }
28311 void parser___ReduceAction421___init(val_t self, int* init_table) {
28312 struct trace_t trace = {NULL, NULL, 14296, LOCATE_parser___ReduceAction421___init};
28313 trace.prev = tracehead; tracehead = &trace;
28314 trace.file = LOCATE_parser;
28315 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction421].i]) return;
28316 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction421].i] = 1;
28317 tracehead = trace.prev;
28318 return;
28319 }
28320 void parser___ReduceAction422___action(val_t self, val_t param0) {
28321 struct trace_t trace = {NULL, NULL, 14300, LOCATE_parser___ReduceAction422___action};
28322 val_t variable0;
28323 val_t variable1;
28324 val_t variable2;
28325 val_t variable3;
28326 val_t variable4;
28327 val_t variable5;
28328 val_t variable6;
28329 val_t variable7;
28330 val_t variable8;
28331 val_t variable9;
28332 val_t variable10;
28333 val_t variable11;
28334 trace.prev = tracehead; tracehead = &trace;
28335 trace.file = LOCATE_parser;
28336 variable0 = param0;
28337 variable1 = NIT_NULL /*null*/;
28338 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28339 variable2 = variable3;
28340 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28341 variable3 = variable4;
28342 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28343 variable4 = variable5;
28344 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28345 variable5 = variable6;
28346 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28347 variable6 = variable7;
28348 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
28349 variable7 = variable8;
28350 variable8 = variable5 /*nodearraylist2*/;
28351 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28352 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction422___action, LOCATE_parser, 14310); nit_exit(1);}
28353 variable9 = variable4 /*nodearraylist3*/;
28354 variable10 = TAG_Bool(( variable9 /*listnode3*/==NIT_NULL) || VAL_ISA( variable9 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
28355 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction422___action, LOCATE_parser, 14312); nit_exit(1);}
28356 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable8 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable8 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
28357 if (UNTAG_Bool(variable10)) { /*if*/
28358 ((array___AbstractArray___add_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___SimpleCollection___add))( variable7 /*listnode4*/, variable8 /*pexprnode2*/) /*AbstractArray::add*/;
28359 }
28360 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode3*/ == NIT_NULL /*null*/) || (( variable9 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
28361 if (UNTAG_Bool(variable10)) { /*if*/
28362 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode4*/) /*AbstractArray::is_empty*/;
28363 if (UNTAG_Bool(variable10)) { /*if*/
28364 variable7 = variable9 /*listnode3*/ /*listnode4=*/;
28365 } else { /*if*/
28366 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode4*/, variable9 /*listnode3*/) /*IndexedCollection::append*/;
28367 }
28368 }
28369 variable11 = NEW_ABlockExpr_parser_prod___ABlockExpr___init_ablockexpr( variable7 /*listnode4*/); /*new ABlockExpr*/
28370 variable10 = variable11;
28371 variable1 = variable10 /*pexprnode1*/ /*node_list=*/;
28372 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/;
28373 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
28374 tracehead = trace.prev;
28375 return;
28376 }
28377 void parser___ReduceAction422___init(val_t self, int* init_table) {
28378 struct trace_t trace = {NULL, NULL, 14329, LOCATE_parser___ReduceAction422___init};
28379 trace.prev = tracehead; tracehead = &trace;
28380 trace.file = LOCATE_parser;
28381 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction422].i]) return;
28382 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction422].i] = 1;
28383 tracehead = trace.prev;
28384 return;
28385 }
28386 void parser___ReduceAction423___action(val_t self, val_t param0) {
28387 struct trace_t trace = {NULL, NULL, 14333, LOCATE_parser___ReduceAction423___action};
28388 val_t variable0;
28389 val_t variable1;
28390 val_t variable2;
28391 val_t variable3;
28392 val_t variable4;
28393 trace.prev = tracehead; tracehead = &trace;
28394 trace.file = LOCATE_parser;
28395 variable0 = param0;
28396 variable1 = NIT_NULL /*null*/;
28397 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28398 variable2 = variable3;
28399 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28400 variable3 = variable4;
28401 variable1 = NIT_NULL /*null*/ /*node_list=*/;
28402 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/;
28403 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28404 tracehead = trace.prev;
28405 return;
28406 }
28407 void parser___ReduceAction423___init(val_t self, int* init_table) {
28408 struct trace_t trace = {NULL, NULL, 14341, LOCATE_parser___ReduceAction423___init};
28409 trace.prev = tracehead; tracehead = &trace;
28410 trace.file = LOCATE_parser;
28411 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction423].i]) return;
28412 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction423].i] = 1;
28413 tracehead = trace.prev;
28414 return;
28415 }
28416 void parser___ReduceAction424___action(val_t self, val_t param0) {
28417 struct trace_t trace = {NULL, NULL, 14345, LOCATE_parser___ReduceAction424___action};
28418 val_t variable0;
28419 val_t variable1;
28420 val_t variable2;
28421 val_t variable3;
28422 trace.prev = tracehead; tracehead = &trace;
28423 trace.file = LOCATE_parser;
28424 variable0 = param0;
28425 variable1 = NIT_NULL /*null*/;
28426 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28427 variable2 = variable3;
28428 variable1 = NIT_NULL /*null*/ /*node_list=*/;
28429 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(75)) /*Parser::go_to*/;
28430 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
28431 tracehead = trace.prev;
28432 return;
28433 }
28434 void parser___ReduceAction424___init(val_t self, int* init_table) {
28435 struct trace_t trace = {NULL, NULL, 14352, LOCATE_parser___ReduceAction424___init};
28436 trace.prev = tracehead; tracehead = &trace;
28437 trace.file = LOCATE_parser;
28438 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction424].i]) return;
28439 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction424].i] = 1;
28440 tracehead = trace.prev;
28441 return;
28442 }
28443 void parser___ReduceAction425___action(val_t self, val_t param0) {
28444 struct trace_t trace = {NULL, NULL, 14356, LOCATE_parser___ReduceAction425___action};
28445 val_t variable0;
28446 val_t variable1;
28447 val_t variable2;
28448 val_t variable3;
28449 val_t variable4;
28450 trace.prev = tracehead; tracehead = &trace;
28451 trace.file = LOCATE_parser;
28452 variable0 = param0;
28453 variable1 = NIT_NULL /*null*/;
28454 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28455 variable2 = variable3;
28456 variable3 = variable2 /*nodearraylist1*/;
28457 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28458 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction425___action, LOCATE_parser, 14361); nit_exit(1);}
28459 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28460 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28461 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28462 tracehead = trace.prev;
28463 return;
28464 }
28465 void parser___ReduceAction425___init(val_t self, int* init_table) {
28466 struct trace_t trace = {NULL, NULL, 14365, LOCATE_parser___ReduceAction425___init};
28467 trace.prev = tracehead; tracehead = &trace;
28468 trace.file = LOCATE_parser;
28469 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction425].i]) return;
28470 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction425].i] = 1;
28471 tracehead = trace.prev;
28472 return;
28473 }
28474 void parser___ReduceAction426___action(val_t self, val_t param0) {
28475 struct trace_t trace = {NULL, NULL, 14369, LOCATE_parser___ReduceAction426___action};
28476 val_t variable0;
28477 val_t variable1;
28478 val_t variable2;
28479 val_t variable3;
28480 val_t variable4;
28481 trace.prev = tracehead; tracehead = &trace;
28482 trace.file = LOCATE_parser;
28483 variable0 = param0;
28484 variable1 = NIT_NULL /*null*/;
28485 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28486 variable2 = variable3;
28487 variable3 = variable2 /*nodearraylist1*/;
28488 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28489 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction426___action, LOCATE_parser, 14374); nit_exit(1);}
28490 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28491 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28492 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28493 tracehead = trace.prev;
28494 return;
28495 }
28496 void parser___ReduceAction426___init(val_t self, int* init_table) {
28497 struct trace_t trace = {NULL, NULL, 14378, LOCATE_parser___ReduceAction426___init};
28498 trace.prev = tracehead; tracehead = &trace;
28499 trace.file = LOCATE_parser;
28500 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction426].i]) return;
28501 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction426].i] = 1;
28502 tracehead = trace.prev;
28503 return;
28504 }
28505 void parser___ReduceAction427___action(val_t self, val_t param0) {
28506 struct trace_t trace = {NULL, NULL, 14382, LOCATE_parser___ReduceAction427___action};
28507 val_t variable0;
28508 val_t variable1;
28509 val_t variable2;
28510 val_t variable3;
28511 val_t variable4;
28512 val_t variable5;
28513 trace.prev = tracehead; tracehead = &trace;
28514 trace.file = LOCATE_parser;
28515 variable0 = param0;
28516 variable1 = NIT_NULL /*null*/;
28517 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28518 variable2 = variable3;
28519 variable3 = variable2 /*nodearraylist1*/;
28520 variable4 = TAG_Bool(( variable3 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/;
28521 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction427___action, LOCATE_parser, 14387); nit_exit(1);}
28522 variable5 = NEW_AReturnExpr_parser_prod___AReturnExpr___init_areturnexpr( variable3 /*tkwreturnnode2*/, NIT_NULL /*null*/); /*new AReturnExpr*/
28523 variable4 = variable5;
28524 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
28525 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28526 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
28527 tracehead = trace.prev;
28528 return;
28529 }
28530 void parser___ReduceAction427___init(val_t self, int* init_table) {
28531 struct trace_t trace = {NULL, NULL, 14395, LOCATE_parser___ReduceAction427___init};
28532 trace.prev = tracehead; tracehead = &trace;
28533 trace.file = LOCATE_parser;
28534 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction427].i]) return;
28535 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction427].i] = 1;
28536 tracehead = trace.prev;
28537 return;
28538 }
28539 void parser___ReduceAction428___action(val_t self, val_t param0) {
28540 struct trace_t trace = {NULL, NULL, 14399, LOCATE_parser___ReduceAction428___action};
28541 val_t variable0;
28542 val_t variable1;
28543 val_t variable2;
28544 val_t variable3;
28545 val_t variable4;
28546 val_t variable5;
28547 val_t variable6;
28548 val_t variable7;
28549 trace.prev = tracehead; tracehead = &trace;
28550 trace.file = LOCATE_parser;
28551 variable0 = param0;
28552 variable1 = NIT_NULL /*null*/;
28553 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28554 variable2 = variable3;
28555 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28556 variable3 = variable4;
28557 variable4 = variable3 /*nodearraylist1*/;
28558 variable5 = TAG_Bool(( variable4 /*tkwreturnnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwreturnnode2*/, COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/;
28559 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction428___action, LOCATE_parser, 14405); nit_exit(1);}
28560 variable5 = variable2 /*nodearraylist2*/;
28561 variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28562 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction428___action, LOCATE_parser, 14407); nit_exit(1);}
28563 variable7 = NEW_AReturnExpr_parser_prod___AReturnExpr___init_areturnexpr( variable4 /*tkwreturnnode2*/, variable5 /*pexprnode3*/); /*new AReturnExpr*/
28564 variable6 = variable7;
28565 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
28566 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28567 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
28568 tracehead = trace.prev;
28569 return;
28570 }
28571 void parser___ReduceAction428___init(val_t self, int* init_table) {
28572 struct trace_t trace = {NULL, NULL, 14415, LOCATE_parser___ReduceAction428___init};
28573 trace.prev = tracehead; tracehead = &trace;
28574 trace.file = LOCATE_parser;
28575 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction428].i]) return;
28576 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction428].i] = 1;
28577 tracehead = trace.prev;
28578 return;
28579 }
28580 void parser___ReduceAction429___action(val_t self, val_t param0) {
28581 struct trace_t trace = {NULL, NULL, 14419, LOCATE_parser___ReduceAction429___action};
28582 val_t variable0;
28583 val_t variable1;
28584 val_t variable2;
28585 val_t variable3;
28586 val_t variable4;
28587 val_t variable5;
28588 trace.prev = tracehead; tracehead = &trace;
28589 trace.file = LOCATE_parser;
28590 variable0 = param0;
28591 variable1 = NIT_NULL /*null*/;
28592 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28593 variable2 = variable3;
28594 variable3 = variable2 /*nodearraylist1*/;
28595 variable4 = TAG_Bool(( variable3 /*tkwbreaknode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwbreaknode2*/, COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/;
28596 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction429___action, LOCATE_parser, 14424); nit_exit(1);}
28597 variable5 = NEW_ABreakExpr_parser_prod___ABreakExpr___init_abreakexpr( variable3 /*tkwbreaknode2*/); /*new ABreakExpr*/
28598 variable4 = variable5;
28599 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
28600 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28601 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
28602 tracehead = trace.prev;
28603 return;
28604 }
28605 void parser___ReduceAction429___init(val_t self, int* init_table) {
28606 struct trace_t trace = {NULL, NULL, 14431, LOCATE_parser___ReduceAction429___init};
28607 trace.prev = tracehead; tracehead = &trace;
28608 trace.file = LOCATE_parser;
28609 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction429].i]) return;
28610 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction429].i] = 1;
28611 tracehead = trace.prev;
28612 return;
28613 }
28614 void parser___ReduceAction430___action(val_t self, val_t param0) {
28615 struct trace_t trace = {NULL, NULL, 14435, LOCATE_parser___ReduceAction430___action};
28616 val_t variable0;
28617 val_t variable1;
28618 val_t variable2;
28619 val_t variable3;
28620 val_t variable4;
28621 val_t variable5;
28622 trace.prev = tracehead; tracehead = &trace;
28623 trace.file = LOCATE_parser;
28624 variable0 = param0;
28625 variable1 = NIT_NULL /*null*/;
28626 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28627 variable2 = variable3;
28628 variable3 = variable2 /*nodearraylist1*/;
28629 variable4 = TAG_Bool(( variable3 /*tkwabortnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwabortnode2*/, COLOR_TKwabort, ID_TKwabort)) /*cast TKwabort*/;
28630 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction430___action, LOCATE_parser, 14440); nit_exit(1);}
28631 variable5 = NEW_AAbortExpr_parser_prod___AAbortExpr___init_aabortexpr( variable3 /*tkwabortnode2*/); /*new AAbortExpr*/
28632 variable4 = variable5;
28633 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
28634 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28635 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
28636 tracehead = trace.prev;
28637 return;
28638 }
28639 void parser___ReduceAction430___init(val_t self, int* init_table) {
28640 struct trace_t trace = {NULL, NULL, 14447, LOCATE_parser___ReduceAction430___init};
28641 trace.prev = tracehead; tracehead = &trace;
28642 trace.file = LOCATE_parser;
28643 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction430].i]) return;
28644 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction430].i] = 1;
28645 tracehead = trace.prev;
28646 return;
28647 }
28648 void parser___ReduceAction431___action(val_t self, val_t param0) {
28649 struct trace_t trace = {NULL, NULL, 14451, LOCATE_parser___ReduceAction431___action};
28650 val_t variable0;
28651 val_t variable1;
28652 val_t variable2;
28653 val_t variable3;
28654 val_t variable4;
28655 val_t variable5;
28656 trace.prev = tracehead; tracehead = &trace;
28657 trace.file = LOCATE_parser;
28658 variable0 = param0;
28659 variable1 = NIT_NULL /*null*/;
28660 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28661 variable2 = variable3;
28662 variable3 = variable2 /*nodearraylist1*/;
28663 variable4 = TAG_Bool(( variable3 /*tkwcontinuenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwcontinuenode2*/, COLOR_TKwcontinue, ID_TKwcontinue)) /*cast TKwcontinue*/;
28664 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction431___action, LOCATE_parser, 14456); nit_exit(1);}
28665 variable5 = NEW_AContinueExpr_parser_prod___AContinueExpr___init_acontinueexpr( variable3 /*tkwcontinuenode2*/); /*new AContinueExpr*/
28666 variable4 = variable5;
28667 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
28668 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28669 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
28670 tracehead = trace.prev;
28671 return;
28672 }
28673 void parser___ReduceAction431___init(val_t self, int* init_table) {
28674 struct trace_t trace = {NULL, NULL, 14463, LOCATE_parser___ReduceAction431___init};
28675 trace.prev = tracehead; tracehead = &trace;
28676 trace.file = LOCATE_parser;
28677 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction431].i]) return;
28678 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction431].i] = 1;
28679 tracehead = trace.prev;
28680 return;
28681 }
28682 void parser___ReduceAction432___action(val_t self, val_t param0) {
28683 struct trace_t trace = {NULL, NULL, 14467, LOCATE_parser___ReduceAction432___action};
28684 val_t variable0;
28685 val_t variable1;
28686 val_t variable2;
28687 val_t variable3;
28688 val_t variable4;
28689 trace.prev = tracehead; tracehead = &trace;
28690 trace.file = LOCATE_parser;
28691 variable0 = param0;
28692 variable1 = NIT_NULL /*null*/;
28693 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28694 variable2 = variable3;
28695 variable3 = variable2 /*nodearraylist1*/;
28696 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28697 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction432___action, LOCATE_parser, 14472); nit_exit(1);}
28698 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28699 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28700 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28701 tracehead = trace.prev;
28702 return;
28703 }
28704 void parser___ReduceAction432___init(val_t self, int* init_table) {
28705 struct trace_t trace = {NULL, NULL, 14476, LOCATE_parser___ReduceAction432___init};
28706 trace.prev = tracehead; tracehead = &trace;
28707 trace.file = LOCATE_parser;
28708 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction432].i]) return;
28709 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction432].i] = 1;
28710 tracehead = trace.prev;
28711 return;
28712 }
28713 void parser___ReduceAction433___action(val_t self, val_t param0) {
28714 struct trace_t trace = {NULL, NULL, 14480, LOCATE_parser___ReduceAction433___action};
28715 val_t variable0;
28716 val_t variable1;
28717 val_t variable2;
28718 val_t variable3;
28719 val_t variable4;
28720 trace.prev = tracehead; tracehead = &trace;
28721 trace.file = LOCATE_parser;
28722 variable0 = param0;
28723 variable1 = NIT_NULL /*null*/;
28724 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28725 variable2 = variable3;
28726 variable3 = variable2 /*nodearraylist1*/;
28727 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28728 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction433___action, LOCATE_parser, 14485); nit_exit(1);}
28729 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28730 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28731 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28732 tracehead = trace.prev;
28733 return;
28734 }
28735 void parser___ReduceAction433___init(val_t self, int* init_table) {
28736 struct trace_t trace = {NULL, NULL, 14489, LOCATE_parser___ReduceAction433___init};
28737 trace.prev = tracehead; tracehead = &trace;
28738 trace.file = LOCATE_parser;
28739 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction433].i]) return;
28740 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction433].i] = 1;
28741 tracehead = trace.prev;
28742 return;
28743 }
28744 void parser___ReduceAction434___action(val_t self, val_t param0) {
28745 struct trace_t trace = {NULL, NULL, 14493, LOCATE_parser___ReduceAction434___action};
28746 val_t variable0;
28747 val_t variable1;
28748 val_t variable2;
28749 val_t variable3;
28750 val_t variable4;
28751 trace.prev = tracehead; tracehead = &trace;
28752 trace.file = LOCATE_parser;
28753 variable0 = param0;
28754 variable1 = NIT_NULL /*null*/;
28755 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28756 variable2 = variable3;
28757 variable3 = variable2 /*nodearraylist1*/;
28758 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28759 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction434___action, LOCATE_parser, 14498); nit_exit(1);}
28760 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28761 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28762 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28763 tracehead = trace.prev;
28764 return;
28765 }
28766 void parser___ReduceAction434___init(val_t self, int* init_table) {
28767 struct trace_t trace = {NULL, NULL, 14502, LOCATE_parser___ReduceAction434___init};
28768 trace.prev = tracehead; tracehead = &trace;
28769 trace.file = LOCATE_parser;
28770 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction434].i]) return;
28771 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction434].i] = 1;
28772 tracehead = trace.prev;
28773 return;
28774 }
28775 void parser___ReduceAction435___action(val_t self, val_t param0) {
28776 struct trace_t trace = {NULL, NULL, 14506, LOCATE_parser___ReduceAction435___action};
28777 val_t variable0;
28778 val_t variable1;
28779 val_t variable2;
28780 val_t variable3;
28781 val_t variable4;
28782 trace.prev = tracehead; tracehead = &trace;
28783 trace.file = LOCATE_parser;
28784 variable0 = param0;
28785 variable1 = NIT_NULL /*null*/;
28786 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28787 variable2 = variable3;
28788 variable3 = variable2 /*nodearraylist1*/;
28789 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28790 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction435___action, LOCATE_parser, 14511); nit_exit(1);}
28791 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28792 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28793 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28794 tracehead = trace.prev;
28795 return;
28796 }
28797 void parser___ReduceAction435___init(val_t self, int* init_table) {
28798 struct trace_t trace = {NULL, NULL, 14515, LOCATE_parser___ReduceAction435___init};
28799 trace.prev = tracehead; tracehead = &trace;
28800 trace.file = LOCATE_parser;
28801 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction435].i]) return;
28802 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction435].i] = 1;
28803 tracehead = trace.prev;
28804 return;
28805 }
28806 void parser___ReduceAction436___action(val_t self, val_t param0) {
28807 struct trace_t trace = {NULL, NULL, 14519, LOCATE_parser___ReduceAction436___action};
28808 val_t variable0;
28809 val_t variable1;
28810 val_t variable2;
28811 val_t variable3;
28812 val_t variable4;
28813 trace.prev = tracehead; tracehead = &trace;
28814 trace.file = LOCATE_parser;
28815 variable0 = param0;
28816 variable1 = NIT_NULL /*null*/;
28817 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28818 variable2 = variable3;
28819 variable3 = variable2 /*nodearraylist1*/;
28820 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28821 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction436___action, LOCATE_parser, 14524); nit_exit(1);}
28822 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
28823 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28824 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
28825 tracehead = trace.prev;
28826 return;
28827 }
28828 void parser___ReduceAction436___init(val_t self, int* init_table) {
28829 struct trace_t trace = {NULL, NULL, 14528, LOCATE_parser___ReduceAction436___init};
28830 trace.prev = tracehead; tracehead = &trace;
28831 trace.file = LOCATE_parser;
28832 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction436].i]) return;
28833 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction436].i] = 1;
28834 tracehead = trace.prev;
28835 return;
28836 }
28837 void parser___ReduceAction437___action(val_t self, val_t param0) {
28838 struct trace_t trace = {NULL, NULL, 14532, LOCATE_parser___ReduceAction437___action};
28839 val_t variable0;
28840 val_t variable1;
28841 val_t variable2;
28842 val_t variable3;
28843 val_t variable4;
28844 val_t variable5;
28845 val_t variable6;
28846 val_t variable7;
28847 val_t variable8;
28848 val_t variable9;
28849 val_t variable10;
28850 val_t variable11;
28851 val_t variable12;
28852 trace.prev = tracehead; tracehead = &trace;
28853 trace.file = LOCATE_parser;
28854 variable0 = param0;
28855 variable1 = NIT_NULL /*null*/;
28856 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28857 variable2 = variable3;
28858 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28859 variable3 = variable4;
28860 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28861 variable4 = variable5;
28862 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28863 variable5 = variable6;
28864 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28865 variable6 = variable7;
28866 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
28867 variable7 = variable8;
28868 variable8 = variable6 /*nodearraylist1*/;
28869 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
28870 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction437___action, LOCATE_parser, 14542); nit_exit(1);}
28871 variable9 = variable3 /*nodearraylist4*/;
28872 variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
28873 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction437___action, LOCATE_parser, 14544); nit_exit(1);}
28874 variable10 = variable2 /*nodearraylist5*/;
28875 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
28876 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction437___action, LOCATE_parser, 14546); nit_exit(1);}
28877 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
28878 if (UNTAG_Bool(variable11)) { /*if*/
28879 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
28880 if (UNTAG_Bool(variable11)) { /*if*/
28881 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
28882 } else { /*if*/
28883 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
28884 }
28885 }
28886 variable12 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/
28887 variable11 = variable12;
28888 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
28889 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28890 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
28891 tracehead = trace.prev;
28892 return;
28893 }
28894 void parser___ReduceAction437___init(val_t self, int* init_table) {
28895 struct trace_t trace = {NULL, NULL, 14562, LOCATE_parser___ReduceAction437___init};
28896 trace.prev = tracehead; tracehead = &trace;
28897 trace.file = LOCATE_parser;
28898 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction437].i]) return;
28899 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction437].i] = 1;
28900 tracehead = trace.prev;
28901 return;
28902 }
28903 void parser___ReduceAction438___action(val_t self, val_t param0) {
28904 struct trace_t trace = {NULL, NULL, 14566, LOCATE_parser___ReduceAction438___action};
28905 val_t variable0;
28906 val_t variable1;
28907 val_t variable2;
28908 val_t variable3;
28909 val_t variable4;
28910 val_t variable5;
28911 val_t variable6;
28912 val_t variable7;
28913 val_t variable8;
28914 val_t variable9;
28915 trace.prev = tracehead; tracehead = &trace;
28916 trace.file = LOCATE_parser;
28917 variable0 = param0;
28918 variable1 = NIT_NULL /*null*/;
28919 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28920 variable2 = variable3;
28921 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28922 variable3 = variable4;
28923 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
28924 variable4 = variable5;
28925 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
28926 variable5 = variable6;
28927 variable6 = variable3 /*nodearraylist1*/;
28928 variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
28929 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction438___action, LOCATE_parser, 14575); nit_exit(1);}
28930 variable7 = variable2 /*nodearraylist2*/;
28931 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
28932 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction438___action, LOCATE_parser, 14577); nit_exit(1);}
28933 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
28934 if (UNTAG_Bool(variable8)) { /*if*/
28935 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
28936 if (UNTAG_Bool(variable8)) { /*if*/
28937 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
28938 } else { /*if*/
28939 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
28940 }
28941 }
28942 variable9 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/
28943 variable8 = variable9;
28944 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
28945 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28946 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
28947 tracehead = trace.prev;
28948 return;
28949 }
28950 void parser___ReduceAction438___init(val_t self, int* init_table) {
28951 struct trace_t trace = {NULL, NULL, 14593, LOCATE_parser___ReduceAction438___init};
28952 trace.prev = tracehead; tracehead = &trace;
28953 trace.file = LOCATE_parser;
28954 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction438].i]) return;
28955 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction438].i] = 1;
28956 tracehead = trace.prev;
28957 return;
28958 }
28959 void parser___ReduceAction439___action(val_t self, val_t param0) {
28960 struct trace_t trace = {NULL, NULL, 14597, LOCATE_parser___ReduceAction439___action};
28961 val_t variable0;
28962 val_t variable1;
28963 val_t variable2;
28964 val_t variable3;
28965 val_t variable4;
28966 val_t variable5;
28967 val_t variable6;
28968 val_t variable7;
28969 val_t variable8;
28970 trace.prev = tracehead; tracehead = &trace;
28971 trace.file = LOCATE_parser;
28972 variable0 = param0;
28973 variable1 = NIT_NULL /*null*/;
28974 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28975 variable2 = variable3;
28976 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
28977 variable3 = variable4;
28978 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
28979 variable4 = variable5;
28980 variable5 = variable3 /*nodearraylist1*/;
28981 variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
28982 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction439___action, LOCATE_parser, 14604); nit_exit(1);}
28983 variable6 = variable2 /*nodearraylist2*/;
28984 variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
28985 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction439___action, LOCATE_parser, 14606); nit_exit(1);}
28986 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
28987 if (UNTAG_Bool(variable7)) { /*if*/
28988 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
28989 if (UNTAG_Bool(variable7)) { /*if*/
28990 variable4 = variable6 /*listnode4*/ /*listnode5=*/;
28991 } else { /*if*/
28992 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*IndexedCollection::append*/;
28993 }
28994 }
28995 variable8 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/
28996 variable7 = variable8;
28997 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
28998 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
28999 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
29000 tracehead = trace.prev;
29001 return;
29002 }
29003 void parser___ReduceAction439___init(val_t self, int* init_table) {
29004 struct trace_t trace = {NULL, NULL, 14622, LOCATE_parser___ReduceAction439___init};
29005 trace.prev = tracehead; tracehead = &trace;
29006 trace.file = LOCATE_parser;
29007 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction439].i]) return;
29008 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction439].i] = 1;
29009 tracehead = trace.prev;
29010 return;
29011 }
29012 void parser___ReduceAction440___action(val_t self, val_t param0) {
29013 struct trace_t trace = {NULL, NULL, 14626, LOCATE_parser___ReduceAction440___action};
29014 val_t variable0;
29015 val_t variable1;
29016 val_t variable2;
29017 val_t variable3;
29018 val_t variable4;
29019 val_t variable5;
29020 val_t variable6;
29021 val_t variable7;
29022 val_t variable8;
29023 val_t variable9;
29024 val_t variable10;
29025 trace.prev = tracehead; tracehead = &trace;
29026 trace.file = LOCATE_parser;
29027 variable0 = param0;
29028 variable1 = NIT_NULL /*null*/;
29029 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29030 variable2 = variable3;
29031 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29032 variable3 = variable4;
29033 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29034 variable4 = variable5;
29035 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
29036 variable5 = variable6;
29037 variable6 = variable4 /*nodearraylist1*/;
29038 variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/;
29039 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction440___action, LOCATE_parser, 14634); nit_exit(1);}
29040 variable7 = variable3 /*nodearraylist2*/;
29041 variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
29042 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction440___action, LOCATE_parser, 14636); nit_exit(1);}
29043 variable8 = variable2 /*nodearraylist3*/;
29044 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
29045 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction440___action, LOCATE_parser, 14638); nit_exit(1);}
29046 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
29047 if (UNTAG_Bool(variable9)) { /*if*/
29048 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
29049 if (UNTAG_Bool(variable9)) { /*if*/
29050 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
29051 } else { /*if*/
29052 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
29053 }
29054 }
29055 variable10 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/
29056 variable9 = variable10;
29057 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
29058 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
29059 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
29060 tracehead = trace.prev;
29061 return;
29062 }
29063 void parser___ReduceAction440___init(val_t self, int* init_table) {
29064 struct trace_t trace = {NULL, NULL, 14654, LOCATE_parser___ReduceAction440___init};
29065 trace.prev = tracehead; tracehead = &trace;
29066 trace.file = LOCATE_parser;
29067 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction440].i]) return;
29068 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction440].i] = 1;
29069 tracehead = trace.prev;
29070 return;
29071 }
29072 void parser___ReduceAction441___action(val_t self, val_t param0) {
29073 struct trace_t trace = {NULL, NULL, 14658, LOCATE_parser___ReduceAction441___action};
29074 val_t variable0;
29075 val_t variable1;
29076 val_t variable2;
29077 val_t variable3;
29078 val_t variable4;
29079 val_t variable5;
29080 val_t variable6;
29081 val_t variable7;
29082 val_t variable8;
29083 val_t variable9;
29084 val_t variable10;
29085 val_t variable11;
29086 val_t variable12;
29087 trace.prev = tracehead; tracehead = &trace;
29088 trace.file = LOCATE_parser;
29089 variable0 = param0;
29090 variable1 = NIT_NULL /*null*/;
29091 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29092 variable2 = variable3;
29093 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29094 variable3 = variable4;
29095 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29096 variable4 = variable5;
29097 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29098 variable5 = variable6;
29099 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29100 variable6 = variable7;
29101 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
29102 variable7 = variable8;
29103 variable8 = variable6 /*nodearraylist1*/;
29104 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29105 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction441___action, LOCATE_parser, 14668); nit_exit(1);}
29106 variable9 = variable3 /*nodearraylist4*/;
29107 variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
29108 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction441___action, LOCATE_parser, 14670); nit_exit(1);}
29109 variable10 = variable2 /*nodearraylist5*/;
29110 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
29111 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction441___action, LOCATE_parser, 14672); nit_exit(1);}
29112 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
29113 if (UNTAG_Bool(variable11)) { /*if*/
29114 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
29115 if (UNTAG_Bool(variable11)) { /*if*/
29116 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
29117 } else { /*if*/
29118 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
29119 }
29120 }
29121 variable12 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/
29122 variable11 = variable12;
29123 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
29124 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
29125 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
29126 tracehead = trace.prev;
29127 return;
29128 }
29129 void parser___ReduceAction441___init(val_t self, int* init_table) {
29130 struct trace_t trace = {NULL, NULL, 14688, LOCATE_parser___ReduceAction441___init};
29131 trace.prev = tracehead; tracehead = &trace;
29132 trace.file = LOCATE_parser;
29133 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction441].i]) return;
29134 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction441].i] = 1;
29135 tracehead = trace.prev;
29136 return;
29137 }
29138 void parser___ReduceAction442___action(val_t self, val_t param0) {
29139 struct trace_t trace = {NULL, NULL, 14692, LOCATE_parser___ReduceAction442___action};
29140 val_t variable0;
29141 val_t variable1;
29142 val_t variable2;
29143 val_t variable3;
29144 val_t variable4;
29145 val_t variable5;
29146 val_t variable6;
29147 val_t variable7;
29148 val_t variable8;
29149 val_t variable9;
29150 trace.prev = tracehead; tracehead = &trace;
29151 trace.file = LOCATE_parser;
29152 variable0 = param0;
29153 variable1 = NIT_NULL /*null*/;
29154 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29155 variable2 = variable3;
29156 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29157 variable3 = variable4;
29158 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
29159 variable4 = variable5;
29160 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
29161 variable5 = variable6;
29162 variable6 = variable3 /*nodearraylist1*/;
29163 variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
29164 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction442___action, LOCATE_parser, 14701); nit_exit(1);}
29165 variable7 = variable2 /*nodearraylist2*/;
29166 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
29167 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction442___action, LOCATE_parser, 14703); nit_exit(1);}
29168 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
29169 if (UNTAG_Bool(variable8)) { /*if*/
29170 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
29171 if (UNTAG_Bool(variable8)) { /*if*/
29172 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
29173 } else { /*if*/
29174 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
29175 }
29176 }
29177 variable9 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/
29178 variable8 = variable9;
29179 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
29180 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(76)) /*Parser::go_to*/;
29181 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
29182 tracehead = trace.prev;
29183 return;
29184 }
29185 void parser___ReduceAction442___init(val_t self, int* init_table) {
29186 struct trace_t trace = {NULL, NULL, 14719, LOCATE_parser___ReduceAction442___init};
29187 trace.prev = tracehead; tracehead = &trace;
29188 trace.file = LOCATE_parser;
29189 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction442].i]) return;
29190 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction442].i] = 1;
29191 tracehead = trace.prev;
29192 return;
29193 }
29194 void parser___ReduceAction443___action(val_t self, val_t param0) {
29195 struct trace_t trace = {NULL, NULL, 14723, LOCATE_parser___ReduceAction443___action};
29196 val_t variable0;
29197 val_t variable1;
29198 val_t variable2;
29199 val_t variable3;
29200 val_t variable4;
29201 val_t variable5;
29202 val_t variable6;
29203 val_t variable7;
29204 trace.prev = tracehead; tracehead = &trace;
29205 trace.file = LOCATE_parser;
29206 variable0 = param0;
29207 variable1 = NIT_NULL /*null*/;
29208 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29209 variable2 = variable3;
29210 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29211 variable3 = variable4;
29212 variable4 = variable3 /*nodearraylist1*/;
29213 variable5 = TAG_Bool(( variable4 /*tkwdonode2*/==NIT_NULL) || VAL_ISA( variable4 /*tkwdonode2*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
29214 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction443___action, LOCATE_parser, 14729); nit_exit(1);}
29215 variable5 = variable2 /*nodearraylist2*/;
29216 variable6 = TAG_Bool(( variable5 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29217 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction443___action, LOCATE_parser, 14731); nit_exit(1);}
29218 variable7 = NEW_ADoExpr_parser_prod___ADoExpr___init_adoexpr( variable4 /*tkwdonode2*/, variable5 /*pexprnode3*/); /*new ADoExpr*/
29219 variable6 = variable7;
29220 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
29221 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(77)) /*Parser::go_to*/;
29222 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
29223 tracehead = trace.prev;
29224 return;
29225 }
29226 void parser___ReduceAction443___init(val_t self, int* init_table) {
29227 struct trace_t trace = {NULL, NULL, 14739, LOCATE_parser___ReduceAction443___init};
29228 trace.prev = tracehead; tracehead = &trace;
29229 trace.file = LOCATE_parser;
29230 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction443].i]) return;
29231 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction443].i] = 1;
29232 tracehead = trace.prev;
29233 return;
29234 }
29235 void parser___ReduceAction444___action(val_t self, val_t param0) {
29236 struct trace_t trace = {NULL, NULL, 14743, LOCATE_parser___ReduceAction444___action};
29237 val_t variable0;
29238 val_t variable1;
29239 val_t variable2;
29240 val_t variable3;
29241 val_t variable4;
29242 val_t variable5;
29243 val_t variable6;
29244 val_t variable7;
29245 val_t variable8;
29246 val_t variable9;
29247 val_t variable10;
29248 val_t variable11;
29249 val_t variable12;
29250 val_t variable13;
29251 val_t variable14;
29252 val_t variable15;
29253 trace.prev = tracehead; tracehead = &trace;
29254 trace.file = LOCATE_parser;
29255 variable0 = param0;
29256 variable1 = NIT_NULL /*null*/;
29257 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29258 variable2 = variable3;
29259 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29260 variable3 = variable4;
29261 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29262 variable4 = variable5;
29263 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29264 variable5 = variable6;
29265 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29266 variable6 = variable7;
29267 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29268 variable7 = variable8;
29269 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29270 variable8 = variable9;
29271 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29272 variable9 = variable10;
29273 variable10 = variable9 /*nodearraylist1*/;
29274 variable11 = TAG_Bool(( variable10 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
29275 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction444___action, LOCATE_parser, 14755); nit_exit(1);}
29276 variable11 = variable7 /*nodearraylist3*/;
29277 variable12 = TAG_Bool(( variable11 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29278 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction444___action, LOCATE_parser, 14757); nit_exit(1);}
29279 variable12 = variable4 /*nodearraylist6*/;
29280 variable13 = TAG_Bool(( variable12 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29281 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction444___action, LOCATE_parser, 14759); nit_exit(1);}
29282 variable13 = variable2 /*nodearraylist8*/;
29283 variable14 = TAG_Bool(( variable13 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable13 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29284 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction444___action, LOCATE_parser, 14761); nit_exit(1);}
29285 variable15 = NEW_AIfExpr_parser_prod___AIfExpr___init_aifexpr( variable10 /*tkwifnode2*/, variable11 /*pexprnode3*/, variable12 /*pexprnode4*/, variable13 /*pexprnode5*/); /*new AIfExpr*/
29286 variable14 = variable15;
29287 variable1 = variable14 /*pexprnode1*/ /*node_list=*/;
29288 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(78)) /*Parser::go_to*/;
29289 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
29290 tracehead = trace.prev;
29291 return;
29292 }
29293 void parser___ReduceAction444___init(val_t self, int* init_table) {
29294 struct trace_t trace = {NULL, NULL, 14771, LOCATE_parser___ReduceAction444___init};
29295 trace.prev = tracehead; tracehead = &trace;
29296 trace.file = LOCATE_parser;
29297 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction444].i]) return;
29298 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction444].i] = 1;
29299 tracehead = trace.prev;
29300 return;
29301 }
29302 void parser___ReduceAction445___action(val_t self, val_t param0) {
29303 struct trace_t trace = {NULL, NULL, 14775, LOCATE_parser___ReduceAction445___action};
29304 val_t variable0;
29305 val_t variable1;
29306 val_t variable2;
29307 val_t variable3;
29308 val_t variable4;
29309 val_t variable5;
29310 val_t variable6;
29311 val_t variable7;
29312 val_t variable8;
29313 val_t variable9;
29314 val_t variable10;
29315 val_t variable11;
29316 val_t variable12;
29317 val_t variable13;
29318 trace.prev = tracehead; tracehead = &trace;
29319 trace.file = LOCATE_parser;
29320 variable0 = param0;
29321 variable1 = NIT_NULL /*null*/;
29322 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29323 variable2 = variable3;
29324 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29325 variable3 = variable4;
29326 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29327 variable4 = variable5;
29328 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29329 variable5 = variable6;
29330 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29331 variable6 = variable7;
29332 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29333 variable7 = variable8;
29334 variable8 = variable7 /*nodearraylist1*/;
29335 variable9 = TAG_Bool(( variable8 /*tkwwhilenode2*/==NIT_NULL) || VAL_ISA( variable8 /*tkwwhilenode2*/, COLOR_TKwwhile, ID_TKwwhile)) /*cast TKwwhile*/;
29336 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction445___action, LOCATE_parser, 14785); nit_exit(1);}
29337 variable9 = variable5 /*nodearraylist3*/;
29338 variable10 = TAG_Bool(( variable9 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable9 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29339 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction445___action, LOCATE_parser, 14787); nit_exit(1);}
29340 variable10 = variable3 /*nodearraylist5*/;
29341 variable11 = TAG_Bool(( variable10 /*tkwdonode4*/==NIT_NULL) || VAL_ISA( variable10 /*tkwdonode4*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
29342 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction445___action, LOCATE_parser, 14789); nit_exit(1);}
29343 variable11 = variable2 /*nodearraylist6*/;
29344 variable12 = TAG_Bool(( variable11 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable11 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29345 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction445___action, LOCATE_parser, 14791); nit_exit(1);}
29346 variable13 = NEW_AWhileExpr_parser_prod___AWhileExpr___init_awhileexpr( variable8 /*tkwwhilenode2*/, variable9 /*pexprnode3*/, variable10 /*tkwdonode4*/, variable11 /*pexprnode5*/); /*new AWhileExpr*/
29347 variable12 = variable13;
29348 variable1 = variable12 /*pexprnode1*/ /*node_list=*/;
29349 variable13 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(79)) /*Parser::go_to*/;
29350 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable13, variable1 /*node_list*/) /*Parser::push*/;
29351 tracehead = trace.prev;
29352 return;
29353 }
29354 void parser___ReduceAction445___init(val_t self, int* init_table) {
29355 struct trace_t trace = {NULL, NULL, 14801, LOCATE_parser___ReduceAction445___init};
29356 trace.prev = tracehead; tracehead = &trace;
29357 trace.file = LOCATE_parser;
29358 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction445].i]) return;
29359 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction445].i] = 1;
29360 tracehead = trace.prev;
29361 return;
29362 }
29363 void parser___ReduceAction446___action(val_t self, val_t param0) {
29364 struct trace_t trace = {NULL, NULL, 14805, LOCATE_parser___ReduceAction446___action};
29365 val_t variable0;
29366 val_t variable1;
29367 val_t variable2;
29368 val_t variable3;
29369 val_t variable4;
29370 val_t variable5;
29371 val_t variable6;
29372 val_t variable7;
29373 val_t variable8;
29374 val_t variable9;
29375 val_t variable10;
29376 trace.prev = tracehead; tracehead = &trace;
29377 trace.file = LOCATE_parser;
29378 variable0 = param0;
29379 variable1 = NIT_NULL /*null*/;
29380 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29381 variable2 = variable3;
29382 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29383 variable3 = variable4;
29384 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29385 variable4 = variable5;
29386 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29387 variable5 = variable6;
29388 variable6 = variable5 /*nodearraylist1*/;
29389 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29390 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction446___action, LOCATE_parser, 14813); nit_exit(1);}
29391 variable7 = variable3 /*nodearraylist3*/;
29392 variable8 = TAG_Bool(( variable7 /*tkwdonode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwdonode3*/, COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
29393 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction446___action, LOCATE_parser, 14815); nit_exit(1);}
29394 variable8 = variable2 /*nodearraylist4*/;
29395 variable9 = TAG_Bool(( variable8 /*pexprnode4*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode4*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29396 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction446___action, LOCATE_parser, 14817); nit_exit(1);}
29397 variable10 = NEW_AForExpr_parser_prod___AForExpr___init_aforexpr( variable6 /*pexprnode2*/, variable7 /*tkwdonode3*/, variable8 /*pexprnode4*/); /*new AForExpr*/
29398 variable9 = variable10;
29399 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
29400 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(80)) /*Parser::go_to*/;
29401 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
29402 tracehead = trace.prev;
29403 return;
29404 }
29405 void parser___ReduceAction446___init(val_t self, int* init_table) {
29406 struct trace_t trace = {NULL, NULL, 14826, LOCATE_parser___ReduceAction446___init};
29407 trace.prev = tracehead; tracehead = &trace;
29408 trace.file = LOCATE_parser;
29409 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction446].i]) return;
29410 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction446].i] = 1;
29411 tracehead = trace.prev;
29412 return;
29413 }
29414 void parser___ReduceAction447___action(val_t self, val_t param0) {
29415 struct trace_t trace = {NULL, NULL, 14830, LOCATE_parser___ReduceAction447___action};
29416 val_t variable0;
29417 val_t variable1;
29418 val_t variable2;
29419 val_t variable3;
29420 val_t variable4;
29421 val_t variable5;
29422 val_t variable6;
29423 trace.prev = tracehead; tracehead = &trace;
29424 trace.file = LOCATE_parser;
29425 variable0 = param0;
29426 variable1 = NIT_NULL /*null*/;
29427 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29428 variable2 = variable3;
29429 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
29430 variable3 = variable4;
29431 variable4 = variable2 /*nodearraylist1*/;
29432 variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
29433 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction447___action, LOCATE_parser, 14836); nit_exit(1);}
29434 variable6 = NEW_AType_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/
29435 variable5 = variable6;
29436 variable1 = variable5 /*ptypenode1*/ /*node_list=*/;
29437 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(81)) /*Parser::go_to*/;
29438 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
29439 tracehead = trace.prev;
29440 return;
29441 }
29442 void parser___ReduceAction447___init(val_t self, int* init_table) {
29443 struct trace_t trace = {NULL, NULL, 14844, LOCATE_parser___ReduceAction447___init};
29444 trace.prev = tracehead; tracehead = &trace;
29445 trace.file = LOCATE_parser;
29446 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction447].i]) return;
29447 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction447].i] = 1;
29448 tracehead = trace.prev;
29449 return;
29450 }
29451 void parser___ReduceAction448___action(val_t self, val_t param0) {
29452 struct trace_t trace = {NULL, NULL, 14848, LOCATE_parser___ReduceAction448___action};
29453 val_t variable0;
29454 val_t variable1;
29455 val_t variable2;
29456 val_t variable3;
29457 val_t variable4;
29458 val_t variable5;
29459 val_t variable6;
29460 val_t variable7;
29461 val_t variable8;
29462 val_t variable9;
29463 val_t variable10;
29464 val_t variable11;
29465 val_t variable12;
29466 trace.prev = tracehead; tracehead = &trace;
29467 trace.file = LOCATE_parser;
29468 variable0 = param0;
29469 variable1 = NIT_NULL /*null*/;
29470 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29471 variable2 = variable3;
29472 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29473 variable3 = variable4;
29474 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29475 variable4 = variable5;
29476 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29477 variable5 = variable6;
29478 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29479 variable6 = variable7;
29480 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29481 variable7 = variable8;
29482 variable9 = NEW_Array_array___Array___init(); /*new Array[Object]*/
29483 variable8 = variable9;
29484 variable9 = variable7 /*nodearraylist1*/;
29485 variable10 = TAG_Bool(( variable9 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable9 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
29486 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction448___action, LOCATE_parser, 14859); nit_exit(1);}
29487 variable10 = variable4 /*nodearraylist4*/;
29488 variable11 = TAG_Bool(( variable10 /*listnode3*/==NIT_NULL) || VAL_ISA( variable10 /*listnode3*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
29489 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction448___action, LOCATE_parser, 14861); nit_exit(1);}
29490 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode3*/ == NIT_NULL /*null*/) || (( variable10 /*listnode3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode3*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode3*/, NIT_NULL /*null*/) /*Object::==*/)))))));
29491 if (UNTAG_Bool(variable11)) { /*if*/
29492 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___Collection___is_empty))( variable8 /*listnode4*/) /*AbstractArray::is_empty*/;
29493 if (UNTAG_Bool(variable11)) { /*if*/
29494 variable8 = variable10 /*listnode3*/ /*listnode4=*/;
29495 } else { /*if*/
29496 ((abstract_collection___IndexedCollection___append_t)CALL( variable8 /*listnode4*/,COLOR_abstract_collection___IndexedCollection___append))( variable8 /*listnode4*/, variable10 /*listnode3*/) /*IndexedCollection::append*/;
29497 }
29498 }
29499 variable12 = NEW_AType_parser_prod___AType___init_atype( variable9 /*tclassidnode2*/, variable8 /*listnode4*/); /*new AType*/
29500 variable11 = variable12;
29501 variable1 = variable11 /*ptypenode1*/ /*node_list=*/;
29502 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(81)) /*Parser::go_to*/;
29503 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
29504 tracehead = trace.prev;
29505 return;
29506 }
29507 void parser___ReduceAction448___init(val_t self, int* init_table) {
29508 struct trace_t trace = {NULL, NULL, 14876, LOCATE_parser___ReduceAction448___init};
29509 trace.prev = tracehead; tracehead = &trace;
29510 trace.file = LOCATE_parser;
29511 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction448].i]) return;
29512 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction448].i] = 1;
29513 tracehead = trace.prev;
29514 return;
29515 }
29516 void parser___ReduceAction449___action(val_t self, val_t param0) {
29517 struct trace_t trace = {NULL, NULL, 14880, LOCATE_parser___ReduceAction449___action};
29518 val_t variable0;
29519 val_t variable1;
29520 val_t variable2;
29521 val_t variable3;
29522 val_t variable4;
29523 trace.prev = tracehead; tracehead = &trace;
29524 trace.file = LOCATE_parser;
29525 variable0 = param0;
29526 variable1 = NIT_NULL /*null*/;
29527 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29528 variable2 = variable3;
29529 variable3 = variable2 /*nodearraylist1*/;
29530 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29531 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction449___action, LOCATE_parser, 14885); nit_exit(1);}
29532 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
29533 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(82)) /*Parser::go_to*/;
29534 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
29535 tracehead = trace.prev;
29536 return;
29537 }
29538 void parser___ReduceAction449___init(val_t self, int* init_table) {
29539 struct trace_t trace = {NULL, NULL, 14889, LOCATE_parser___ReduceAction449___init};
29540 trace.prev = tracehead; tracehead = &trace;
29541 trace.file = LOCATE_parser;
29542 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction449].i]) return;
29543 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction449].i] = 1;
29544 tracehead = trace.prev;
29545 return;
29546 }
29547 void parser___ReduceAction450___action(val_t self, val_t param0) {
29548 struct trace_t trace = {NULL, NULL, 14893, LOCATE_parser___ReduceAction450___action};
29549 val_t variable0;
29550 val_t variable1;
29551 val_t variable2;
29552 val_t variable3;
29553 val_t variable4;
29554 val_t variable5;
29555 val_t variable6;
29556 val_t variable7;
29557 val_t variable8;
29558 val_t variable9;
29559 val_t variable10;
29560 val_t variable11;
29561 val_t variable12;
29562 val_t variable13;
29563 val_t variable14;
29564 val_t variable15;
29565 val_t variable16;
29566 val_t variable17;
29567 val_t variable18;
29568 val_t variable19;
29569 val_t variable20;
29570 trace.prev = tracehead; tracehead = &trace;
29571 trace.file = LOCATE_parser;
29572 variable0 = param0;
29573 variable1 = NIT_NULL /*null*/;
29574 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29575 variable2 = variable3;
29576 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29577 variable3 = variable4;
29578 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29579 variable4 = variable5;
29580 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29581 variable5 = variable6;
29582 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29583 variable6 = variable7;
29584 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29585 variable7 = variable8;
29586 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29587 variable8 = variable9;
29588 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29589 variable9 = variable10;
29590 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29591 variable10 = variable11;
29592 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29593 variable11 = variable12;
29594 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29595 variable12 = variable13;
29596 variable13 = variable12 /*nodearraylist1*/;
29597 variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
29598 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction450___action, LOCATE_parser, 14908); nit_exit(1);}
29599 variable14 = variable10 /*nodearraylist3*/;
29600 variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29601 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction450___action, LOCATE_parser, 14910); nit_exit(1);}
29602 variable15 = variable8 /*nodearraylist5*/;
29603 variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/;
29604 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction450___action, LOCATE_parser, 14912); nit_exit(1);}
29605 variable16 = variable6 /*nodearraylist7*/;
29606 variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29607 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction450___action, LOCATE_parser, 14914); nit_exit(1);}
29608 variable17 = variable4 /*nodearraylist9*/;
29609 variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/;
29610 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction450___action, LOCATE_parser, 14916); nit_exit(1);}
29611 variable18 = variable2 /*nodearraylist11*/;
29612 variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29613 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction450___action, LOCATE_parser, 14918); nit_exit(1);}
29614 variable20 = NEW_AIfexprExpr_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/
29615 variable19 = variable20;
29616 variable1 = variable19 /*pexprnode1*/ /*node_list=*/;
29617 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(82)) /*Parser::go_to*/;
29618 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
29619 tracehead = trace.prev;
29620 return;
29621 }
29622 void parser___ReduceAction450___init(val_t self, int* init_table) {
29623 struct trace_t trace = {NULL, NULL, 14930, LOCATE_parser___ReduceAction450___init};
29624 trace.prev = tracehead; tracehead = &trace;
29625 trace.file = LOCATE_parser;
29626 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction450].i]) return;
29627 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction450].i] = 1;
29628 tracehead = trace.prev;
29629 return;
29630 }
29631 void parser___ReduceAction451___action(val_t self, val_t param0) {
29632 struct trace_t trace = {NULL, NULL, 14934, LOCATE_parser___ReduceAction451___action};
29633 val_t variable0;
29634 val_t variable1;
29635 val_t variable2;
29636 val_t variable3;
29637 val_t variable4;
29638 trace.prev = tracehead; tracehead = &trace;
29639 trace.file = LOCATE_parser;
29640 variable0 = param0;
29641 variable1 = NIT_NULL /*null*/;
29642 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29643 variable2 = variable3;
29644 variable3 = variable2 /*nodearraylist1*/;
29645 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29646 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction451___action, LOCATE_parser, 14939); nit_exit(1);}
29647 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
29648 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(83)) /*Parser::go_to*/;
29649 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
29650 tracehead = trace.prev;
29651 return;
29652 }
29653 void parser___ReduceAction451___init(val_t self, int* init_table) {
29654 struct trace_t trace = {NULL, NULL, 14943, LOCATE_parser___ReduceAction451___init};
29655 trace.prev = tracehead; tracehead = &trace;
29656 trace.file = LOCATE_parser;
29657 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction451].i]) return;
29658 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction451].i] = 1;
29659 tracehead = trace.prev;
29660 return;
29661 }
29662 void parser___ReduceAction452___action(val_t self, val_t param0) {
29663 struct trace_t trace = {NULL, NULL, 14947, LOCATE_parser___ReduceAction452___action};
29664 val_t variable0;
29665 val_t variable1;
29666 val_t variable2;
29667 val_t variable3;
29668 val_t variable4;
29669 val_t variable5;
29670 val_t variable6;
29671 val_t variable7;
29672 val_t variable8;
29673 val_t variable9;
29674 trace.prev = tracehead; tracehead = &trace;
29675 trace.file = LOCATE_parser;
29676 variable0 = param0;
29677 variable1 = NIT_NULL /*null*/;
29678 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29679 variable2 = variable3;
29680 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29681 variable3 = variable4;
29682 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29683 variable4 = variable5;
29684 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29685 variable5 = variable6;
29686 variable6 = variable5 /*nodearraylist1*/;
29687 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29688 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction452___action, LOCATE_parser, 14955); nit_exit(1);}
29689 variable7 = variable2 /*nodearraylist4*/;
29690 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29691 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction452___action, LOCATE_parser, 14957); nit_exit(1);}
29692 variable9 = NEW_AOrExpr_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/
29693 variable8 = variable9;
29694 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
29695 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(83)) /*Parser::go_to*/;
29696 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
29697 tracehead = trace.prev;
29698 return;
29699 }
29700 void parser___ReduceAction452___init(val_t self, int* init_table) {
29701 struct trace_t trace = {NULL, NULL, 14965, LOCATE_parser___ReduceAction452___init};
29702 trace.prev = tracehead; tracehead = &trace;
29703 trace.file = LOCATE_parser;
29704 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction452].i]) return;
29705 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction452].i] = 1;
29706 tracehead = trace.prev;
29707 return;
29708 }
29709 void parser___ReduceAction453___action(val_t self, val_t param0) {
29710 struct trace_t trace = {NULL, NULL, 14969, LOCATE_parser___ReduceAction453___action};
29711 val_t variable0;
29712 val_t variable1;
29713 val_t variable2;
29714 val_t variable3;
29715 val_t variable4;
29716 val_t variable5;
29717 val_t variable6;
29718 val_t variable7;
29719 val_t variable8;
29720 val_t variable9;
29721 trace.prev = tracehead; tracehead = &trace;
29722 trace.file = LOCATE_parser;
29723 variable0 = param0;
29724 variable1 = NIT_NULL /*null*/;
29725 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29726 variable2 = variable3;
29727 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29728 variable3 = variable4;
29729 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29730 variable4 = variable5;
29731 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29732 variable5 = variable6;
29733 variable6 = variable5 /*nodearraylist1*/;
29734 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29735 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction453___action, LOCATE_parser, 14977); nit_exit(1);}
29736 variable7 = variable2 /*nodearraylist4*/;
29737 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29738 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction453___action, LOCATE_parser, 14979); nit_exit(1);}
29739 variable9 = NEW_AAndExpr_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/
29740 variable8 = variable9;
29741 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
29742 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(83)) /*Parser::go_to*/;
29743 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
29744 tracehead = trace.prev;
29745 return;
29746 }
29747 void parser___ReduceAction453___init(val_t self, int* init_table) {
29748 struct trace_t trace = {NULL, NULL, 14987, LOCATE_parser___ReduceAction453___init};
29749 trace.prev = tracehead; tracehead = &trace;
29750 trace.file = LOCATE_parser;
29751 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction453].i]) return;
29752 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction453].i] = 1;
29753 tracehead = trace.prev;
29754 return;
29755 }
29756 void parser___ReduceAction454___action(val_t self, val_t param0) {
29757 struct trace_t trace = {NULL, NULL, 14991, LOCATE_parser___ReduceAction454___action};
29758 val_t variable0;
29759 val_t variable1;
29760 val_t variable2;
29761 val_t variable3;
29762 val_t variable4;
29763 trace.prev = tracehead; tracehead = &trace;
29764 trace.file = LOCATE_parser;
29765 variable0 = param0;
29766 variable1 = NIT_NULL /*null*/;
29767 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29768 variable2 = variable3;
29769 variable3 = variable2 /*nodearraylist1*/;
29770 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29771 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction454___action, LOCATE_parser, 14996); nit_exit(1);}
29772 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
29773 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(84)) /*Parser::go_to*/;
29774 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
29775 tracehead = trace.prev;
29776 return;
29777 }
29778 void parser___ReduceAction454___init(val_t self, int* init_table) {
29779 struct trace_t trace = {NULL, NULL, 15000, LOCATE_parser___ReduceAction454___init};
29780 trace.prev = tracehead; tracehead = &trace;
29781 trace.file = LOCATE_parser;
29782 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction454].i]) return;
29783 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction454].i] = 1;
29784 tracehead = trace.prev;
29785 return;
29786 }
29787 void parser___ReduceAction455___action(val_t self, val_t param0) {
29788 struct trace_t trace = {NULL, NULL, 15004, LOCATE_parser___ReduceAction455___action};
29789 val_t variable0;
29790 val_t variable1;
29791 val_t variable2;
29792 val_t variable3;
29793 val_t variable4;
29794 val_t variable5;
29795 val_t variable6;
29796 val_t variable7;
29797 val_t variable8;
29798 trace.prev = tracehead; tracehead = &trace;
29799 trace.file = LOCATE_parser;
29800 variable0 = param0;
29801 variable1 = NIT_NULL /*null*/;
29802 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29803 variable2 = variable3;
29804 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29805 variable3 = variable4;
29806 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29807 variable4 = variable5;
29808 variable5 = variable4 /*nodearraylist1*/;
29809 variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/;
29810 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction455___action, LOCATE_parser, 15011); nit_exit(1);}
29811 variable6 = variable2 /*nodearraylist3*/;
29812 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29813 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction455___action, LOCATE_parser, 15013); nit_exit(1);}
29814 variable8 = NEW_ANotExpr_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/
29815 variable7 = variable8;
29816 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
29817 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(84)) /*Parser::go_to*/;
29818 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
29819 tracehead = trace.prev;
29820 return;
29821 }
29822 void parser___ReduceAction455___init(val_t self, int* init_table) {
29823 struct trace_t trace = {NULL, NULL, 15021, LOCATE_parser___ReduceAction455___init};
29824 trace.prev = tracehead; tracehead = &trace;
29825 trace.file = LOCATE_parser;
29826 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction455].i]) return;
29827 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction455].i] = 1;
29828 tracehead = trace.prev;
29829 return;
29830 }
29831 void parser___ReduceAction456___action(val_t self, val_t param0) {
29832 struct trace_t trace = {NULL, NULL, 15025, LOCATE_parser___ReduceAction456___action};
29833 val_t variable0;
29834 val_t variable1;
29835 val_t variable2;
29836 val_t variable3;
29837 val_t variable4;
29838 trace.prev = tracehead; tracehead = &trace;
29839 trace.file = LOCATE_parser;
29840 variable0 = param0;
29841 variable1 = NIT_NULL /*null*/;
29842 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29843 variable2 = variable3;
29844 variable3 = variable2 /*nodearraylist1*/;
29845 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29846 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction456___action, LOCATE_parser, 15030); nit_exit(1);}
29847 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
29848 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
29849 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
29850 tracehead = trace.prev;
29851 return;
29852 }
29853 void parser___ReduceAction456___init(val_t self, int* init_table) {
29854 struct trace_t trace = {NULL, NULL, 15034, LOCATE_parser___ReduceAction456___init};
29855 trace.prev = tracehead; tracehead = &trace;
29856 trace.file = LOCATE_parser;
29857 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction456].i]) return;
29858 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction456].i] = 1;
29859 tracehead = trace.prev;
29860 return;
29861 }
29862 void parser___ReduceAction457___action(val_t self, val_t param0) {
29863 struct trace_t trace = {NULL, NULL, 15038, LOCATE_parser___ReduceAction457___action};
29864 val_t variable0;
29865 val_t variable1;
29866 val_t variable2;
29867 val_t variable3;
29868 val_t variable4;
29869 val_t variable5;
29870 val_t variable6;
29871 val_t variable7;
29872 val_t variable8;
29873 val_t variable9;
29874 trace.prev = tracehead; tracehead = &trace;
29875 trace.file = LOCATE_parser;
29876 variable0 = param0;
29877 variable1 = NIT_NULL /*null*/;
29878 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29879 variable2 = variable3;
29880 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29881 variable3 = variable4;
29882 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29883 variable4 = variable5;
29884 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29885 variable5 = variable6;
29886 variable6 = variable5 /*nodearraylist1*/;
29887 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29888 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction457___action, LOCATE_parser, 15046); nit_exit(1);}
29889 variable7 = variable2 /*nodearraylist4*/;
29890 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29891 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction457___action, LOCATE_parser, 15048); nit_exit(1);}
29892 variable9 = NEW_AEqExpr_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/
29893 variable8 = variable9;
29894 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
29895 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
29896 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
29897 tracehead = trace.prev;
29898 return;
29899 }
29900 void parser___ReduceAction457___init(val_t self, int* init_table) {
29901 struct trace_t trace = {NULL, NULL, 15056, LOCATE_parser___ReduceAction457___init};
29902 trace.prev = tracehead; tracehead = &trace;
29903 trace.file = LOCATE_parser;
29904 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction457].i]) return;
29905 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction457].i] = 1;
29906 tracehead = trace.prev;
29907 return;
29908 }
29909 void parser___ReduceAction458___action(val_t self, val_t param0) {
29910 struct trace_t trace = {NULL, NULL, 15060, LOCATE_parser___ReduceAction458___action};
29911 val_t variable0;
29912 val_t variable1;
29913 val_t variable2;
29914 val_t variable3;
29915 val_t variable4;
29916 val_t variable5;
29917 val_t variable6;
29918 val_t variable7;
29919 val_t variable8;
29920 val_t variable9;
29921 trace.prev = tracehead; tracehead = &trace;
29922 trace.file = LOCATE_parser;
29923 variable0 = param0;
29924 variable1 = NIT_NULL /*null*/;
29925 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29926 variable2 = variable3;
29927 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29928 variable3 = variable4;
29929 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29930 variable4 = variable5;
29931 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29932 variable5 = variable6;
29933 variable6 = variable5 /*nodearraylist1*/;
29934 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29935 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction458___action, LOCATE_parser, 15068); nit_exit(1);}
29936 variable7 = variable2 /*nodearraylist4*/;
29937 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29938 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction458___action, LOCATE_parser, 15070); nit_exit(1);}
29939 variable9 = NEW_AEeExpr_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/
29940 variable8 = variable9;
29941 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
29942 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
29943 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
29944 tracehead = trace.prev;
29945 return;
29946 }
29947 void parser___ReduceAction458___init(val_t self, int* init_table) {
29948 struct trace_t trace = {NULL, NULL, 15078, LOCATE_parser___ReduceAction458___init};
29949 trace.prev = tracehead; tracehead = &trace;
29950 trace.file = LOCATE_parser;
29951 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction458].i]) return;
29952 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction458].i] = 1;
29953 tracehead = trace.prev;
29954 return;
29955 }
29956 void parser___ReduceAction459___action(val_t self, val_t param0) {
29957 struct trace_t trace = {NULL, NULL, 15082, LOCATE_parser___ReduceAction459___action};
29958 val_t variable0;
29959 val_t variable1;
29960 val_t variable2;
29961 val_t variable3;
29962 val_t variable4;
29963 val_t variable5;
29964 val_t variable6;
29965 val_t variable7;
29966 val_t variable8;
29967 val_t variable9;
29968 trace.prev = tracehead; tracehead = &trace;
29969 trace.file = LOCATE_parser;
29970 variable0 = param0;
29971 variable1 = NIT_NULL /*null*/;
29972 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29973 variable2 = variable3;
29974 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29975 variable3 = variable4;
29976 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29977 variable4 = variable5;
29978 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
29979 variable5 = variable6;
29980 variable6 = variable5 /*nodearraylist1*/;
29981 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29982 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction459___action, LOCATE_parser, 15090); nit_exit(1);}
29983 variable7 = variable2 /*nodearraylist4*/;
29984 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
29985 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction459___action, LOCATE_parser, 15092); nit_exit(1);}
29986 variable9 = NEW_ANeExpr_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/
29987 variable8 = variable9;
29988 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
29989 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
29990 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
29991 tracehead = trace.prev;
29992 return;
29993 }
29994 void parser___ReduceAction459___init(val_t self, int* init_table) {
29995 struct trace_t trace = {NULL, NULL, 15100, LOCATE_parser___ReduceAction459___init};
29996 trace.prev = tracehead; tracehead = &trace;
29997 trace.file = LOCATE_parser;
29998 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction459].i]) return;
29999 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction459].i] = 1;
30000 tracehead = trace.prev;
30001 return;
30002 }
30003 void parser___ReduceAction460___action(val_t self, val_t param0) {
30004 struct trace_t trace = {NULL, NULL, 15104, LOCATE_parser___ReduceAction460___action};
30005 val_t variable0;
30006 val_t variable1;
30007 val_t variable2;
30008 val_t variable3;
30009 val_t variable4;
30010 val_t variable5;
30011 val_t variable6;
30012 val_t variable7;
30013 val_t variable8;
30014 val_t variable9;
30015 trace.prev = tracehead; tracehead = &trace;
30016 trace.file = LOCATE_parser;
30017 variable0 = param0;
30018 variable1 = NIT_NULL /*null*/;
30019 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30020 variable2 = variable3;
30021 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30022 variable3 = variable4;
30023 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30024 variable4 = variable5;
30025 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30026 variable5 = variable6;
30027 variable6 = variable5 /*nodearraylist1*/;
30028 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30029 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction460___action, LOCATE_parser, 15112); nit_exit(1);}
30030 variable7 = variable2 /*nodearraylist4*/;
30031 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30032 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction460___action, LOCATE_parser, 15114); nit_exit(1);}
30033 variable9 = NEW_ALtExpr_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/
30034 variable8 = variable9;
30035 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30036 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
30037 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30038 tracehead = trace.prev;
30039 return;
30040 }
30041 void parser___ReduceAction460___init(val_t self, int* init_table) {
30042 struct trace_t trace = {NULL, NULL, 15122, LOCATE_parser___ReduceAction460___init};
30043 trace.prev = tracehead; tracehead = &trace;
30044 trace.file = LOCATE_parser;
30045 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction460].i]) return;
30046 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction460].i] = 1;
30047 tracehead = trace.prev;
30048 return;
30049 }
30050 void parser___ReduceAction461___action(val_t self, val_t param0) {
30051 struct trace_t trace = {NULL, NULL, 15126, LOCATE_parser___ReduceAction461___action};
30052 val_t variable0;
30053 val_t variable1;
30054 val_t variable2;
30055 val_t variable3;
30056 val_t variable4;
30057 val_t variable5;
30058 val_t variable6;
30059 val_t variable7;
30060 val_t variable8;
30061 val_t variable9;
30062 trace.prev = tracehead; tracehead = &trace;
30063 trace.file = LOCATE_parser;
30064 variable0 = param0;
30065 variable1 = NIT_NULL /*null*/;
30066 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30067 variable2 = variable3;
30068 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30069 variable3 = variable4;
30070 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30071 variable4 = variable5;
30072 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30073 variable5 = variable6;
30074 variable6 = variable5 /*nodearraylist1*/;
30075 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30076 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction461___action, LOCATE_parser, 15134); nit_exit(1);}
30077 variable7 = variable2 /*nodearraylist4*/;
30078 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30079 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction461___action, LOCATE_parser, 15136); nit_exit(1);}
30080 variable9 = NEW_ALeExpr_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/
30081 variable8 = variable9;
30082 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30083 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
30084 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30085 tracehead = trace.prev;
30086 return;
30087 }
30088 void parser___ReduceAction461___init(val_t self, int* init_table) {
30089 struct trace_t trace = {NULL, NULL, 15144, LOCATE_parser___ReduceAction461___init};
30090 trace.prev = tracehead; tracehead = &trace;
30091 trace.file = LOCATE_parser;
30092 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction461].i]) return;
30093 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction461].i] = 1;
30094 tracehead = trace.prev;
30095 return;
30096 }
30097 void parser___ReduceAction462___action(val_t self, val_t param0) {
30098 struct trace_t trace = {NULL, NULL, 15148, LOCATE_parser___ReduceAction462___action};
30099 val_t variable0;
30100 val_t variable1;
30101 val_t variable2;
30102 val_t variable3;
30103 val_t variable4;
30104 val_t variable5;
30105 val_t variable6;
30106 val_t variable7;
30107 val_t variable8;
30108 val_t variable9;
30109 trace.prev = tracehead; tracehead = &trace;
30110 trace.file = LOCATE_parser;
30111 variable0 = param0;
30112 variable1 = NIT_NULL /*null*/;
30113 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30114 variable2 = variable3;
30115 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30116 variable3 = variable4;
30117 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30118 variable4 = variable5;
30119 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30120 variable5 = variable6;
30121 variable6 = variable5 /*nodearraylist1*/;
30122 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30123 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction462___action, LOCATE_parser, 15156); nit_exit(1);}
30124 variable7 = variable2 /*nodearraylist4*/;
30125 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30126 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction462___action, LOCATE_parser, 15158); nit_exit(1);}
30127 variable9 = NEW_AGtExpr_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/
30128 variable8 = variable9;
30129 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30130 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
30131 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30132 tracehead = trace.prev;
30133 return;
30134 }
30135 void parser___ReduceAction462___init(val_t self, int* init_table) {
30136 struct trace_t trace = {NULL, NULL, 15166, LOCATE_parser___ReduceAction462___init};
30137 trace.prev = tracehead; tracehead = &trace;
30138 trace.file = LOCATE_parser;
30139 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction462].i]) return;
30140 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction462].i] = 1;
30141 tracehead = trace.prev;
30142 return;
30143 }
30144 void parser___ReduceAction463___action(val_t self, val_t param0) {
30145 struct trace_t trace = {NULL, NULL, 15170, LOCATE_parser___ReduceAction463___action};
30146 val_t variable0;
30147 val_t variable1;
30148 val_t variable2;
30149 val_t variable3;
30150 val_t variable4;
30151 val_t variable5;
30152 val_t variable6;
30153 val_t variable7;
30154 val_t variable8;
30155 val_t variable9;
30156 trace.prev = tracehead; tracehead = &trace;
30157 trace.file = LOCATE_parser;
30158 variable0 = param0;
30159 variable1 = NIT_NULL /*null*/;
30160 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30161 variable2 = variable3;
30162 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30163 variable3 = variable4;
30164 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30165 variable4 = variable5;
30166 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30167 variable5 = variable6;
30168 variable6 = variable5 /*nodearraylist1*/;
30169 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30170 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction463___action, LOCATE_parser, 15178); nit_exit(1);}
30171 variable7 = variable2 /*nodearraylist4*/;
30172 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30173 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction463___action, LOCATE_parser, 15180); nit_exit(1);}
30174 variable9 = NEW_AGeExpr_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/
30175 variable8 = variable9;
30176 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30177 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
30178 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30179 tracehead = trace.prev;
30180 return;
30181 }
30182 void parser___ReduceAction463___init(val_t self, int* init_table) {
30183 struct trace_t trace = {NULL, NULL, 15188, LOCATE_parser___ReduceAction463___init};
30184 trace.prev = tracehead; tracehead = &trace;
30185 trace.file = LOCATE_parser;
30186 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction463].i]) return;
30187 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction463].i] = 1;
30188 tracehead = trace.prev;
30189 return;
30190 }
30191 void parser___ReduceAction464___action(val_t self, val_t param0) {
30192 struct trace_t trace = {NULL, NULL, 15192, LOCATE_parser___ReduceAction464___action};
30193 val_t variable0;
30194 val_t variable1;
30195 val_t variable2;
30196 val_t variable3;
30197 val_t variable4;
30198 val_t variable5;
30199 val_t variable6;
30200 val_t variable7;
30201 val_t variable8;
30202 val_t variable9;
30203 trace.prev = tracehead; tracehead = &trace;
30204 trace.file = LOCATE_parser;
30205 variable0 = param0;
30206 variable1 = NIT_NULL /*null*/;
30207 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30208 variable2 = variable3;
30209 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30210 variable3 = variable4;
30211 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30212 variable4 = variable5;
30213 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30214 variable5 = variable6;
30215 variable6 = variable5 /*nodearraylist1*/;
30216 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30217 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction464___action, LOCATE_parser, 15200); nit_exit(1);}
30218 variable7 = variable2 /*nodearraylist4*/;
30219 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30220 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction464___action, LOCATE_parser, 15202); nit_exit(1);}
30221 variable9 = NEW_AStarshipExpr_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/
30222 variable8 = variable9;
30223 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30224 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
30225 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30226 tracehead = trace.prev;
30227 return;
30228 }
30229 void parser___ReduceAction464___init(val_t self, int* init_table) {
30230 struct trace_t trace = {NULL, NULL, 15210, LOCATE_parser___ReduceAction464___init};
30231 trace.prev = tracehead; tracehead = &trace;
30232 trace.file = LOCATE_parser;
30233 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction464].i]) return;
30234 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction464].i] = 1;
30235 tracehead = trace.prev;
30236 return;
30237 }
30238 void parser___ReduceAction465___action(val_t self, val_t param0) {
30239 struct trace_t trace = {NULL, NULL, 15214, LOCATE_parser___ReduceAction465___action};
30240 val_t variable0;
30241 val_t variable1;
30242 val_t variable2;
30243 val_t variable3;
30244 val_t variable4;
30245 val_t variable5;
30246 val_t variable6;
30247 val_t variable7;
30248 val_t variable8;
30249 val_t variable9;
30250 trace.prev = tracehead; tracehead = &trace;
30251 trace.file = LOCATE_parser;
30252 variable0 = param0;
30253 variable1 = NIT_NULL /*null*/;
30254 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30255 variable2 = variable3;
30256 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30257 variable3 = variable4;
30258 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30259 variable4 = variable5;
30260 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30261 variable5 = variable6;
30262 variable6 = variable5 /*nodearraylist1*/;
30263 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30264 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction465___action, LOCATE_parser, 15222); nit_exit(1);}
30265 variable7 = variable2 /*nodearraylist4*/;
30266 variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
30267 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction465___action, LOCATE_parser, 15224); nit_exit(1);}
30268 variable9 = NEW_AIsaExpr_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/
30269 variable8 = variable9;
30270 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30271 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(85)) /*Parser::go_to*/;
30272 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30273 tracehead = trace.prev;
30274 return;
30275 }
30276 void parser___ReduceAction465___init(val_t self, int* init_table) {
30277 struct trace_t trace = {NULL, NULL, 15232, LOCATE_parser___ReduceAction465___init};
30278 trace.prev = tracehead; tracehead = &trace;
30279 trace.file = LOCATE_parser;
30280 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction465].i]) return;
30281 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction465].i] = 1;
30282 tracehead = trace.prev;
30283 return;
30284 }
30285 void parser___ReduceAction466___action(val_t self, val_t param0) {
30286 struct trace_t trace = {NULL, NULL, 15236, LOCATE_parser___ReduceAction466___action};
30287 val_t variable0;
30288 val_t variable1;
30289 val_t variable2;
30290 val_t variable3;
30291 val_t variable4;
30292 trace.prev = tracehead; tracehead = &trace;
30293 trace.file = LOCATE_parser;
30294 variable0 = param0;
30295 variable1 = NIT_NULL /*null*/;
30296 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30297 variable2 = variable3;
30298 variable3 = variable2 /*nodearraylist1*/;
30299 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30300 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction466___action, LOCATE_parser, 15241); nit_exit(1);}
30301 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
30302 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(86)) /*Parser::go_to*/;
30303 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
30304 tracehead = trace.prev;
30305 return;
30306 }
30307 void parser___ReduceAction466___init(val_t self, int* init_table) {
30308 struct trace_t trace = {NULL, NULL, 15245, LOCATE_parser___ReduceAction466___init};
30309 trace.prev = tracehead; tracehead = &trace;
30310 trace.file = LOCATE_parser;
30311 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction466].i]) return;
30312 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction466].i] = 1;
30313 tracehead = trace.prev;
30314 return;
30315 }
30316 void parser___ReduceAction467___action(val_t self, val_t param0) {
30317 struct trace_t trace = {NULL, NULL, 15249, LOCATE_parser___ReduceAction467___action};
30318 val_t variable0;
30319 val_t variable1;
30320 val_t variable2;
30321 val_t variable3;
30322 val_t variable4;
30323 val_t variable5;
30324 val_t variable6;
30325 val_t variable7;
30326 val_t variable8;
30327 val_t variable9;
30328 trace.prev = tracehead; tracehead = &trace;
30329 trace.file = LOCATE_parser;
30330 variable0 = param0;
30331 variable1 = NIT_NULL /*null*/;
30332 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30333 variable2 = variable3;
30334 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30335 variable3 = variable4;
30336 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30337 variable4 = variable5;
30338 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30339 variable5 = variable6;
30340 variable6 = variable5 /*nodearraylist1*/;
30341 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30342 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction467___action, LOCATE_parser, 15257); nit_exit(1);}
30343 variable7 = variable2 /*nodearraylist4*/;
30344 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30345 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction467___action, LOCATE_parser, 15259); nit_exit(1);}
30346 variable9 = NEW_APlusExpr_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/
30347 variable8 = variable9;
30348 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30349 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(86)) /*Parser::go_to*/;
30350 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30351 tracehead = trace.prev;
30352 return;
30353 }
30354 void parser___ReduceAction467___init(val_t self, int* init_table) {
30355 struct trace_t trace = {NULL, NULL, 15267, LOCATE_parser___ReduceAction467___init};
30356 trace.prev = tracehead; tracehead = &trace;
30357 trace.file = LOCATE_parser;
30358 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction467].i]) return;
30359 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction467].i] = 1;
30360 tracehead = trace.prev;
30361 return;
30362 }
30363 void parser___ReduceAction468___action(val_t self, val_t param0) {
30364 struct trace_t trace = {NULL, NULL, 15271, LOCATE_parser___ReduceAction468___action};
30365 val_t variable0;
30366 val_t variable1;
30367 val_t variable2;
30368 val_t variable3;
30369 val_t variable4;
30370 val_t variable5;
30371 val_t variable6;
30372 val_t variable7;
30373 val_t variable8;
30374 val_t variable9;
30375 trace.prev = tracehead; tracehead = &trace;
30376 trace.file = LOCATE_parser;
30377 variable0 = param0;
30378 variable1 = NIT_NULL /*null*/;
30379 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30380 variable2 = variable3;
30381 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30382 variable3 = variable4;
30383 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30384 variable4 = variable5;
30385 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30386 variable5 = variable6;
30387 variable6 = variable5 /*nodearraylist1*/;
30388 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30389 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction468___action, LOCATE_parser, 15279); nit_exit(1);}
30390 variable7 = variable2 /*nodearraylist4*/;
30391 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30392 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction468___action, LOCATE_parser, 15281); nit_exit(1);}
30393 variable9 = NEW_AMinusExpr_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/
30394 variable8 = variable9;
30395 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30396 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(86)) /*Parser::go_to*/;
30397 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30398 tracehead = trace.prev;
30399 return;
30400 }
30401 void parser___ReduceAction468___init(val_t self, int* init_table) {
30402 struct trace_t trace = {NULL, NULL, 15289, LOCATE_parser___ReduceAction468___init};
30403 trace.prev = tracehead; tracehead = &trace;
30404 trace.file = LOCATE_parser;
30405 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction468].i]) return;
30406 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction468].i] = 1;
30407 tracehead = trace.prev;
30408 return;
30409 }
30410 void parser___ReduceAction469___action(val_t self, val_t param0) {
30411 struct trace_t trace = {NULL, NULL, 15293, LOCATE_parser___ReduceAction469___action};
30412 val_t variable0;
30413 val_t variable1;
30414 val_t variable2;
30415 val_t variable3;
30416 val_t variable4;
30417 trace.prev = tracehead; tracehead = &trace;
30418 trace.file = LOCATE_parser;
30419 variable0 = param0;
30420 variable1 = NIT_NULL /*null*/;
30421 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30422 variable2 = variable3;
30423 variable3 = variable2 /*nodearraylist1*/;
30424 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30425 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction469___action, LOCATE_parser, 15298); nit_exit(1);}
30426 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
30427 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/;
30428 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
30429 tracehead = trace.prev;
30430 return;
30431 }
30432 void parser___ReduceAction469___init(val_t self, int* init_table) {
30433 struct trace_t trace = {NULL, NULL, 15302, LOCATE_parser___ReduceAction469___init};
30434 trace.prev = tracehead; tracehead = &trace;
30435 trace.file = LOCATE_parser;
30436 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction469].i]) return;
30437 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction469].i] = 1;
30438 tracehead = trace.prev;
30439 return;
30440 }
30441 void parser___ReduceAction470___action(val_t self, val_t param0) {
30442 struct trace_t trace = {NULL, NULL, 15306, LOCATE_parser___ReduceAction470___action};
30443 val_t variable0;
30444 val_t variable1;
30445 val_t variable2;
30446 val_t variable3;
30447 val_t variable4;
30448 val_t variable5;
30449 val_t variable6;
30450 val_t variable7;
30451 val_t variable8;
30452 val_t variable9;
30453 trace.prev = tracehead; tracehead = &trace;
30454 trace.file = LOCATE_parser;
30455 variable0 = param0;
30456 variable1 = NIT_NULL /*null*/;
30457 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30458 variable2 = variable3;
30459 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30460 variable3 = variable4;
30461 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30462 variable4 = variable5;
30463 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30464 variable5 = variable6;
30465 variable6 = variable5 /*nodearraylist1*/;
30466 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30467 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction470___action, LOCATE_parser, 15314); nit_exit(1);}
30468 variable7 = variable2 /*nodearraylist4*/;
30469 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30470 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction470___action, LOCATE_parser, 15316); nit_exit(1);}
30471 variable9 = NEW_AStarExpr_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/
30472 variable8 = variable9;
30473 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30474 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/;
30475 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30476 tracehead = trace.prev;
30477 return;
30478 }
30479 void parser___ReduceAction470___init(val_t self, int* init_table) {
30480 struct trace_t trace = {NULL, NULL, 15324, LOCATE_parser___ReduceAction470___init};
30481 trace.prev = tracehead; tracehead = &trace;
30482 trace.file = LOCATE_parser;
30483 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction470].i]) return;
30484 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction470].i] = 1;
30485 tracehead = trace.prev;
30486 return;
30487 }
30488 void parser___ReduceAction471___action(val_t self, val_t param0) {
30489 struct trace_t trace = {NULL, NULL, 15328, LOCATE_parser___ReduceAction471___action};
30490 val_t variable0;
30491 val_t variable1;
30492 val_t variable2;
30493 val_t variable3;
30494 val_t variable4;
30495 val_t variable5;
30496 val_t variable6;
30497 val_t variable7;
30498 val_t variable8;
30499 val_t variable9;
30500 trace.prev = tracehead; tracehead = &trace;
30501 trace.file = LOCATE_parser;
30502 variable0 = param0;
30503 variable1 = NIT_NULL /*null*/;
30504 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30505 variable2 = variable3;
30506 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30507 variable3 = variable4;
30508 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30509 variable4 = variable5;
30510 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30511 variable5 = variable6;
30512 variable6 = variable5 /*nodearraylist1*/;
30513 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30514 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction471___action, LOCATE_parser, 15336); nit_exit(1);}
30515 variable7 = variable2 /*nodearraylist4*/;
30516 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30517 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction471___action, LOCATE_parser, 15338); nit_exit(1);}
30518 variable9 = NEW_ASlashExpr_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/
30519 variable8 = variable9;
30520 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30521 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/;
30522 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30523 tracehead = trace.prev;
30524 return;
30525 }
30526 void parser___ReduceAction471___init(val_t self, int* init_table) {
30527 struct trace_t trace = {NULL, NULL, 15346, LOCATE_parser___ReduceAction471___init};
30528 trace.prev = tracehead; tracehead = &trace;
30529 trace.file = LOCATE_parser;
30530 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction471].i]) return;
30531 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction471].i] = 1;
30532 tracehead = trace.prev;
30533 return;
30534 }
30535 void parser___ReduceAction472___action(val_t self, val_t param0) {
30536 struct trace_t trace = {NULL, NULL, 15350, LOCATE_parser___ReduceAction472___action};
30537 val_t variable0;
30538 val_t variable1;
30539 val_t variable2;
30540 val_t variable3;
30541 val_t variable4;
30542 val_t variable5;
30543 val_t variable6;
30544 val_t variable7;
30545 val_t variable8;
30546 val_t variable9;
30547 trace.prev = tracehead; tracehead = &trace;
30548 trace.file = LOCATE_parser;
30549 variable0 = param0;
30550 variable1 = NIT_NULL /*null*/;
30551 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30552 variable2 = variable3;
30553 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30554 variable3 = variable4;
30555 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30556 variable4 = variable5;
30557 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30558 variable5 = variable6;
30559 variable6 = variable5 /*nodearraylist1*/;
30560 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30561 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction472___action, LOCATE_parser, 15358); nit_exit(1);}
30562 variable7 = variable2 /*nodearraylist4*/;
30563 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30564 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction472___action, LOCATE_parser, 15360); nit_exit(1);}
30565 variable9 = NEW_APercentExpr_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/
30566 variable8 = variable9;
30567 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30568 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(87)) /*Parser::go_to*/;
30569 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30570 tracehead = trace.prev;
30571 return;
30572 }
30573 void parser___ReduceAction472___init(val_t self, int* init_table) {
30574 struct trace_t trace = {NULL, NULL, 15368, LOCATE_parser___ReduceAction472___init};
30575 trace.prev = tracehead; tracehead = &trace;
30576 trace.file = LOCATE_parser;
30577 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction472].i]) return;
30578 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction472].i] = 1;
30579 tracehead = trace.prev;
30580 return;
30581 }
30582 void parser___ReduceAction473___action(val_t self, val_t param0) {
30583 struct trace_t trace = {NULL, NULL, 15372, LOCATE_parser___ReduceAction473___action};
30584 val_t variable0;
30585 val_t variable1;
30586 val_t variable2;
30587 val_t variable3;
30588 val_t variable4;
30589 trace.prev = tracehead; tracehead = &trace;
30590 trace.file = LOCATE_parser;
30591 variable0 = param0;
30592 variable1 = NIT_NULL /*null*/;
30593 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30594 variable2 = variable3;
30595 variable3 = variable2 /*nodearraylist1*/;
30596 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30597 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction473___action, LOCATE_parser, 15377); nit_exit(1);}
30598 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
30599 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(88)) /*Parser::go_to*/;
30600 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
30601 tracehead = trace.prev;
30602 return;
30603 }
30604 void parser___ReduceAction473___init(val_t self, int* init_table) {
30605 struct trace_t trace = {NULL, NULL, 15381, LOCATE_parser___ReduceAction473___init};
30606 trace.prev = tracehead; tracehead = &trace;
30607 trace.file = LOCATE_parser;
30608 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction473].i]) return;
30609 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction473].i] = 1;
30610 tracehead = trace.prev;
30611 return;
30612 }
30613 void parser___ReduceAction474___action(val_t self, val_t param0) {
30614 struct trace_t trace = {NULL, NULL, 15385, LOCATE_parser___ReduceAction474___action};
30615 val_t variable0;
30616 val_t variable1;
30617 val_t variable2;
30618 val_t variable3;
30619 val_t variable4;
30620 val_t variable5;
30621 val_t variable6;
30622 val_t variable7;
30623 val_t variable8;
30624 trace.prev = tracehead; tracehead = &trace;
30625 trace.file = LOCATE_parser;
30626 variable0 = param0;
30627 variable1 = NIT_NULL /*null*/;
30628 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30629 variable2 = variable3;
30630 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30631 variable3 = variable4;
30632 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30633 variable4 = variable5;
30634 variable5 = variable4 /*nodearraylist1*/;
30635 variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/;
30636 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction474___action, LOCATE_parser, 15392); nit_exit(1);}
30637 variable6 = variable2 /*nodearraylist3*/;
30638 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30639 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction474___action, LOCATE_parser, 15394); nit_exit(1);}
30640 variable8 = NEW_AUminusExpr_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/
30641 variable7 = variable8;
30642 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
30643 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(88)) /*Parser::go_to*/;
30644 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
30645 tracehead = trace.prev;
30646 return;
30647 }
30648 void parser___ReduceAction474___init(val_t self, int* init_table) {
30649 struct trace_t trace = {NULL, NULL, 15402, LOCATE_parser___ReduceAction474___init};
30650 trace.prev = tracehead; tracehead = &trace;
30651 trace.file = LOCATE_parser;
30652 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction474].i]) return;
30653 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction474].i] = 1;
30654 tracehead = trace.prev;
30655 return;
30656 }
30657 void parser___ReduceAction475___action(val_t self, val_t param0) {
30658 struct trace_t trace = {NULL, NULL, 15406, LOCATE_parser___ReduceAction475___action};
30659 val_t variable0;
30660 val_t variable1;
30661 val_t variable2;
30662 val_t variable3;
30663 val_t variable4;
30664 val_t variable5;
30665 val_t variable6;
30666 val_t variable7;
30667 val_t variable8;
30668 trace.prev = tracehead; tracehead = &trace;
30669 trace.file = LOCATE_parser;
30670 variable0 = param0;
30671 variable1 = NIT_NULL /*null*/;
30672 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30673 variable2 = variable3;
30674 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30675 variable3 = variable4;
30676 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30677 variable4 = variable5;
30678 variable5 = variable4 /*nodearraylist1*/;
30679 variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/;
30680 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction475___action, LOCATE_parser, 15413); nit_exit(1);}
30681 variable6 = variable2 /*nodearraylist3*/;
30682 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30683 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction475___action, LOCATE_parser, 15415); nit_exit(1);}
30684 variable8 = NEW_AOnceExpr_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/
30685 variable7 = variable8;
30686 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
30687 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(88)) /*Parser::go_to*/;
30688 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
30689 tracehead = trace.prev;
30690 return;
30691 }
30692 void parser___ReduceAction475___init(val_t self, int* init_table) {
30693 struct trace_t trace = {NULL, NULL, 15423, LOCATE_parser___ReduceAction475___init};
30694 trace.prev = tracehead; tracehead = &trace;
30695 trace.file = LOCATE_parser;
30696 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction475].i]) return;
30697 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction475].i] = 1;
30698 tracehead = trace.prev;
30699 return;
30700 }
30701 void parser___ReduceAction476___action(val_t self, val_t param0) {
30702 struct trace_t trace = {NULL, NULL, 15427, LOCATE_parser___ReduceAction476___action};
30703 val_t variable0;
30704 val_t variable1;
30705 val_t variable2;
30706 val_t variable3;
30707 val_t variable4;
30708 trace.prev = tracehead; tracehead = &trace;
30709 trace.file = LOCATE_parser;
30710 variable0 = param0;
30711 variable1 = NIT_NULL /*null*/;
30712 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30713 variable2 = variable3;
30714 variable3 = variable2 /*nodearraylist1*/;
30715 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30716 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction476___action, LOCATE_parser, 15432); nit_exit(1);}
30717 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
30718 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(89)) /*Parser::go_to*/;
30719 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
30720 tracehead = trace.prev;
30721 return;
30722 }
30723 void parser___ReduceAction476___init(val_t self, int* init_table) {
30724 struct trace_t trace = {NULL, NULL, 15436, LOCATE_parser___ReduceAction476___init};
30725 trace.prev = tracehead; tracehead = &trace;
30726 trace.file = LOCATE_parser;
30727 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction476].i]) return;
30728 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction476].i] = 1;
30729 tracehead = trace.prev;
30730 return;
30731 }
30732 void parser___ReduceAction477___action(val_t self, val_t param0) {
30733 struct trace_t trace = {NULL, NULL, 15440, LOCATE_parser___ReduceAction477___action};
30734 val_t variable0;
30735 val_t variable1;
30736 val_t variable2;
30737 val_t variable3;
30738 val_t variable4;
30739 val_t variable5;
30740 val_t variable6;
30741 val_t variable7;
30742 val_t variable8;
30743 val_t variable9;
30744 val_t variable10;
30745 val_t variable11;
30746 trace.prev = tracehead; tracehead = &trace;
30747 trace.file = LOCATE_parser;
30748 variable0 = param0;
30749 variable1 = NIT_NULL /*null*/;
30750 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30751 variable2 = variable3;
30752 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30753 variable3 = variable4;
30754 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30755 variable4 = variable5;
30756 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30757 variable5 = variable6;
30758 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
30759 variable6 = variable7;
30760 variable7 = variable5 /*nodearraylist1*/;
30761 variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
30762 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction477___action, LOCATE_parser, 15449); nit_exit(1);}
30763 variable8 = variable3 /*nodearraylist3*/;
30764 variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
30765 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction477___action, LOCATE_parser, 15451); nit_exit(1);}
30766 variable9 = variable2 /*nodearraylist4*/;
30767 variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
30768 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction477___action, LOCATE_parser, 15453); nit_exit(1);}
30769 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
30770 if (UNTAG_Bool(variable10)) { /*if*/
30771 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*AbstractArray::is_empty*/;
30772 if (UNTAG_Bool(variable10)) { /*if*/
30773 variable6 = variable9 /*listnode5*/ /*listnode6=*/;
30774 } else { /*if*/
30775 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*IndexedCollection::append*/;
30776 }
30777 }
30778 variable11 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/
30779 variable10 = variable11;
30780 variable1 = variable10 /*pexprnode1*/ /*node_list=*/;
30781 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(89)) /*Parser::go_to*/;
30782 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
30783 tracehead = trace.prev;
30784 return;
30785 }
30786 void parser___ReduceAction477___init(val_t self, int* init_table) {
30787 struct trace_t trace = {NULL, NULL, 15470, LOCATE_parser___ReduceAction477___init};
30788 trace.prev = tracehead; tracehead = &trace;
30789 trace.file = LOCATE_parser;
30790 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction477].i]) return;
30791 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction477].i] = 1;
30792 tracehead = trace.prev;
30793 return;
30794 }
30795 void parser___ReduceAction478___action(val_t self, val_t param0) {
30796 struct trace_t trace = {NULL, NULL, 15474, LOCATE_parser___ReduceAction478___action};
30797 val_t variable0;
30798 val_t variable1;
30799 val_t variable2;
30800 val_t variable3;
30801 val_t variable4;
30802 val_t variable5;
30803 val_t variable6;
30804 val_t variable7;
30805 val_t variable8;
30806 val_t variable9;
30807 trace.prev = tracehead; tracehead = &trace;
30808 trace.file = LOCATE_parser;
30809 variable0 = param0;
30810 variable1 = NIT_NULL /*null*/;
30811 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30812 variable2 = variable3;
30813 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30814 variable3 = variable4;
30815 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30816 variable4 = variable5;
30817 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30818 variable5 = variable6;
30819 variable6 = variable5 /*nodearraylist1*/;
30820 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30821 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction478___action, LOCATE_parser, 15482); nit_exit(1);}
30822 variable7 = variable2 /*nodearraylist4*/;
30823 variable8 = TAG_Bool(( variable7 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
30824 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction478___action, LOCATE_parser, 15484); nit_exit(1);}
30825 variable9 = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr( variable6 /*pexprnode2*/, variable7 /*tattridnode3*/); /*new AAttrExpr*/
30826 variable8 = variable9;
30827 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30828 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
30829 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30830 tracehead = trace.prev;
30831 return;
30832 }
30833 void parser___ReduceAction478___init(val_t self, int* init_table) {
30834 struct trace_t trace = {NULL, NULL, 15492, LOCATE_parser___ReduceAction478___init};
30835 trace.prev = tracehead; tracehead = &trace;
30836 trace.file = LOCATE_parser;
30837 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction478].i]) return;
30838 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction478].i] = 1;
30839 tracehead = trace.prev;
30840 return;
30841 }
30842 void parser___ReduceAction479___action(val_t self, val_t param0) {
30843 struct trace_t trace = {NULL, NULL, 15496, LOCATE_parser___ReduceAction479___action};
30844 val_t variable0;
30845 val_t variable1;
30846 val_t variable2;
30847 val_t variable3;
30848 val_t variable4;
30849 val_t variable5;
30850 val_t variable6;
30851 trace.prev = tracehead; tracehead = &trace;
30852 trace.file = LOCATE_parser;
30853 variable0 = param0;
30854 variable1 = NIT_NULL /*null*/;
30855 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30856 variable2 = variable3;
30857 variable4 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
30858 variable3 = variable4;
30859 variable4 = variable2 /*nodearraylist1*/;
30860 variable5 = TAG_Bool(( variable4 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable4 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
30861 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction479___action, LOCATE_parser, 15503); nit_exit(1);}
30862 variable6 = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr( variable3 /*pexprnode2*/, variable4 /*tattridnode3*/); /*new AAttrExpr*/
30863 variable5 = variable6;
30864 variable1 = variable5 /*pexprnode1*/ /*node_list=*/;
30865 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
30866 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
30867 tracehead = trace.prev;
30868 return;
30869 }
30870 void parser___ReduceAction479___init(val_t self, int* init_table) {
30871 struct trace_t trace = {NULL, NULL, 15511, LOCATE_parser___ReduceAction479___init};
30872 trace.prev = tracehead; tracehead = &trace;
30873 trace.file = LOCATE_parser;
30874 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction479].i]) return;
30875 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction479].i] = 1;
30876 tracehead = trace.prev;
30877 return;
30878 }
30879 void parser___ReduceAction480___action(val_t self, val_t param0) {
30880 struct trace_t trace = {NULL, NULL, 15515, LOCATE_parser___ReduceAction480___action};
30881 val_t variable0;
30882 val_t variable1;
30883 val_t variable2;
30884 val_t variable3;
30885 val_t variable4;
30886 val_t variable5;
30887 val_t variable6;
30888 val_t variable7;
30889 val_t variable8;
30890 val_t variable9;
30891 val_t variable10;
30892 val_t variable11;
30893 val_t variable12;
30894 trace.prev = tracehead; tracehead = &trace;
30895 trace.file = LOCATE_parser;
30896 variable0 = param0;
30897 variable1 = NIT_NULL /*null*/;
30898 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30899 variable2 = variable3;
30900 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30901 variable3 = variable4;
30902 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30903 variable4 = variable5;
30904 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30905 variable5 = variable6;
30906 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30907 variable6 = variable7;
30908 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
30909 variable7 = variable8;
30910 variable8 = variable6 /*nodearraylist1*/;
30911 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
30912 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction480___action, LOCATE_parser, 15525); nit_exit(1);}
30913 variable9 = variable3 /*nodearraylist4*/;
30914 variable10 = TAG_Bool(( variable9 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
30915 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction480___action, LOCATE_parser, 15527); nit_exit(1);}
30916 variable10 = variable2 /*nodearraylist5*/;
30917 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
30918 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction480___action, LOCATE_parser, 15529); nit_exit(1);}
30919 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
30920 if (UNTAG_Bool(variable11)) { /*if*/
30921 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
30922 if (UNTAG_Bool(variable11)) { /*if*/
30923 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
30924 } else { /*if*/
30925 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
30926 }
30927 }
30928 variable12 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable8 /*pexprnode2*/, variable9 /*tidnode3*/, variable7 /*listnode5*/); /*new ACallExpr*/
30929 variable11 = variable12;
30930 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
30931 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
30932 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
30933 tracehead = trace.prev;
30934 return;
30935 }
30936 void parser___ReduceAction480___init(val_t self, int* init_table) {
30937 struct trace_t trace = {NULL, NULL, 15545, LOCATE_parser___ReduceAction480___init};
30938 trace.prev = tracehead; tracehead = &trace;
30939 trace.file = LOCATE_parser;
30940 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction480].i]) return;
30941 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction480].i] = 1;
30942 tracehead = trace.prev;
30943 return;
30944 }
30945 void parser___ReduceAction481___action(val_t self, val_t param0) {
30946 struct trace_t trace = {NULL, NULL, 15549, LOCATE_parser___ReduceAction481___action};
30947 val_t variable0;
30948 val_t variable1;
30949 val_t variable2;
30950 val_t variable3;
30951 val_t variable4;
30952 val_t variable5;
30953 val_t variable6;
30954 val_t variable7;
30955 val_t variable8;
30956 val_t variable9;
30957 trace.prev = tracehead; tracehead = &trace;
30958 trace.file = LOCATE_parser;
30959 variable0 = param0;
30960 variable1 = NIT_NULL /*null*/;
30961 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30962 variable2 = variable3;
30963 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
30964 variable3 = variable4;
30965 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
30966 variable4 = variable5;
30967 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
30968 variable5 = variable6;
30969 variable6 = variable3 /*nodearraylist1*/;
30970 variable7 = TAG_Bool(( variable6 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
30971 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction481___action, LOCATE_parser, 15558); nit_exit(1);}
30972 variable7 = variable2 /*nodearraylist2*/;
30973 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
30974 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction481___action, LOCATE_parser, 15560); nit_exit(1);}
30975 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
30976 if (UNTAG_Bool(variable8)) { /*if*/
30977 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
30978 if (UNTAG_Bool(variable8)) { /*if*/
30979 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
30980 } else { /*if*/
30981 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
30982 }
30983 }
30984 variable9 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable5 /*pexprnode2*/, variable6 /*tidnode3*/, variable4 /*listnode5*/); /*new ACallExpr*/
30985 variable8 = variable9;
30986 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
30987 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
30988 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
30989 tracehead = trace.prev;
30990 return;
30991 }
30992 void parser___ReduceAction481___init(val_t self, int* init_table) {
30993 struct trace_t trace = {NULL, NULL, 15576, LOCATE_parser___ReduceAction481___init};
30994 trace.prev = tracehead; tracehead = &trace;
30995 trace.file = LOCATE_parser;
30996 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction481].i]) return;
30997 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction481].i] = 1;
30998 tracehead = trace.prev;
30999 return;
31000 }
31001 void parser___ReduceAction482___action(val_t self, val_t param0) {
31002 struct trace_t trace = {NULL, NULL, 15580, LOCATE_parser___ReduceAction482___action};
31003 val_t variable0;
31004 val_t variable1;
31005 val_t variable2;
31006 val_t variable3;
31007 val_t variable4;
31008 val_t variable5;
31009 val_t variable6;
31010 val_t variable7;
31011 val_t variable8;
31012 trace.prev = tracehead; tracehead = &trace;
31013 trace.file = LOCATE_parser;
31014 variable0 = param0;
31015 variable1 = NIT_NULL /*null*/;
31016 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31017 variable2 = variable3;
31018 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31019 variable3 = variable4;
31020 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
31021 variable4 = variable5;
31022 variable5 = variable3 /*nodearraylist1*/;
31023 variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
31024 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction482___action, LOCATE_parser, 15587); nit_exit(1);}
31025 variable6 = variable2 /*nodearraylist2*/;
31026 variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
31027 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction482___action, LOCATE_parser, 15589); nit_exit(1);}
31028 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
31029 if (UNTAG_Bool(variable7)) { /*if*/
31030 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
31031 if (UNTAG_Bool(variable7)) { /*if*/
31032 variable4 = variable6 /*listnode4*/ /*listnode5=*/;
31033 } else { /*if*/
31034 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*IndexedCollection::append*/;
31035 }
31036 }
31037 variable8 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/
31038 variable7 = variable8;
31039 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
31040 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31041 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
31042 tracehead = trace.prev;
31043 return;
31044 }
31045 void parser___ReduceAction482___init(val_t self, int* init_table) {
31046 struct trace_t trace = {NULL, NULL, 15605, LOCATE_parser___ReduceAction482___init};
31047 trace.prev = tracehead; tracehead = &trace;
31048 trace.file = LOCATE_parser;
31049 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction482].i]) return;
31050 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction482].i] = 1;
31051 tracehead = trace.prev;
31052 return;
31053 }
31054 void parser___ReduceAction483___action(val_t self, val_t param0) {
31055 struct trace_t trace = {NULL, NULL, 15609, LOCATE_parser___ReduceAction483___action};
31056 val_t variable0;
31057 val_t variable1;
31058 val_t variable2;
31059 val_t variable3;
31060 val_t variable4;
31061 val_t variable5;
31062 val_t variable6;
31063 val_t variable7;
31064 val_t variable8;
31065 val_t variable9;
31066 val_t variable10;
31067 trace.prev = tracehead; tracehead = &trace;
31068 trace.file = LOCATE_parser;
31069 variable0 = param0;
31070 variable1 = NIT_NULL /*null*/;
31071 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31072 variable2 = variable3;
31073 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31074 variable3 = variable4;
31075 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31076 variable4 = variable5;
31077 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
31078 variable5 = variable6;
31079 variable6 = variable4 /*nodearraylist1*/;
31080 variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/;
31081 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction483___action, LOCATE_parser, 15617); nit_exit(1);}
31082 variable7 = variable3 /*nodearraylist2*/;
31083 variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
31084 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction483___action, LOCATE_parser, 15619); nit_exit(1);}
31085 variable8 = variable2 /*nodearraylist3*/;
31086 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
31087 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction483___action, LOCATE_parser, 15621); nit_exit(1);}
31088 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
31089 if (UNTAG_Bool(variable9)) { /*if*/
31090 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
31091 if (UNTAG_Bool(variable9)) { /*if*/
31092 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
31093 } else { /*if*/
31094 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
31095 }
31096 }
31097 variable10 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/
31098 variable9 = variable10;
31099 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
31100 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31101 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
31102 tracehead = trace.prev;
31103 return;
31104 }
31105 void parser___ReduceAction483___init(val_t self, int* init_table) {
31106 struct trace_t trace = {NULL, NULL, 15637, LOCATE_parser___ReduceAction483___init};
31107 trace.prev = tracehead; tracehead = &trace;
31108 trace.file = LOCATE_parser;
31109 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction483].i]) return;
31110 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction483].i] = 1;
31111 tracehead = trace.prev;
31112 return;
31113 }
31114 void parser___ReduceAction484___action(val_t self, val_t param0) {
31115 struct trace_t trace = {NULL, NULL, 15641, LOCATE_parser___ReduceAction484___action};
31116 val_t variable0;
31117 val_t variable1;
31118 val_t variable2;
31119 val_t variable3;
31120 val_t variable4;
31121 val_t variable5;
31122 val_t variable6;
31123 val_t variable7;
31124 val_t variable8;
31125 val_t variable9;
31126 val_t variable10;
31127 val_t variable11;
31128 val_t variable12;
31129 trace.prev = tracehead; tracehead = &trace;
31130 trace.file = LOCATE_parser;
31131 variable0 = param0;
31132 variable1 = NIT_NULL /*null*/;
31133 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31134 variable2 = variable3;
31135 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31136 variable3 = variable4;
31137 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31138 variable4 = variable5;
31139 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31140 variable5 = variable6;
31141 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31142 variable6 = variable7;
31143 variable8 = NEW_Array_array___Array___init(); /*new Array[Object]*/
31144 variable7 = variable8;
31145 variable8 = variable6 /*nodearraylist1*/;
31146 variable9 = TAG_Bool(( variable8 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable8 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31147 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction484___action, LOCATE_parser, 15651); nit_exit(1);}
31148 variable9 = variable3 /*nodearraylist4*/;
31149 variable10 = TAG_Bool(( variable9 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable9 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
31150 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction484___action, LOCATE_parser, 15653); nit_exit(1);}
31151 variable10 = variable2 /*nodearraylist5*/;
31152 variable11 = TAG_Bool(( variable10 /*listnode4*/==NIT_NULL) || VAL_ISA( variable10 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
31153 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction484___action, LOCATE_parser, 15655); nit_exit(1);}
31154 variable11 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable10 /*listnode4*/ == NIT_NULL /*null*/) || (( variable10 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable10 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable10 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable10 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
31155 if (UNTAG_Bool(variable11)) { /*if*/
31156 variable11 = ((array___AbstractArray___is_empty_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable7 /*listnode5*/) /*AbstractArray::is_empty*/;
31157 if (UNTAG_Bool(variable11)) { /*if*/
31158 variable7 = variable10 /*listnode4*/ /*listnode5=*/;
31159 } else { /*if*/
31160 ((abstract_collection___IndexedCollection___append_t)CALL( variable7 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable7 /*listnode5*/, variable10 /*listnode4*/) /*IndexedCollection::append*/;
31161 }
31162 }
31163 variable12 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable8 /*pexprnode2*/, variable9 /*tkwinitnode3*/, variable7 /*listnode5*/); /*new AInitExpr*/
31164 variable11 = variable12;
31165 variable1 = variable11 /*pexprnode1*/ /*node_list=*/;
31166 variable12 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31167 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable12, variable1 /*node_list*/) /*Parser::push*/;
31168 tracehead = trace.prev;
31169 return;
31170 }
31171 void parser___ReduceAction484___init(val_t self, int* init_table) {
31172 struct trace_t trace = {NULL, NULL, 15671, LOCATE_parser___ReduceAction484___init};
31173 trace.prev = tracehead; tracehead = &trace;
31174 trace.file = LOCATE_parser;
31175 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction484].i]) return;
31176 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction484].i] = 1;
31177 tracehead = trace.prev;
31178 return;
31179 }
31180 void parser___ReduceAction485___action(val_t self, val_t param0) {
31181 struct trace_t trace = {NULL, NULL, 15675, LOCATE_parser___ReduceAction485___action};
31182 val_t variable0;
31183 val_t variable1;
31184 val_t variable2;
31185 val_t variable3;
31186 val_t variable4;
31187 val_t variable5;
31188 val_t variable6;
31189 val_t variable7;
31190 val_t variable8;
31191 val_t variable9;
31192 trace.prev = tracehead; tracehead = &trace;
31193 trace.file = LOCATE_parser;
31194 variable0 = param0;
31195 variable1 = NIT_NULL /*null*/;
31196 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31197 variable2 = variable3;
31198 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31199 variable3 = variable4;
31200 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
31201 variable4 = variable5;
31202 variable6 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
31203 variable5 = variable6;
31204 variable6 = variable3 /*nodearraylist1*/;
31205 variable7 = TAG_Bool(( variable6 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable6 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
31206 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction485___action, LOCATE_parser, 15684); nit_exit(1);}
31207 variable7 = variable2 /*nodearraylist2*/;
31208 variable8 = TAG_Bool(( variable7 /*listnode4*/==NIT_NULL) || VAL_ISA( variable7 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
31209 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction485___action, LOCATE_parser, 15686); nit_exit(1);}
31210 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7 /*listnode4*/ == NIT_NULL /*null*/) || (( variable7 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable7 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
31211 if (UNTAG_Bool(variable8)) { /*if*/
31212 variable8 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
31213 if (UNTAG_Bool(variable8)) { /*if*/
31214 variable4 = variable7 /*listnode4*/ /*listnode5=*/;
31215 } else { /*if*/
31216 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable7 /*listnode4*/) /*IndexedCollection::append*/;
31217 }
31218 }
31219 variable9 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable5 /*pexprnode2*/, variable6 /*tkwinitnode3*/, variable4 /*listnode5*/); /*new AInitExpr*/
31220 variable8 = variable9;
31221 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
31222 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31223 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
31224 tracehead = trace.prev;
31225 return;
31226 }
31227 void parser___ReduceAction485___init(val_t self, int* init_table) {
31228 struct trace_t trace = {NULL, NULL, 15702, LOCATE_parser___ReduceAction485___init};
31229 trace.prev = tracehead; tracehead = &trace;
31230 trace.file = LOCATE_parser;
31231 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction485].i]) return;
31232 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction485].i] = 1;
31233 tracehead = trace.prev;
31234 return;
31235 }
31236 void parser___ReduceAction486___action(val_t self, val_t param0) {
31237 struct trace_t trace = {NULL, NULL, 15706, LOCATE_parser___ReduceAction486___action};
31238 val_t variable0;
31239 val_t variable1;
31240 val_t variable2;
31241 val_t variable3;
31242 val_t variable4;
31243 val_t variable5;
31244 val_t variable6;
31245 val_t variable7;
31246 val_t variable8;
31247 val_t variable9;
31248 val_t variable10;
31249 val_t variable11;
31250 val_t variable12;
31251 val_t variable13;
31252 val_t variable14;
31253 val_t variable15;
31254 trace.prev = tracehead; tracehead = &trace;
31255 trace.file = LOCATE_parser;
31256 variable0 = param0;
31257 variable1 = NIT_NULL /*null*/;
31258 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31259 variable2 = variable3;
31260 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31261 variable3 = variable4;
31262 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31263 variable4 = variable5;
31264 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31265 variable5 = variable6;
31266 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31267 variable6 = variable7;
31268 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31269 variable7 = variable8;
31270 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31271 variable8 = variable9;
31272 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
31273 variable9 = variable10;
31274 variable10 = variable8 /*nodearraylist1*/;
31275 variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
31276 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction486___action, LOCATE_parser, 15718); nit_exit(1);}
31277 variable11 = variable6 /*nodearraylist3*/;
31278 variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
31279 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction486___action, LOCATE_parser, 15720); nit_exit(1);}
31280 variable12 = variable3 /*nodearraylist6*/;
31281 variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/;
31282 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction486___action, LOCATE_parser, 15722); nit_exit(1);}
31283 variable13 = variable2 /*nodearraylist7*/;
31284 variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
31285 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction486___action, LOCATE_parser, 15724); nit_exit(1);}
31286 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
31287 if (UNTAG_Bool(variable14)) { /*if*/
31288 variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*AbstractArray::is_empty*/;
31289 if (UNTAG_Bool(variable14)) { /*if*/
31290 variable9 = variable13 /*listnode5*/ /*listnode6=*/;
31291 } else { /*if*/
31292 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*IndexedCollection::append*/;
31293 }
31294 }
31295 variable15 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/
31296 variable14 = variable15;
31297 variable1 = variable14 /*pexprnode1*/ /*node_list=*/;
31298 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31299 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
31300 tracehead = trace.prev;
31301 return;
31302 }
31303 void parser___ReduceAction486___init(val_t self, int* init_table) {
31304 struct trace_t trace = {NULL, NULL, 15741, LOCATE_parser___ReduceAction486___init};
31305 trace.prev = tracehead; tracehead = &trace;
31306 trace.file = LOCATE_parser;
31307 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction486].i]) return;
31308 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction486].i] = 1;
31309 tracehead = trace.prev;
31310 return;
31311 }
31312 void parser___ReduceAction487___action(val_t self, val_t param0) {
31313 struct trace_t trace = {NULL, NULL, 15745, LOCATE_parser___ReduceAction487___action};
31314 val_t variable0;
31315 val_t variable1;
31316 val_t variable2;
31317 val_t variable3;
31318 val_t variable4;
31319 val_t variable5;
31320 trace.prev = tracehead; tracehead = &trace;
31321 trace.file = LOCATE_parser;
31322 variable0 = param0;
31323 variable1 = NIT_NULL /*null*/;
31324 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31325 variable2 = variable3;
31326 variable3 = variable2 /*nodearraylist1*/;
31327 variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/;
31328 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction487___action, LOCATE_parser, 15750); nit_exit(1);}
31329 variable5 = NEW_ASelfExpr_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/
31330 variable4 = variable5;
31331 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31332 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31333 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31334 tracehead = trace.prev;
31335 return;
31336 }
31337 void parser___ReduceAction487___init(val_t self, int* init_table) {
31338 struct trace_t trace = {NULL, NULL, 15757, LOCATE_parser___ReduceAction487___init};
31339 trace.prev = tracehead; tracehead = &trace;
31340 trace.file = LOCATE_parser;
31341 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction487].i]) return;
31342 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction487].i] = 1;
31343 tracehead = trace.prev;
31344 return;
31345 }
31346 void parser___ReduceAction488___action(val_t self, val_t param0) {
31347 struct trace_t trace = {NULL, NULL, 15761, LOCATE_parser___ReduceAction488___action};
31348 val_t variable0;
31349 val_t variable1;
31350 val_t variable2;
31351 val_t variable3;
31352 val_t variable4;
31353 val_t variable5;
31354 trace.prev = tracehead; tracehead = &trace;
31355 trace.file = LOCATE_parser;
31356 variable0 = param0;
31357 variable1 = NIT_NULL /*null*/;
31358 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31359 variable2 = variable3;
31360 variable3 = variable2 /*nodearraylist1*/;
31361 variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/;
31362 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction488___action, LOCATE_parser, 15766); nit_exit(1);}
31363 variable5 = NEW_ATrueExpr_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/
31364 variable4 = variable5;
31365 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31366 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31367 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31368 tracehead = trace.prev;
31369 return;
31370 }
31371 void parser___ReduceAction488___init(val_t self, int* init_table) {
31372 struct trace_t trace = {NULL, NULL, 15773, LOCATE_parser___ReduceAction488___init};
31373 trace.prev = tracehead; tracehead = &trace;
31374 trace.file = LOCATE_parser;
31375 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction488].i]) return;
31376 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction488].i] = 1;
31377 tracehead = trace.prev;
31378 return;
31379 }
31380 void parser___ReduceAction489___action(val_t self, val_t param0) {
31381 struct trace_t trace = {NULL, NULL, 15777, LOCATE_parser___ReduceAction489___action};
31382 val_t variable0;
31383 val_t variable1;
31384 val_t variable2;
31385 val_t variable3;
31386 val_t variable4;
31387 val_t variable5;
31388 trace.prev = tracehead; tracehead = &trace;
31389 trace.file = LOCATE_parser;
31390 variable0 = param0;
31391 variable1 = NIT_NULL /*null*/;
31392 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31393 variable2 = variable3;
31394 variable3 = variable2 /*nodearraylist1*/;
31395 variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/;
31396 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction489___action, LOCATE_parser, 15782); nit_exit(1);}
31397 variable5 = NEW_AFalseExpr_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/
31398 variable4 = variable5;
31399 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31400 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31401 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31402 tracehead = trace.prev;
31403 return;
31404 }
31405 void parser___ReduceAction489___init(val_t self, int* init_table) {
31406 struct trace_t trace = {NULL, NULL, 15789, LOCATE_parser___ReduceAction489___init};
31407 trace.prev = tracehead; tracehead = &trace;
31408 trace.file = LOCATE_parser;
31409 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction489].i]) return;
31410 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction489].i] = 1;
31411 tracehead = trace.prev;
31412 return;
31413 }
31414 void parser___ReduceAction490___action(val_t self, val_t param0) {
31415 struct trace_t trace = {NULL, NULL, 15793, LOCATE_parser___ReduceAction490___action};
31416 val_t variable0;
31417 val_t variable1;
31418 val_t variable2;
31419 val_t variable3;
31420 val_t variable4;
31421 val_t variable5;
31422 trace.prev = tracehead; tracehead = &trace;
31423 trace.file = LOCATE_parser;
31424 variable0 = param0;
31425 variable1 = NIT_NULL /*null*/;
31426 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31427 variable2 = variable3;
31428 variable3 = variable2 /*nodearraylist1*/;
31429 variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/;
31430 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction490___action, LOCATE_parser, 15798); nit_exit(1);}
31431 variable5 = NEW_ANullExpr_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/
31432 variable4 = variable5;
31433 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31434 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31435 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31436 tracehead = trace.prev;
31437 return;
31438 }
31439 void parser___ReduceAction490___init(val_t self, int* init_table) {
31440 struct trace_t trace = {NULL, NULL, 15805, LOCATE_parser___ReduceAction490___init};
31441 trace.prev = tracehead; tracehead = &trace;
31442 trace.file = LOCATE_parser;
31443 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction490].i]) return;
31444 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction490].i] = 1;
31445 tracehead = trace.prev;
31446 return;
31447 }
31448 void parser___ReduceAction491___action(val_t self, val_t param0) {
31449 struct trace_t trace = {NULL, NULL, 15809, LOCATE_parser___ReduceAction491___action};
31450 val_t variable0;
31451 val_t variable1;
31452 val_t variable2;
31453 val_t variable3;
31454 val_t variable4;
31455 val_t variable5;
31456 trace.prev = tracehead; tracehead = &trace;
31457 trace.file = LOCATE_parser;
31458 variable0 = param0;
31459 variable1 = NIT_NULL /*null*/;
31460 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31461 variable2 = variable3;
31462 variable3 = variable2 /*nodearraylist1*/;
31463 variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/;
31464 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction491___action, LOCATE_parser, 15814); nit_exit(1);}
31465 variable5 = NEW_AIntExpr_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/
31466 variable4 = variable5;
31467 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31468 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31469 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31470 tracehead = trace.prev;
31471 return;
31472 }
31473 void parser___ReduceAction491___init(val_t self, int* init_table) {
31474 struct trace_t trace = {NULL, NULL, 15821, LOCATE_parser___ReduceAction491___init};
31475 trace.prev = tracehead; tracehead = &trace;
31476 trace.file = LOCATE_parser;
31477 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction491].i]) return;
31478 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction491].i] = 1;
31479 tracehead = trace.prev;
31480 return;
31481 }
31482 void parser___ReduceAction492___action(val_t self, val_t param0) {
31483 struct trace_t trace = {NULL, NULL, 15825, LOCATE_parser___ReduceAction492___action};
31484 val_t variable0;
31485 val_t variable1;
31486 val_t variable2;
31487 val_t variable3;
31488 val_t variable4;
31489 val_t variable5;
31490 trace.prev = tracehead; tracehead = &trace;
31491 trace.file = LOCATE_parser;
31492 variable0 = param0;
31493 variable1 = NIT_NULL /*null*/;
31494 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31495 variable2 = variable3;
31496 variable3 = variable2 /*nodearraylist1*/;
31497 variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/;
31498 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction492___action, LOCATE_parser, 15830); nit_exit(1);}
31499 variable5 = NEW_AFloatExpr_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/
31500 variable4 = variable5;
31501 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31502 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31503 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31504 tracehead = trace.prev;
31505 return;
31506 }
31507 void parser___ReduceAction492___init(val_t self, int* init_table) {
31508 struct trace_t trace = {NULL, NULL, 15837, LOCATE_parser___ReduceAction492___init};
31509 trace.prev = tracehead; tracehead = &trace;
31510 trace.file = LOCATE_parser;
31511 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction492].i]) return;
31512 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction492].i] = 1;
31513 tracehead = trace.prev;
31514 return;
31515 }
31516 void parser___ReduceAction493___action(val_t self, val_t param0) {
31517 struct trace_t trace = {NULL, NULL, 15841, LOCATE_parser___ReduceAction493___action};
31518 val_t variable0;
31519 val_t variable1;
31520 val_t variable2;
31521 val_t variable3;
31522 val_t variable4;
31523 val_t variable5;
31524 trace.prev = tracehead; tracehead = &trace;
31525 trace.file = LOCATE_parser;
31526 variable0 = param0;
31527 variable1 = NIT_NULL /*null*/;
31528 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31529 variable2 = variable3;
31530 variable3 = variable2 /*nodearraylist1*/;
31531 variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/;
31532 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction493___action, LOCATE_parser, 15846); nit_exit(1);}
31533 variable5 = NEW_ACharExpr_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/
31534 variable4 = variable5;
31535 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31536 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31537 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31538 tracehead = trace.prev;
31539 return;
31540 }
31541 void parser___ReduceAction493___init(val_t self, int* init_table) {
31542 struct trace_t trace = {NULL, NULL, 15853, LOCATE_parser___ReduceAction493___init};
31543 trace.prev = tracehead; tracehead = &trace;
31544 trace.file = LOCATE_parser;
31545 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction493].i]) return;
31546 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction493].i] = 1;
31547 tracehead = trace.prev;
31548 return;
31549 }
31550 void parser___ReduceAction494___action(val_t self, val_t param0) {
31551 struct trace_t trace = {NULL, NULL, 15857, LOCATE_parser___ReduceAction494___action};
31552 val_t variable0;
31553 val_t variable1;
31554 val_t variable2;
31555 val_t variable3;
31556 val_t variable4;
31557 val_t variable5;
31558 trace.prev = tracehead; tracehead = &trace;
31559 trace.file = LOCATE_parser;
31560 variable0 = param0;
31561 variable1 = NIT_NULL /*null*/;
31562 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31563 variable2 = variable3;
31564 variable3 = variable2 /*nodearraylist1*/;
31565 variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/;
31566 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction494___action, LOCATE_parser, 15862); nit_exit(1);}
31567 variable5 = NEW_AStringExpr_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/
31568 variable4 = variable5;
31569 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
31570 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31571 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
31572 tracehead = trace.prev;
31573 return;
31574 }
31575 void parser___ReduceAction494___init(val_t self, int* init_table) {
31576 struct trace_t trace = {NULL, NULL, 15869, LOCATE_parser___ReduceAction494___init};
31577 trace.prev = tracehead; tracehead = &trace;
31578 trace.file = LOCATE_parser;
31579 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction494].i]) return;
31580 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction494].i] = 1;
31581 tracehead = trace.prev;
31582 return;
31583 }
31584 void parser___ReduceAction495___action(val_t self, val_t param0) {
31585 struct trace_t trace = {NULL, NULL, 15873, LOCATE_parser___ReduceAction495___action};
31586 val_t variable0;
31587 val_t variable1;
31588 val_t variable2;
31589 val_t variable3;
31590 val_t variable4;
31591 trace.prev = tracehead; tracehead = &trace;
31592 trace.file = LOCATE_parser;
31593 variable0 = param0;
31594 variable1 = NIT_NULL /*null*/;
31595 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31596 variable2 = variable3;
31597 variable3 = variable2 /*nodearraylist1*/;
31598 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31599 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction495___action, LOCATE_parser, 15878); nit_exit(1);}
31600 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
31601 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31602 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
31603 tracehead = trace.prev;
31604 return;
31605 }
31606 void parser___ReduceAction495___init(val_t self, int* init_table) {
31607 struct trace_t trace = {NULL, NULL, 15882, LOCATE_parser___ReduceAction495___init};
31608 trace.prev = tracehead; tracehead = &trace;
31609 trace.file = LOCATE_parser;
31610 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction495].i]) return;
31611 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction495].i] = 1;
31612 tracehead = trace.prev;
31613 return;
31614 }
31615 void parser___ReduceAction496___action(val_t self, val_t param0) {
31616 struct trace_t trace = {NULL, NULL, 15886, LOCATE_parser___ReduceAction496___action};
31617 val_t variable0;
31618 val_t variable1;
31619 val_t variable2;
31620 val_t variable3;
31621 val_t variable4;
31622 val_t variable5;
31623 val_t variable6;
31624 val_t variable7;
31625 val_t variable8;
31626 val_t variable9;
31627 val_t variable10;
31628 val_t variable11;
31629 val_t variable12;
31630 val_t variable13;
31631 val_t variable14;
31632 val_t variable15;
31633 val_t variable16;
31634 trace.prev = tracehead; tracehead = &trace;
31635 trace.file = LOCATE_parser;
31636 variable0 = param0;
31637 variable1 = NIT_NULL /*null*/;
31638 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31639 variable2 = variable3;
31640 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31641 variable3 = variable4;
31642 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31643 variable4 = variable5;
31644 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31645 variable5 = variable6;
31646 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31647 variable6 = variable7;
31648 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31649 variable7 = variable8;
31650 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31651 variable8 = variable9;
31652 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31653 variable9 = variable10;
31654 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31655 variable10 = variable11;
31656 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31657 variable11 = variable12;
31658 variable12 = variable11 /*nodearraylist1*/;
31659 variable13 = TAG_Bool(( variable12 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31660 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction496___action, LOCATE_parser, 15900); nit_exit(1);}
31661 variable13 = variable8 /*nodearraylist4*/;
31662 variable14 = TAG_Bool(( variable13 /*tkwasnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwasnode3*/, COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
31663 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction496___action, LOCATE_parser, 15902); nit_exit(1);}
31664 variable14 = variable4 /*nodearraylist8*/;
31665 variable15 = TAG_Bool(( variable14 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/;
31666 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction496___action, LOCATE_parser, 15904); nit_exit(1);}
31667 variable16 = NEW_AAsCastExpr_parser_prod___AAsCastExpr___init_aascastexpr( variable12 /*pexprnode2*/, variable13 /*tkwasnode3*/, variable14 /*ptypenode4*/); /*new AAsCastExpr*/
31668 variable15 = variable16;
31669 variable1 = variable15 /*pexprnode1*/ /*node_list=*/;
31670 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(90)) /*Parser::go_to*/;
31671 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
31672 tracehead = trace.prev;
31673 return;
31674 }
31675 void parser___ReduceAction496___init(val_t self, int* init_table) {
31676 struct trace_t trace = {NULL, NULL, 15913, LOCATE_parser___ReduceAction496___init};
31677 trace.prev = tracehead; tracehead = &trace;
31678 trace.file = LOCATE_parser;
31679 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction496].i]) return;
31680 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction496].i] = 1;
31681 tracehead = trace.prev;
31682 return;
31683 }
31684 void parser___ReduceAction497___action(val_t self, val_t param0) {
31685 struct trace_t trace = {NULL, NULL, 15917, LOCATE_parser___ReduceAction497___action};
31686 val_t variable0;
31687 val_t variable1;
31688 val_t variable2;
31689 val_t variable3;
31690 val_t variable4;
31691 val_t variable5;
31692 val_t variable6;
31693 trace.prev = tracehead; tracehead = &trace;
31694 trace.file = LOCATE_parser;
31695 variable0 = param0;
31696 variable1 = NIT_NULL /*null*/;
31697 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31698 variable2 = variable3;
31699 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
31700 variable3 = variable4;
31701 variable4 = variable2 /*nodearraylist1*/;
31702 variable5 = TAG_Bool(( variable4 /*tclassidnode2*/==NIT_NULL) || VAL_ISA( variable4 /*tclassidnode2*/, COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
31703 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction497___action, LOCATE_parser, 15923); nit_exit(1);}
31704 variable6 = NEW_AType_parser_prod___AType___init_atype( variable4 /*tclassidnode2*/, variable3 /*listnode3*/); /*new AType*/
31705 variable5 = variable6;
31706 variable1 = variable5 /*ptypenode1*/ /*node_list=*/;
31707 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(91)) /*Parser::go_to*/;
31708 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
31709 tracehead = trace.prev;
31710 return;
31711 }
31712 void parser___ReduceAction497___init(val_t self, int* init_table) {
31713 struct trace_t trace = {NULL, NULL, 15931, LOCATE_parser___ReduceAction497___init};
31714 trace.prev = tracehead; tracehead = &trace;
31715 trace.file = LOCATE_parser;
31716 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction497].i]) return;
31717 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction497].i] = 1;
31718 tracehead = trace.prev;
31719 return;
31720 }
31721 void parser___ReduceAction498___action(val_t self, val_t param0) {
31722 struct trace_t trace = {NULL, NULL, 15935, LOCATE_parser___ReduceAction498___action};
31723 val_t variable0;
31724 val_t variable1;
31725 val_t variable2;
31726 val_t variable3;
31727 val_t variable4;
31728 trace.prev = tracehead; tracehead = &trace;
31729 trace.file = LOCATE_parser;
31730 variable0 = param0;
31731 variable1 = NIT_NULL /*null*/;
31732 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31733 variable2 = variable3;
31734 variable3 = variable2 /*nodearraylist1*/;
31735 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31736 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction498___action, LOCATE_parser, 15940); nit_exit(1);}
31737 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
31738 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(92)) /*Parser::go_to*/;
31739 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
31740 tracehead = trace.prev;
31741 return;
31742 }
31743 void parser___ReduceAction498___init(val_t self, int* init_table) {
31744 struct trace_t trace = {NULL, NULL, 15944, LOCATE_parser___ReduceAction498___init};
31745 trace.prev = tracehead; tracehead = &trace;
31746 trace.file = LOCATE_parser;
31747 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction498].i]) return;
31748 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction498].i] = 1;
31749 tracehead = trace.prev;
31750 return;
31751 }
31752 void parser___ReduceAction499___action(val_t self, val_t param0) {
31753 struct trace_t trace = {NULL, NULL, 15948, LOCATE_parser___ReduceAction499___action};
31754 val_t variable0;
31755 val_t variable1;
31756 val_t variable2;
31757 val_t variable3;
31758 val_t variable4;
31759 val_t variable5;
31760 val_t variable6;
31761 val_t variable7;
31762 val_t variable8;
31763 val_t variable9;
31764 val_t variable10;
31765 val_t variable11;
31766 val_t variable12;
31767 val_t variable13;
31768 val_t variable14;
31769 val_t variable15;
31770 val_t variable16;
31771 val_t variable17;
31772 val_t variable18;
31773 val_t variable19;
31774 val_t variable20;
31775 trace.prev = tracehead; tracehead = &trace;
31776 trace.file = LOCATE_parser;
31777 variable0 = param0;
31778 variable1 = NIT_NULL /*null*/;
31779 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31780 variable2 = variable3;
31781 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31782 variable3 = variable4;
31783 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31784 variable4 = variable5;
31785 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31786 variable5 = variable6;
31787 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31788 variable6 = variable7;
31789 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31790 variable7 = variable8;
31791 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31792 variable8 = variable9;
31793 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31794 variable9 = variable10;
31795 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31796 variable10 = variable11;
31797 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31798 variable11 = variable12;
31799 variable13 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31800 variable12 = variable13;
31801 variable13 = variable12 /*nodearraylist1*/;
31802 variable14 = TAG_Bool(( variable13 /*tkwifnode2*/==NIT_NULL) || VAL_ISA( variable13 /*tkwifnode2*/, COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
31803 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction499___action, LOCATE_parser, 15963); nit_exit(1);}
31804 variable14 = variable10 /*nodearraylist3*/;
31805 variable15 = TAG_Bool(( variable14 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable14 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31806 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction499___action, LOCATE_parser, 15965); nit_exit(1);}
31807 variable15 = variable8 /*nodearraylist5*/;
31808 variable16 = TAG_Bool(( variable15 /*tkwthennode4*/==NIT_NULL) || VAL_ISA( variable15 /*tkwthennode4*/, COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/;
31809 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction499___action, LOCATE_parser, 15967); nit_exit(1);}
31810 variable16 = variable6 /*nodearraylist7*/;
31811 variable17 = TAG_Bool(( variable16 /*pexprnode5*/==NIT_NULL) || VAL_ISA( variable16 /*pexprnode5*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31812 if (!UNTAG_Bool(variable17)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction499___action, LOCATE_parser, 15969); nit_exit(1);}
31813 variable17 = variable4 /*nodearraylist9*/;
31814 variable18 = TAG_Bool(( variable17 /*tkwelsenode6*/==NIT_NULL) || VAL_ISA( variable17 /*tkwelsenode6*/, COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/;
31815 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction499___action, LOCATE_parser, 15971); nit_exit(1);}
31816 variable18 = variable2 /*nodearraylist11*/;
31817 variable19 = TAG_Bool(( variable18 /*pexprnode7*/==NIT_NULL) || VAL_ISA( variable18 /*pexprnode7*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31818 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction499___action, LOCATE_parser, 15973); nit_exit(1);}
31819 variable20 = NEW_AIfexprExpr_parser_prod___AIfexprExpr___init_aifexprexpr( variable13 /*tkwifnode2*/, variable14 /*pexprnode3*/, variable15 /*tkwthennode4*/, variable16 /*pexprnode5*/, variable17 /*tkwelsenode6*/, variable18 /*pexprnode7*/); /*new AIfexprExpr*/
31820 variable19 = variable20;
31821 variable1 = variable19 /*pexprnode1*/ /*node_list=*/;
31822 variable20 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(92)) /*Parser::go_to*/;
31823 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable20, variable1 /*node_list*/) /*Parser::push*/;
31824 tracehead = trace.prev;
31825 return;
31826 }
31827 void parser___ReduceAction499___init(val_t self, int* init_table) {
31828 struct trace_t trace = {NULL, NULL, 15985, LOCATE_parser___ReduceAction499___init};
31829 trace.prev = tracehead; tracehead = &trace;
31830 trace.file = LOCATE_parser;
31831 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction499].i]) return;
31832 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction499].i] = 1;
31833 tracehead = trace.prev;
31834 return;
31835 }
31836 void parser___ReduceAction500___action(val_t self, val_t param0) {
31837 struct trace_t trace = {NULL, NULL, 15989, LOCATE_parser___ReduceAction500___action};
31838 val_t variable0;
31839 val_t variable1;
31840 val_t variable2;
31841 val_t variable3;
31842 val_t variable4;
31843 trace.prev = tracehead; tracehead = &trace;
31844 trace.file = LOCATE_parser;
31845 variable0 = param0;
31846 variable1 = NIT_NULL /*null*/;
31847 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31848 variable2 = variable3;
31849 variable3 = variable2 /*nodearraylist1*/;
31850 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31851 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction500___action, LOCATE_parser, 15994); nit_exit(1);}
31852 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
31853 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(93)) /*Parser::go_to*/;
31854 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
31855 tracehead = trace.prev;
31856 return;
31857 }
31858 void parser___ReduceAction500___init(val_t self, int* init_table) {
31859 struct trace_t trace = {NULL, NULL, 15998, LOCATE_parser___ReduceAction500___init};
31860 trace.prev = tracehead; tracehead = &trace;
31861 trace.file = LOCATE_parser;
31862 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction500].i]) return;
31863 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction500].i] = 1;
31864 tracehead = trace.prev;
31865 return;
31866 }
31867 void parser___ReduceAction501___action(val_t self, val_t param0) {
31868 struct trace_t trace = {NULL, NULL, 16002, LOCATE_parser___ReduceAction501___action};
31869 val_t variable0;
31870 val_t variable1;
31871 val_t variable2;
31872 val_t variable3;
31873 val_t variable4;
31874 val_t variable5;
31875 val_t variable6;
31876 val_t variable7;
31877 val_t variable8;
31878 val_t variable9;
31879 trace.prev = tracehead; tracehead = &trace;
31880 trace.file = LOCATE_parser;
31881 variable0 = param0;
31882 variable1 = NIT_NULL /*null*/;
31883 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31884 variable2 = variable3;
31885 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31886 variable3 = variable4;
31887 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31888 variable4 = variable5;
31889 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31890 variable5 = variable6;
31891 variable6 = variable5 /*nodearraylist1*/;
31892 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31893 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction501___action, LOCATE_parser, 16010); nit_exit(1);}
31894 variable7 = variable2 /*nodearraylist4*/;
31895 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31896 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction501___action, LOCATE_parser, 16012); nit_exit(1);}
31897 variable9 = NEW_AOrExpr_parser_prod___AOrExpr___init_aorexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AOrExpr*/
31898 variable8 = variable9;
31899 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
31900 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(93)) /*Parser::go_to*/;
31901 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
31902 tracehead = trace.prev;
31903 return;
31904 }
31905 void parser___ReduceAction501___init(val_t self, int* init_table) {
31906 struct trace_t trace = {NULL, NULL, 16020, LOCATE_parser___ReduceAction501___init};
31907 trace.prev = tracehead; tracehead = &trace;
31908 trace.file = LOCATE_parser;
31909 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction501].i]) return;
31910 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction501].i] = 1;
31911 tracehead = trace.prev;
31912 return;
31913 }
31914 void parser___ReduceAction502___action(val_t self, val_t param0) {
31915 struct trace_t trace = {NULL, NULL, 16024, LOCATE_parser___ReduceAction502___action};
31916 val_t variable0;
31917 val_t variable1;
31918 val_t variable2;
31919 val_t variable3;
31920 val_t variable4;
31921 val_t variable5;
31922 val_t variable6;
31923 val_t variable7;
31924 val_t variable8;
31925 val_t variable9;
31926 trace.prev = tracehead; tracehead = &trace;
31927 trace.file = LOCATE_parser;
31928 variable0 = param0;
31929 variable1 = NIT_NULL /*null*/;
31930 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31931 variable2 = variable3;
31932 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31933 variable3 = variable4;
31934 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31935 variable4 = variable5;
31936 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31937 variable5 = variable6;
31938 variable6 = variable5 /*nodearraylist1*/;
31939 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31940 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction502___action, LOCATE_parser, 16032); nit_exit(1);}
31941 variable7 = variable2 /*nodearraylist4*/;
31942 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31943 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction502___action, LOCATE_parser, 16034); nit_exit(1);}
31944 variable9 = NEW_AAndExpr_parser_prod___AAndExpr___init_aandexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AAndExpr*/
31945 variable8 = variable9;
31946 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
31947 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(93)) /*Parser::go_to*/;
31948 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
31949 tracehead = trace.prev;
31950 return;
31951 }
31952 void parser___ReduceAction502___init(val_t self, int* init_table) {
31953 struct trace_t trace = {NULL, NULL, 16042, LOCATE_parser___ReduceAction502___init};
31954 trace.prev = tracehead; tracehead = &trace;
31955 trace.file = LOCATE_parser;
31956 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction502].i]) return;
31957 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction502].i] = 1;
31958 tracehead = trace.prev;
31959 return;
31960 }
31961 void parser___ReduceAction503___action(val_t self, val_t param0) {
31962 struct trace_t trace = {NULL, NULL, 16046, LOCATE_parser___ReduceAction503___action};
31963 val_t variable0;
31964 val_t variable1;
31965 val_t variable2;
31966 val_t variable3;
31967 val_t variable4;
31968 trace.prev = tracehead; tracehead = &trace;
31969 trace.file = LOCATE_parser;
31970 variable0 = param0;
31971 variable1 = NIT_NULL /*null*/;
31972 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
31973 variable2 = variable3;
31974 variable3 = variable2 /*nodearraylist1*/;
31975 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
31976 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction503___action, LOCATE_parser, 16051); nit_exit(1);}
31977 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
31978 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(94)) /*Parser::go_to*/;
31979 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
31980 tracehead = trace.prev;
31981 return;
31982 }
31983 void parser___ReduceAction503___init(val_t self, int* init_table) {
31984 struct trace_t trace = {NULL, NULL, 16055, LOCATE_parser___ReduceAction503___init};
31985 trace.prev = tracehead; tracehead = &trace;
31986 trace.file = LOCATE_parser;
31987 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction503].i]) return;
31988 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction503].i] = 1;
31989 tracehead = trace.prev;
31990 return;
31991 }
31992 void parser___ReduceAction504___action(val_t self, val_t param0) {
31993 struct trace_t trace = {NULL, NULL, 16059, LOCATE_parser___ReduceAction504___action};
31994 val_t variable0;
31995 val_t variable1;
31996 val_t variable2;
31997 val_t variable3;
31998 val_t variable4;
31999 val_t variable5;
32000 val_t variable6;
32001 val_t variable7;
32002 val_t variable8;
32003 trace.prev = tracehead; tracehead = &trace;
32004 trace.file = LOCATE_parser;
32005 variable0 = param0;
32006 variable1 = NIT_NULL /*null*/;
32007 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32008 variable2 = variable3;
32009 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32010 variable3 = variable4;
32011 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32012 variable4 = variable5;
32013 variable5 = variable4 /*nodearraylist1*/;
32014 variable6 = TAG_Bool(( variable5 /*tkwnotnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwnotnode2*/, COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/;
32015 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction504___action, LOCATE_parser, 16066); nit_exit(1);}
32016 variable6 = variable2 /*nodearraylist3*/;
32017 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32018 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction504___action, LOCATE_parser, 16068); nit_exit(1);}
32019 variable8 = NEW_ANotExpr_parser_prod___ANotExpr___init_anotexpr( variable5 /*tkwnotnode2*/, variable6 /*pexprnode3*/); /*new ANotExpr*/
32020 variable7 = variable8;
32021 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
32022 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(94)) /*Parser::go_to*/;
32023 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
32024 tracehead = trace.prev;
32025 return;
32026 }
32027 void parser___ReduceAction504___init(val_t self, int* init_table) {
32028 struct trace_t trace = {NULL, NULL, 16076, LOCATE_parser___ReduceAction504___init};
32029 trace.prev = tracehead; tracehead = &trace;
32030 trace.file = LOCATE_parser;
32031 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction504].i]) return;
32032 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction504].i] = 1;
32033 tracehead = trace.prev;
32034 return;
32035 }
32036 void parser___ReduceAction505___action(val_t self, val_t param0) {
32037 struct trace_t trace = {NULL, NULL, 16080, LOCATE_parser___ReduceAction505___action};
32038 val_t variable0;
32039 val_t variable1;
32040 val_t variable2;
32041 val_t variable3;
32042 val_t variable4;
32043 trace.prev = tracehead; tracehead = &trace;
32044 trace.file = LOCATE_parser;
32045 variable0 = param0;
32046 variable1 = NIT_NULL /*null*/;
32047 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32048 variable2 = variable3;
32049 variable3 = variable2 /*nodearraylist1*/;
32050 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32051 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction505___action, LOCATE_parser, 16085); nit_exit(1);}
32052 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
32053 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32054 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
32055 tracehead = trace.prev;
32056 return;
32057 }
32058 void parser___ReduceAction505___init(val_t self, int* init_table) {
32059 struct trace_t trace = {NULL, NULL, 16089, LOCATE_parser___ReduceAction505___init};
32060 trace.prev = tracehead; tracehead = &trace;
32061 trace.file = LOCATE_parser;
32062 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction505].i]) return;
32063 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction505].i] = 1;
32064 tracehead = trace.prev;
32065 return;
32066 }
32067 void parser___ReduceAction506___action(val_t self, val_t param0) {
32068 struct trace_t trace = {NULL, NULL, 16093, LOCATE_parser___ReduceAction506___action};
32069 val_t variable0;
32070 val_t variable1;
32071 val_t variable2;
32072 val_t variable3;
32073 val_t variable4;
32074 val_t variable5;
32075 val_t variable6;
32076 val_t variable7;
32077 val_t variable8;
32078 val_t variable9;
32079 trace.prev = tracehead; tracehead = &trace;
32080 trace.file = LOCATE_parser;
32081 variable0 = param0;
32082 variable1 = NIT_NULL /*null*/;
32083 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32084 variable2 = variable3;
32085 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32086 variable3 = variable4;
32087 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32088 variable4 = variable5;
32089 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32090 variable5 = variable6;
32091 variable6 = variable5 /*nodearraylist1*/;
32092 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32093 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction506___action, LOCATE_parser, 16101); nit_exit(1);}
32094 variable7 = variable2 /*nodearraylist4*/;
32095 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32096 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction506___action, LOCATE_parser, 16103); nit_exit(1);}
32097 variable9 = NEW_AEqExpr_parser_prod___AEqExpr___init_aeqexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEqExpr*/
32098 variable8 = variable9;
32099 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32100 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32101 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32102 tracehead = trace.prev;
32103 return;
32104 }
32105 void parser___ReduceAction506___init(val_t self, int* init_table) {
32106 struct trace_t trace = {NULL, NULL, 16111, LOCATE_parser___ReduceAction506___init};
32107 trace.prev = tracehead; tracehead = &trace;
32108 trace.file = LOCATE_parser;
32109 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction506].i]) return;
32110 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction506].i] = 1;
32111 tracehead = trace.prev;
32112 return;
32113 }
32114 void parser___ReduceAction507___action(val_t self, val_t param0) {
32115 struct trace_t trace = {NULL, NULL, 16115, LOCATE_parser___ReduceAction507___action};
32116 val_t variable0;
32117 val_t variable1;
32118 val_t variable2;
32119 val_t variable3;
32120 val_t variable4;
32121 val_t variable5;
32122 val_t variable6;
32123 val_t variable7;
32124 val_t variable8;
32125 val_t variable9;
32126 trace.prev = tracehead; tracehead = &trace;
32127 trace.file = LOCATE_parser;
32128 variable0 = param0;
32129 variable1 = NIT_NULL /*null*/;
32130 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32131 variable2 = variable3;
32132 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32133 variable3 = variable4;
32134 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32135 variable4 = variable5;
32136 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32137 variable5 = variable6;
32138 variable6 = variable5 /*nodearraylist1*/;
32139 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32140 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction507___action, LOCATE_parser, 16123); nit_exit(1);}
32141 variable7 = variable2 /*nodearraylist4*/;
32142 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32143 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction507___action, LOCATE_parser, 16125); nit_exit(1);}
32144 variable9 = NEW_AEeExpr_parser_prod___AEeExpr___init_aeeexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AEeExpr*/
32145 variable8 = variable9;
32146 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32147 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32148 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32149 tracehead = trace.prev;
32150 return;
32151 }
32152 void parser___ReduceAction507___init(val_t self, int* init_table) {
32153 struct trace_t trace = {NULL, NULL, 16133, LOCATE_parser___ReduceAction507___init};
32154 trace.prev = tracehead; tracehead = &trace;
32155 trace.file = LOCATE_parser;
32156 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction507].i]) return;
32157 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction507].i] = 1;
32158 tracehead = trace.prev;
32159 return;
32160 }
32161 void parser___ReduceAction508___action(val_t self, val_t param0) {
32162 struct trace_t trace = {NULL, NULL, 16137, LOCATE_parser___ReduceAction508___action};
32163 val_t variable0;
32164 val_t variable1;
32165 val_t variable2;
32166 val_t variable3;
32167 val_t variable4;
32168 val_t variable5;
32169 val_t variable6;
32170 val_t variable7;
32171 val_t variable8;
32172 val_t variable9;
32173 trace.prev = tracehead; tracehead = &trace;
32174 trace.file = LOCATE_parser;
32175 variable0 = param0;
32176 variable1 = NIT_NULL /*null*/;
32177 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32178 variable2 = variable3;
32179 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32180 variable3 = variable4;
32181 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32182 variable4 = variable5;
32183 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32184 variable5 = variable6;
32185 variable6 = variable5 /*nodearraylist1*/;
32186 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32187 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction508___action, LOCATE_parser, 16145); nit_exit(1);}
32188 variable7 = variable2 /*nodearraylist4*/;
32189 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32190 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction508___action, LOCATE_parser, 16147); nit_exit(1);}
32191 variable9 = NEW_ANeExpr_parser_prod___ANeExpr___init_aneexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ANeExpr*/
32192 variable8 = variable9;
32193 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32194 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32195 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32196 tracehead = trace.prev;
32197 return;
32198 }
32199 void parser___ReduceAction508___init(val_t self, int* init_table) {
32200 struct trace_t trace = {NULL, NULL, 16155, LOCATE_parser___ReduceAction508___init};
32201 trace.prev = tracehead; tracehead = &trace;
32202 trace.file = LOCATE_parser;
32203 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction508].i]) return;
32204 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction508].i] = 1;
32205 tracehead = trace.prev;
32206 return;
32207 }
32208 void parser___ReduceAction509___action(val_t self, val_t param0) {
32209 struct trace_t trace = {NULL, NULL, 16159, LOCATE_parser___ReduceAction509___action};
32210 val_t variable0;
32211 val_t variable1;
32212 val_t variable2;
32213 val_t variable3;
32214 val_t variable4;
32215 val_t variable5;
32216 val_t variable6;
32217 val_t variable7;
32218 val_t variable8;
32219 val_t variable9;
32220 trace.prev = tracehead; tracehead = &trace;
32221 trace.file = LOCATE_parser;
32222 variable0 = param0;
32223 variable1 = NIT_NULL /*null*/;
32224 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32225 variable2 = variable3;
32226 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32227 variable3 = variable4;
32228 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32229 variable4 = variable5;
32230 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32231 variable5 = variable6;
32232 variable6 = variable5 /*nodearraylist1*/;
32233 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32234 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction509___action, LOCATE_parser, 16167); nit_exit(1);}
32235 variable7 = variable2 /*nodearraylist4*/;
32236 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32237 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction509___action, LOCATE_parser, 16169); nit_exit(1);}
32238 variable9 = NEW_ALtExpr_parser_prod___ALtExpr___init_altexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALtExpr*/
32239 variable8 = variable9;
32240 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32241 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32242 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32243 tracehead = trace.prev;
32244 return;
32245 }
32246 void parser___ReduceAction509___init(val_t self, int* init_table) {
32247 struct trace_t trace = {NULL, NULL, 16177, LOCATE_parser___ReduceAction509___init};
32248 trace.prev = tracehead; tracehead = &trace;
32249 trace.file = LOCATE_parser;
32250 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction509].i]) return;
32251 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction509].i] = 1;
32252 tracehead = trace.prev;
32253 return;
32254 }
32255 void parser___ReduceAction510___action(val_t self, val_t param0) {
32256 struct trace_t trace = {NULL, NULL, 16181, LOCATE_parser___ReduceAction510___action};
32257 val_t variable0;
32258 val_t variable1;
32259 val_t variable2;
32260 val_t variable3;
32261 val_t variable4;
32262 val_t variable5;
32263 val_t variable6;
32264 val_t variable7;
32265 val_t variable8;
32266 val_t variable9;
32267 trace.prev = tracehead; tracehead = &trace;
32268 trace.file = LOCATE_parser;
32269 variable0 = param0;
32270 variable1 = NIT_NULL /*null*/;
32271 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32272 variable2 = variable3;
32273 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32274 variable3 = variable4;
32275 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32276 variable4 = variable5;
32277 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32278 variable5 = variable6;
32279 variable6 = variable5 /*nodearraylist1*/;
32280 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32281 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction510___action, LOCATE_parser, 16189); nit_exit(1);}
32282 variable7 = variable2 /*nodearraylist4*/;
32283 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32284 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction510___action, LOCATE_parser, 16191); nit_exit(1);}
32285 variable9 = NEW_ALeExpr_parser_prod___ALeExpr___init_aleexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ALeExpr*/
32286 variable8 = variable9;
32287 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32288 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32289 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32290 tracehead = trace.prev;
32291 return;
32292 }
32293 void parser___ReduceAction510___init(val_t self, int* init_table) {
32294 struct trace_t trace = {NULL, NULL, 16199, LOCATE_parser___ReduceAction510___init};
32295 trace.prev = tracehead; tracehead = &trace;
32296 trace.file = LOCATE_parser;
32297 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction510].i]) return;
32298 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction510].i] = 1;
32299 tracehead = trace.prev;
32300 return;
32301 }
32302 void parser___ReduceAction511___action(val_t self, val_t param0) {
32303 struct trace_t trace = {NULL, NULL, 16203, LOCATE_parser___ReduceAction511___action};
32304 val_t variable0;
32305 val_t variable1;
32306 val_t variable2;
32307 val_t variable3;
32308 val_t variable4;
32309 val_t variable5;
32310 val_t variable6;
32311 val_t variable7;
32312 val_t variable8;
32313 val_t variable9;
32314 trace.prev = tracehead; tracehead = &trace;
32315 trace.file = LOCATE_parser;
32316 variable0 = param0;
32317 variable1 = NIT_NULL /*null*/;
32318 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32319 variable2 = variable3;
32320 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32321 variable3 = variable4;
32322 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32323 variable4 = variable5;
32324 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32325 variable5 = variable6;
32326 variable6 = variable5 /*nodearraylist1*/;
32327 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32328 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction511___action, LOCATE_parser, 16211); nit_exit(1);}
32329 variable7 = variable2 /*nodearraylist4*/;
32330 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32331 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction511___action, LOCATE_parser, 16213); nit_exit(1);}
32332 variable9 = NEW_AGtExpr_parser_prod___AGtExpr___init_agtexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGtExpr*/
32333 variable8 = variable9;
32334 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32335 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32336 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32337 tracehead = trace.prev;
32338 return;
32339 }
32340 void parser___ReduceAction511___init(val_t self, int* init_table) {
32341 struct trace_t trace = {NULL, NULL, 16221, LOCATE_parser___ReduceAction511___init};
32342 trace.prev = tracehead; tracehead = &trace;
32343 trace.file = LOCATE_parser;
32344 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction511].i]) return;
32345 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction511].i] = 1;
32346 tracehead = trace.prev;
32347 return;
32348 }
32349 void parser___ReduceAction512___action(val_t self, val_t param0) {
32350 struct trace_t trace = {NULL, NULL, 16225, LOCATE_parser___ReduceAction512___action};
32351 val_t variable0;
32352 val_t variable1;
32353 val_t variable2;
32354 val_t variable3;
32355 val_t variable4;
32356 val_t variable5;
32357 val_t variable6;
32358 val_t variable7;
32359 val_t variable8;
32360 val_t variable9;
32361 trace.prev = tracehead; tracehead = &trace;
32362 trace.file = LOCATE_parser;
32363 variable0 = param0;
32364 variable1 = NIT_NULL /*null*/;
32365 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32366 variable2 = variable3;
32367 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32368 variable3 = variable4;
32369 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32370 variable4 = variable5;
32371 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32372 variable5 = variable6;
32373 variable6 = variable5 /*nodearraylist1*/;
32374 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32375 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction512___action, LOCATE_parser, 16233); nit_exit(1);}
32376 variable7 = variable2 /*nodearraylist4*/;
32377 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32378 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction512___action, LOCATE_parser, 16235); nit_exit(1);}
32379 variable9 = NEW_AGeExpr_parser_prod___AGeExpr___init_ageexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AGeExpr*/
32380 variable8 = variable9;
32381 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32382 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32383 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32384 tracehead = trace.prev;
32385 return;
32386 }
32387 void parser___ReduceAction512___init(val_t self, int* init_table) {
32388 struct trace_t trace = {NULL, NULL, 16243, LOCATE_parser___ReduceAction512___init};
32389 trace.prev = tracehead; tracehead = &trace;
32390 trace.file = LOCATE_parser;
32391 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction512].i]) return;
32392 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction512].i] = 1;
32393 tracehead = trace.prev;
32394 return;
32395 }
32396 void parser___ReduceAction513___action(val_t self, val_t param0) {
32397 struct trace_t trace = {NULL, NULL, 16247, LOCATE_parser___ReduceAction513___action};
32398 val_t variable0;
32399 val_t variable1;
32400 val_t variable2;
32401 val_t variable3;
32402 val_t variable4;
32403 val_t variable5;
32404 val_t variable6;
32405 val_t variable7;
32406 val_t variable8;
32407 val_t variable9;
32408 trace.prev = tracehead; tracehead = &trace;
32409 trace.file = LOCATE_parser;
32410 variable0 = param0;
32411 variable1 = NIT_NULL /*null*/;
32412 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32413 variable2 = variable3;
32414 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32415 variable3 = variable4;
32416 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32417 variable4 = variable5;
32418 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32419 variable5 = variable6;
32420 variable6 = variable5 /*nodearraylist1*/;
32421 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32422 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction513___action, LOCATE_parser, 16255); nit_exit(1);}
32423 variable7 = variable2 /*nodearraylist4*/;
32424 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32425 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction513___action, LOCATE_parser, 16257); nit_exit(1);}
32426 variable9 = NEW_AStarshipExpr_parser_prod___AStarshipExpr___init_astarshipexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarshipExpr*/
32427 variable8 = variable9;
32428 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32429 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32430 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32431 tracehead = trace.prev;
32432 return;
32433 }
32434 void parser___ReduceAction513___init(val_t self, int* init_table) {
32435 struct trace_t trace = {NULL, NULL, 16265, LOCATE_parser___ReduceAction513___init};
32436 trace.prev = tracehead; tracehead = &trace;
32437 trace.file = LOCATE_parser;
32438 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction513].i]) return;
32439 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction513].i] = 1;
32440 tracehead = trace.prev;
32441 return;
32442 }
32443 void parser___ReduceAction514___action(val_t self, val_t param0) {
32444 struct trace_t trace = {NULL, NULL, 16269, LOCATE_parser___ReduceAction514___action};
32445 val_t variable0;
32446 val_t variable1;
32447 val_t variable2;
32448 val_t variable3;
32449 val_t variable4;
32450 val_t variable5;
32451 val_t variable6;
32452 val_t variable7;
32453 val_t variable8;
32454 val_t variable9;
32455 trace.prev = tracehead; tracehead = &trace;
32456 trace.file = LOCATE_parser;
32457 variable0 = param0;
32458 variable1 = NIT_NULL /*null*/;
32459 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32460 variable2 = variable3;
32461 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32462 variable3 = variable4;
32463 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32464 variable4 = variable5;
32465 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32466 variable5 = variable6;
32467 variable6 = variable5 /*nodearraylist1*/;
32468 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32469 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction514___action, LOCATE_parser, 16277); nit_exit(1);}
32470 variable7 = variable2 /*nodearraylist4*/;
32471 variable8 = TAG_Bool(( variable7 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable7 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
32472 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction514___action, LOCATE_parser, 16279); nit_exit(1);}
32473 variable9 = NEW_AIsaExpr_parser_prod___AIsaExpr___init_aisaexpr( variable6 /*pexprnode2*/, variable7 /*ptypenode3*/); /*new AIsaExpr*/
32474 variable8 = variable9;
32475 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32476 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(95)) /*Parser::go_to*/;
32477 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32478 tracehead = trace.prev;
32479 return;
32480 }
32481 void parser___ReduceAction514___init(val_t self, int* init_table) {
32482 struct trace_t trace = {NULL, NULL, 16287, LOCATE_parser___ReduceAction514___init};
32483 trace.prev = tracehead; tracehead = &trace;
32484 trace.file = LOCATE_parser;
32485 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction514].i]) return;
32486 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction514].i] = 1;
32487 tracehead = trace.prev;
32488 return;
32489 }
32490 void parser___ReduceAction515___action(val_t self, val_t param0) {
32491 struct trace_t trace = {NULL, NULL, 16291, LOCATE_parser___ReduceAction515___action};
32492 val_t variable0;
32493 val_t variable1;
32494 val_t variable2;
32495 val_t variable3;
32496 val_t variable4;
32497 trace.prev = tracehead; tracehead = &trace;
32498 trace.file = LOCATE_parser;
32499 variable0 = param0;
32500 variable1 = NIT_NULL /*null*/;
32501 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32502 variable2 = variable3;
32503 variable3 = variable2 /*nodearraylist1*/;
32504 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32505 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction515___action, LOCATE_parser, 16296); nit_exit(1);}
32506 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
32507 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(96)) /*Parser::go_to*/;
32508 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
32509 tracehead = trace.prev;
32510 return;
32511 }
32512 void parser___ReduceAction515___init(val_t self, int* init_table) {
32513 struct trace_t trace = {NULL, NULL, 16300, LOCATE_parser___ReduceAction515___init};
32514 trace.prev = tracehead; tracehead = &trace;
32515 trace.file = LOCATE_parser;
32516 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction515].i]) return;
32517 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction515].i] = 1;
32518 tracehead = trace.prev;
32519 return;
32520 }
32521 void parser___ReduceAction516___action(val_t self, val_t param0) {
32522 struct trace_t trace = {NULL, NULL, 16304, LOCATE_parser___ReduceAction516___action};
32523 val_t variable0;
32524 val_t variable1;
32525 val_t variable2;
32526 val_t variable3;
32527 val_t variable4;
32528 val_t variable5;
32529 val_t variable6;
32530 val_t variable7;
32531 val_t variable8;
32532 val_t variable9;
32533 trace.prev = tracehead; tracehead = &trace;
32534 trace.file = LOCATE_parser;
32535 variable0 = param0;
32536 variable1 = NIT_NULL /*null*/;
32537 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32538 variable2 = variable3;
32539 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32540 variable3 = variable4;
32541 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32542 variable4 = variable5;
32543 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32544 variable5 = variable6;
32545 variable6 = variable5 /*nodearraylist1*/;
32546 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32547 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction516___action, LOCATE_parser, 16312); nit_exit(1);}
32548 variable7 = variable2 /*nodearraylist4*/;
32549 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32550 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction516___action, LOCATE_parser, 16314); nit_exit(1);}
32551 variable9 = NEW_APlusExpr_parser_prod___APlusExpr___init_aplusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APlusExpr*/
32552 variable8 = variable9;
32553 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32554 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(96)) /*Parser::go_to*/;
32555 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32556 tracehead = trace.prev;
32557 return;
32558 }
32559 void parser___ReduceAction516___init(val_t self, int* init_table) {
32560 struct trace_t trace = {NULL, NULL, 16322, LOCATE_parser___ReduceAction516___init};
32561 trace.prev = tracehead; tracehead = &trace;
32562 trace.file = LOCATE_parser;
32563 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction516].i]) return;
32564 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction516].i] = 1;
32565 tracehead = trace.prev;
32566 return;
32567 }
32568 void parser___ReduceAction517___action(val_t self, val_t param0) {
32569 struct trace_t trace = {NULL, NULL, 16326, LOCATE_parser___ReduceAction517___action};
32570 val_t variable0;
32571 val_t variable1;
32572 val_t variable2;
32573 val_t variable3;
32574 val_t variable4;
32575 val_t variable5;
32576 val_t variable6;
32577 val_t variable7;
32578 val_t variable8;
32579 val_t variable9;
32580 trace.prev = tracehead; tracehead = &trace;
32581 trace.file = LOCATE_parser;
32582 variable0 = param0;
32583 variable1 = NIT_NULL /*null*/;
32584 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32585 variable2 = variable3;
32586 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32587 variable3 = variable4;
32588 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32589 variable4 = variable5;
32590 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32591 variable5 = variable6;
32592 variable6 = variable5 /*nodearraylist1*/;
32593 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32594 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction517___action, LOCATE_parser, 16334); nit_exit(1);}
32595 variable7 = variable2 /*nodearraylist4*/;
32596 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32597 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction517___action, LOCATE_parser, 16336); nit_exit(1);}
32598 variable9 = NEW_AMinusExpr_parser_prod___AMinusExpr___init_aminusexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AMinusExpr*/
32599 variable8 = variable9;
32600 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32601 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(96)) /*Parser::go_to*/;
32602 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32603 tracehead = trace.prev;
32604 return;
32605 }
32606 void parser___ReduceAction517___init(val_t self, int* init_table) {
32607 struct trace_t trace = {NULL, NULL, 16344, LOCATE_parser___ReduceAction517___init};
32608 trace.prev = tracehead; tracehead = &trace;
32609 trace.file = LOCATE_parser;
32610 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction517].i]) return;
32611 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction517].i] = 1;
32612 tracehead = trace.prev;
32613 return;
32614 }
32615 void parser___ReduceAction518___action(val_t self, val_t param0) {
32616 struct trace_t trace = {NULL, NULL, 16348, LOCATE_parser___ReduceAction518___action};
32617 val_t variable0;
32618 val_t variable1;
32619 val_t variable2;
32620 val_t variable3;
32621 val_t variable4;
32622 trace.prev = tracehead; tracehead = &trace;
32623 trace.file = LOCATE_parser;
32624 variable0 = param0;
32625 variable1 = NIT_NULL /*null*/;
32626 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32627 variable2 = variable3;
32628 variable3 = variable2 /*nodearraylist1*/;
32629 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32630 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction518___action, LOCATE_parser, 16353); nit_exit(1);}
32631 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
32632 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/;
32633 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
32634 tracehead = trace.prev;
32635 return;
32636 }
32637 void parser___ReduceAction518___init(val_t self, int* init_table) {
32638 struct trace_t trace = {NULL, NULL, 16357, LOCATE_parser___ReduceAction518___init};
32639 trace.prev = tracehead; tracehead = &trace;
32640 trace.file = LOCATE_parser;
32641 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction518].i]) return;
32642 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction518].i] = 1;
32643 tracehead = trace.prev;
32644 return;
32645 }
32646 void parser___ReduceAction519___action(val_t self, val_t param0) {
32647 struct trace_t trace = {NULL, NULL, 16361, LOCATE_parser___ReduceAction519___action};
32648 val_t variable0;
32649 val_t variable1;
32650 val_t variable2;
32651 val_t variable3;
32652 val_t variable4;
32653 val_t variable5;
32654 val_t variable6;
32655 val_t variable7;
32656 val_t variable8;
32657 val_t variable9;
32658 trace.prev = tracehead; tracehead = &trace;
32659 trace.file = LOCATE_parser;
32660 variable0 = param0;
32661 variable1 = NIT_NULL /*null*/;
32662 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32663 variable2 = variable3;
32664 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32665 variable3 = variable4;
32666 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32667 variable4 = variable5;
32668 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32669 variable5 = variable6;
32670 variable6 = variable5 /*nodearraylist1*/;
32671 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32672 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction519___action, LOCATE_parser, 16369); nit_exit(1);}
32673 variable7 = variable2 /*nodearraylist4*/;
32674 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32675 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction519___action, LOCATE_parser, 16371); nit_exit(1);}
32676 variable9 = NEW_AStarExpr_parser_prod___AStarExpr___init_astarexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new AStarExpr*/
32677 variable8 = variable9;
32678 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32679 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/;
32680 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32681 tracehead = trace.prev;
32682 return;
32683 }
32684 void parser___ReduceAction519___init(val_t self, int* init_table) {
32685 struct trace_t trace = {NULL, NULL, 16379, LOCATE_parser___ReduceAction519___init};
32686 trace.prev = tracehead; tracehead = &trace;
32687 trace.file = LOCATE_parser;
32688 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction519].i]) return;
32689 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction519].i] = 1;
32690 tracehead = trace.prev;
32691 return;
32692 }
32693 void parser___ReduceAction520___action(val_t self, val_t param0) {
32694 struct trace_t trace = {NULL, NULL, 16383, LOCATE_parser___ReduceAction520___action};
32695 val_t variable0;
32696 val_t variable1;
32697 val_t variable2;
32698 val_t variable3;
32699 val_t variable4;
32700 val_t variable5;
32701 val_t variable6;
32702 val_t variable7;
32703 val_t variable8;
32704 val_t variable9;
32705 trace.prev = tracehead; tracehead = &trace;
32706 trace.file = LOCATE_parser;
32707 variable0 = param0;
32708 variable1 = NIT_NULL /*null*/;
32709 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32710 variable2 = variable3;
32711 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32712 variable3 = variable4;
32713 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32714 variable4 = variable5;
32715 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32716 variable5 = variable6;
32717 variable6 = variable5 /*nodearraylist1*/;
32718 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32719 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction520___action, LOCATE_parser, 16391); nit_exit(1);}
32720 variable7 = variable2 /*nodearraylist4*/;
32721 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32722 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction520___action, LOCATE_parser, 16393); nit_exit(1);}
32723 variable9 = NEW_ASlashExpr_parser_prod___ASlashExpr___init_aslashexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new ASlashExpr*/
32724 variable8 = variable9;
32725 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32726 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/;
32727 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32728 tracehead = trace.prev;
32729 return;
32730 }
32731 void parser___ReduceAction520___init(val_t self, int* init_table) {
32732 struct trace_t trace = {NULL, NULL, 16401, LOCATE_parser___ReduceAction520___init};
32733 trace.prev = tracehead; tracehead = &trace;
32734 trace.file = LOCATE_parser;
32735 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction520].i]) return;
32736 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction520].i] = 1;
32737 tracehead = trace.prev;
32738 return;
32739 }
32740 void parser___ReduceAction521___action(val_t self, val_t param0) {
32741 struct trace_t trace = {NULL, NULL, 16405, LOCATE_parser___ReduceAction521___action};
32742 val_t variable0;
32743 val_t variable1;
32744 val_t variable2;
32745 val_t variable3;
32746 val_t variable4;
32747 val_t variable5;
32748 val_t variable6;
32749 val_t variable7;
32750 val_t variable8;
32751 val_t variable9;
32752 trace.prev = tracehead; tracehead = &trace;
32753 trace.file = LOCATE_parser;
32754 variable0 = param0;
32755 variable1 = NIT_NULL /*null*/;
32756 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32757 variable2 = variable3;
32758 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32759 variable3 = variable4;
32760 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32761 variable4 = variable5;
32762 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32763 variable5 = variable6;
32764 variable6 = variable5 /*nodearraylist1*/;
32765 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32766 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction521___action, LOCATE_parser, 16413); nit_exit(1);}
32767 variable7 = variable2 /*nodearraylist4*/;
32768 variable8 = TAG_Bool(( variable7 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable7 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32769 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction521___action, LOCATE_parser, 16415); nit_exit(1);}
32770 variable9 = NEW_APercentExpr_parser_prod___APercentExpr___init_apercentexpr( variable6 /*pexprnode2*/, variable7 /*pexprnode3*/); /*new APercentExpr*/
32771 variable8 = variable9;
32772 variable1 = variable8 /*pexprnode1*/ /*node_list=*/;
32773 variable9 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(97)) /*Parser::go_to*/;
32774 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable9, variable1 /*node_list*/) /*Parser::push*/;
32775 tracehead = trace.prev;
32776 return;
32777 }
32778 void parser___ReduceAction521___init(val_t self, int* init_table) {
32779 struct trace_t trace = {NULL, NULL, 16423, LOCATE_parser___ReduceAction521___init};
32780 trace.prev = tracehead; tracehead = &trace;
32781 trace.file = LOCATE_parser;
32782 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction521].i]) return;
32783 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction521].i] = 1;
32784 tracehead = trace.prev;
32785 return;
32786 }
32787 void parser___ReduceAction522___action(val_t self, val_t param0) {
32788 struct trace_t trace = {NULL, NULL, 16427, LOCATE_parser___ReduceAction522___action};
32789 val_t variable0;
32790 val_t variable1;
32791 val_t variable2;
32792 val_t variable3;
32793 val_t variable4;
32794 trace.prev = tracehead; tracehead = &trace;
32795 trace.file = LOCATE_parser;
32796 variable0 = param0;
32797 variable1 = NIT_NULL /*null*/;
32798 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32799 variable2 = variable3;
32800 variable3 = variable2 /*nodearraylist1*/;
32801 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32802 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction522___action, LOCATE_parser, 16432); nit_exit(1);}
32803 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
32804 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(98)) /*Parser::go_to*/;
32805 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
32806 tracehead = trace.prev;
32807 return;
32808 }
32809 void parser___ReduceAction522___init(val_t self, int* init_table) {
32810 struct trace_t trace = {NULL, NULL, 16436, LOCATE_parser___ReduceAction522___init};
32811 trace.prev = tracehead; tracehead = &trace;
32812 trace.file = LOCATE_parser;
32813 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction522].i]) return;
32814 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction522].i] = 1;
32815 tracehead = trace.prev;
32816 return;
32817 }
32818 void parser___ReduceAction523___action(val_t self, val_t param0) {
32819 struct trace_t trace = {NULL, NULL, 16440, LOCATE_parser___ReduceAction523___action};
32820 val_t variable0;
32821 val_t variable1;
32822 val_t variable2;
32823 val_t variable3;
32824 val_t variable4;
32825 val_t variable5;
32826 val_t variable6;
32827 val_t variable7;
32828 val_t variable8;
32829 trace.prev = tracehead; tracehead = &trace;
32830 trace.file = LOCATE_parser;
32831 variable0 = param0;
32832 variable1 = NIT_NULL /*null*/;
32833 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32834 variable2 = variable3;
32835 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32836 variable3 = variable4;
32837 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32838 variable4 = variable5;
32839 variable5 = variable4 /*nodearraylist1*/;
32840 variable6 = TAG_Bool(( variable5 /*tminusnode2*/==NIT_NULL) || VAL_ISA( variable5 /*tminusnode2*/, COLOR_TMinus, ID_TMinus)) /*cast TMinus*/;
32841 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction523___action, LOCATE_parser, 16447); nit_exit(1);}
32842 variable6 = variable2 /*nodearraylist3*/;
32843 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32844 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction523___action, LOCATE_parser, 16449); nit_exit(1);}
32845 variable8 = NEW_AUminusExpr_parser_prod___AUminusExpr___init_auminusexpr( variable5 /*tminusnode2*/, variable6 /*pexprnode3*/); /*new AUminusExpr*/
32846 variable7 = variable8;
32847 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
32848 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(98)) /*Parser::go_to*/;
32849 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
32850 tracehead = trace.prev;
32851 return;
32852 }
32853 void parser___ReduceAction523___init(val_t self, int* init_table) {
32854 struct trace_t trace = {NULL, NULL, 16457, LOCATE_parser___ReduceAction523___init};
32855 trace.prev = tracehead; tracehead = &trace;
32856 trace.file = LOCATE_parser;
32857 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction523].i]) return;
32858 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction523].i] = 1;
32859 tracehead = trace.prev;
32860 return;
32861 }
32862 void parser___ReduceAction524___action(val_t self, val_t param0) {
32863 struct trace_t trace = {NULL, NULL, 16461, LOCATE_parser___ReduceAction524___action};
32864 val_t variable0;
32865 val_t variable1;
32866 val_t variable2;
32867 val_t variable3;
32868 val_t variable4;
32869 val_t variable5;
32870 val_t variable6;
32871 val_t variable7;
32872 val_t variable8;
32873 trace.prev = tracehead; tracehead = &trace;
32874 trace.file = LOCATE_parser;
32875 variable0 = param0;
32876 variable1 = NIT_NULL /*null*/;
32877 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32878 variable2 = variable3;
32879 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32880 variable3 = variable4;
32881 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32882 variable4 = variable5;
32883 variable5 = variable4 /*nodearraylist1*/;
32884 variable6 = TAG_Bool(( variable5 /*tkwoncenode2*/==NIT_NULL) || VAL_ISA( variable5 /*tkwoncenode2*/, COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/;
32885 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction524___action, LOCATE_parser, 16468); nit_exit(1);}
32886 variable6 = variable2 /*nodearraylist3*/;
32887 variable7 = TAG_Bool(( variable6 /*pexprnode3*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode3*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32888 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction524___action, LOCATE_parser, 16470); nit_exit(1);}
32889 variable8 = NEW_AOnceExpr_parser_prod___AOnceExpr___init_aonceexpr( variable5 /*tkwoncenode2*/, variable6 /*pexprnode3*/); /*new AOnceExpr*/
32890 variable7 = variable8;
32891 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
32892 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(98)) /*Parser::go_to*/;
32893 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
32894 tracehead = trace.prev;
32895 return;
32896 }
32897 void parser___ReduceAction524___init(val_t self, int* init_table) {
32898 struct trace_t trace = {NULL, NULL, 16478, LOCATE_parser___ReduceAction524___init};
32899 trace.prev = tracehead; tracehead = &trace;
32900 trace.file = LOCATE_parser;
32901 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction524].i]) return;
32902 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction524].i] = 1;
32903 tracehead = trace.prev;
32904 return;
32905 }
32906 void parser___ReduceAction525___action(val_t self, val_t param0) {
32907 struct trace_t trace = {NULL, NULL, 16482, LOCATE_parser___ReduceAction525___action};
32908 val_t variable0;
32909 val_t variable1;
32910 val_t variable2;
32911 val_t variable3;
32912 val_t variable4;
32913 trace.prev = tracehead; tracehead = &trace;
32914 trace.file = LOCATE_parser;
32915 variable0 = param0;
32916 variable1 = NIT_NULL /*null*/;
32917 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32918 variable2 = variable3;
32919 variable3 = variable2 /*nodearraylist1*/;
32920 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
32921 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction525___action, LOCATE_parser, 16487); nit_exit(1);}
32922 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
32923 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(99)) /*Parser::go_to*/;
32924 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
32925 tracehead = trace.prev;
32926 return;
32927 }
32928 void parser___ReduceAction525___init(val_t self, int* init_table) {
32929 struct trace_t trace = {NULL, NULL, 16491, LOCATE_parser___ReduceAction525___init};
32930 trace.prev = tracehead; tracehead = &trace;
32931 trace.file = LOCATE_parser;
32932 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction525].i]) return;
32933 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction525].i] = 1;
32934 tracehead = trace.prev;
32935 return;
32936 }
32937 void parser___ReduceAction526___action(val_t self, val_t param0) {
32938 struct trace_t trace = {NULL, NULL, 16495, LOCATE_parser___ReduceAction526___action};
32939 val_t variable0;
32940 val_t variable1;
32941 val_t variable2;
32942 val_t variable3;
32943 val_t variable4;
32944 val_t variable5;
32945 val_t variable6;
32946 val_t variable7;
32947 val_t variable8;
32948 val_t variable9;
32949 val_t variable10;
32950 val_t variable11;
32951 trace.prev = tracehead; tracehead = &trace;
32952 trace.file = LOCATE_parser;
32953 variable0 = param0;
32954 variable1 = NIT_NULL /*null*/;
32955 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32956 variable2 = variable3;
32957 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32958 variable3 = variable4;
32959 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32960 variable4 = variable5;
32961 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
32962 variable5 = variable6;
32963 variable7 = NEW_Array_array___Array___init(); /*new Array[Object]*/
32964 variable6 = variable7;
32965 variable7 = variable5 /*nodearraylist1*/;
32966 variable8 = TAG_Bool(( variable7 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable7 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
32967 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction526___action, LOCATE_parser, 16504); nit_exit(1);}
32968 variable8 = variable3 /*nodearraylist3*/;
32969 variable9 = TAG_Bool(( variable8 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable8 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
32970 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction526___action, LOCATE_parser, 16506); nit_exit(1);}
32971 variable9 = variable2 /*nodearraylist4*/;
32972 variable10 = TAG_Bool(( variable9 /*listnode5*/==NIT_NULL) || VAL_ISA( variable9 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
32973 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction526___action, LOCATE_parser, 16508); nit_exit(1);}
32974 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable9 /*listnode5*/ == NIT_NULL /*null*/) || (( variable9 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable9 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable9 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable9 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
32975 if (UNTAG_Bool(variable10)) { /*if*/
32976 variable10 = ((array___AbstractArray___is_empty_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable6 /*listnode6*/) /*AbstractArray::is_empty*/;
32977 if (UNTAG_Bool(variable10)) { /*if*/
32978 variable6 = variable9 /*listnode5*/ /*listnode6=*/;
32979 } else { /*if*/
32980 ((abstract_collection___IndexedCollection___append_t)CALL( variable6 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable6 /*listnode6*/, variable9 /*listnode5*/) /*IndexedCollection::append*/;
32981 }
32982 }
32983 variable11 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable7 /*tkwnewnode2*/, variable8 /*ptypenode3*/, NIT_NULL /*null*/, variable6 /*listnode6*/); /*new ANewExpr*/
32984 variable10 = variable11;
32985 variable1 = variable10 /*pexprnode1*/ /*node_list=*/;
32986 variable11 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(99)) /*Parser::go_to*/;
32987 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable11, variable1 /*node_list*/) /*Parser::push*/;
32988 tracehead = trace.prev;
32989 return;
32990 }
32991 void parser___ReduceAction526___init(val_t self, int* init_table) {
32992 struct trace_t trace = {NULL, NULL, 16525, LOCATE_parser___ReduceAction526___init};
32993 trace.prev = tracehead; tracehead = &trace;
32994 trace.file = LOCATE_parser;
32995 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction526].i]) return;
32996 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction526].i] = 1;
32997 tracehead = trace.prev;
32998 return;
32999 }
33000 void parser___ReduceAction527___action(val_t self, val_t param0) {
33001 struct trace_t trace = {NULL, NULL, 16529, LOCATE_parser___ReduceAction527___action};
33002 val_t variable0;
33003 val_t variable1;
33004 val_t variable2;
33005 val_t variable3;
33006 val_t variable4;
33007 val_t variable5;
33008 val_t variable6;
33009 val_t variable7;
33010 trace.prev = tracehead; tracehead = &trace;
33011 trace.file = LOCATE_parser;
33012 variable0 = param0;
33013 variable1 = NIT_NULL /*null*/;
33014 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33015 variable2 = variable3;
33016 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33017 variable3 = variable4;
33018 variable4 = variable3 /*nodearraylist1*/;
33019 variable5 = TAG_Bool(( variable4 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
33020 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction527___action, LOCATE_parser, 16535); nit_exit(1);}
33021 variable5 = variable2 /*nodearraylist2*/;
33022 variable6 = TAG_Bool(( variable5 /*tattridnode3*/==NIT_NULL) || VAL_ISA( variable5 /*tattridnode3*/, COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
33023 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction527___action, LOCATE_parser, 16537); nit_exit(1);}
33024 variable7 = NEW_AAttrExpr_parser_prod___AAttrExpr___init_aattrexpr( variable4 /*pexprnode2*/, variable5 /*tattridnode3*/); /*new AAttrExpr*/
33025 variable6 = variable7;
33026 variable1 = variable6 /*pexprnode1*/ /*node_list=*/;
33027 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33028 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
33029 tracehead = trace.prev;
33030 return;
33031 }
33032 void parser___ReduceAction527___init(val_t self, int* init_table) {
33033 struct trace_t trace = {NULL, NULL, 16545, LOCATE_parser___ReduceAction527___init};
33034 trace.prev = tracehead; tracehead = &trace;
33035 trace.file = LOCATE_parser;
33036 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction527].i]) return;
33037 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction527].i] = 1;
33038 tracehead = trace.prev;
33039 return;
33040 }
33041 void parser___ReduceAction528___action(val_t self, val_t param0) {
33042 struct trace_t trace = {NULL, NULL, 16549, LOCATE_parser___ReduceAction528___action};
33043 val_t variable0;
33044 val_t variable1;
33045 val_t variable2;
33046 val_t variable3;
33047 val_t variable4;
33048 val_t variable5;
33049 val_t variable6;
33050 val_t variable7;
33051 val_t variable8;
33052 val_t variable9;
33053 val_t variable10;
33054 trace.prev = tracehead; tracehead = &trace;
33055 trace.file = LOCATE_parser;
33056 variable0 = param0;
33057 variable1 = NIT_NULL /*null*/;
33058 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33059 variable2 = variable3;
33060 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33061 variable3 = variable4;
33062 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33063 variable4 = variable5;
33064 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33065 variable5 = variable6;
33066 variable6 = variable4 /*nodearraylist1*/;
33067 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
33068 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction528___action, LOCATE_parser, 16557); nit_exit(1);}
33069 variable7 = variable3 /*nodearraylist2*/;
33070 variable8 = TAG_Bool(( variable7 /*tidnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tidnode3*/, COLOR_TId, ID_TId)) /*cast TId*/;
33071 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction528___action, LOCATE_parser, 16559); nit_exit(1);}
33072 variable8 = variable2 /*nodearraylist3*/;
33073 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
33074 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction528___action, LOCATE_parser, 16561); nit_exit(1);}
33075 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33076 if (UNTAG_Bool(variable9)) { /*if*/
33077 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
33078 if (UNTAG_Bool(variable9)) { /*if*/
33079 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
33080 } else { /*if*/
33081 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
33082 }
33083 }
33084 variable10 = NEW_ACallExpr_parser_prod___ACallExpr___init_acallexpr( variable6 /*pexprnode2*/, variable7 /*tidnode3*/, variable5 /*listnode5*/); /*new ACallExpr*/
33085 variable9 = variable10;
33086 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
33087 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33088 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
33089 tracehead = trace.prev;
33090 return;
33091 }
33092 void parser___ReduceAction528___init(val_t self, int* init_table) {
33093 struct trace_t trace = {NULL, NULL, 16577, LOCATE_parser___ReduceAction528___init};
33094 trace.prev = tracehead; tracehead = &trace;
33095 trace.file = LOCATE_parser;
33096 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction528].i]) return;
33097 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction528].i] = 1;
33098 tracehead = trace.prev;
33099 return;
33100 }
33101 void parser___ReduceAction529___action(val_t self, val_t param0) {
33102 struct trace_t trace = {NULL, NULL, 16581, LOCATE_parser___ReduceAction529___action};
33103 val_t variable0;
33104 val_t variable1;
33105 val_t variable2;
33106 val_t variable3;
33107 val_t variable4;
33108 val_t variable5;
33109 val_t variable6;
33110 val_t variable7;
33111 val_t variable8;
33112 trace.prev = tracehead; tracehead = &trace;
33113 trace.file = LOCATE_parser;
33114 variable0 = param0;
33115 variable1 = NIT_NULL /*null*/;
33116 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33117 variable2 = variable3;
33118 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33119 variable3 = variable4;
33120 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33121 variable4 = variable5;
33122 variable5 = variable3 /*nodearraylist1*/;
33123 variable6 = TAG_Bool(( variable5 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable5 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
33124 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction529___action, LOCATE_parser, 16588); nit_exit(1);}
33125 variable6 = variable2 /*nodearraylist2*/;
33126 variable7 = TAG_Bool(( variable6 /*listnode4*/==NIT_NULL) || VAL_ISA( variable6 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
33127 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction529___action, LOCATE_parser, 16590); nit_exit(1);}
33128 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode4*/ == NIT_NULL /*null*/) || (( variable6 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33129 if (UNTAG_Bool(variable7)) { /*if*/
33130 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode5*/) /*AbstractArray::is_empty*/;
33131 if (UNTAG_Bool(variable7)) { /*if*/
33132 variable4 = variable6 /*listnode4*/ /*listnode5=*/;
33133 } else { /*if*/
33134 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode5*/, variable6 /*listnode4*/) /*IndexedCollection::append*/;
33135 }
33136 }
33137 variable8 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( NIT_NULL /*null*/, variable5 /*tkwsupernode3*/, variable4 /*listnode5*/); /*new ASuperExpr*/
33138 variable7 = variable8;
33139 variable1 = variable7 /*pexprnode1*/ /*node_list=*/;
33140 variable8 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33141 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable8, variable1 /*node_list*/) /*Parser::push*/;
33142 tracehead = trace.prev;
33143 return;
33144 }
33145 void parser___ReduceAction529___init(val_t self, int* init_table) {
33146 struct trace_t trace = {NULL, NULL, 16606, LOCATE_parser___ReduceAction529___init};
33147 trace.prev = tracehead; tracehead = &trace;
33148 trace.file = LOCATE_parser;
33149 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction529].i]) return;
33150 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction529].i] = 1;
33151 tracehead = trace.prev;
33152 return;
33153 }
33154 void parser___ReduceAction530___action(val_t self, val_t param0) {
33155 struct trace_t trace = {NULL, NULL, 16610, LOCATE_parser___ReduceAction530___action};
33156 val_t variable0;
33157 val_t variable1;
33158 val_t variable2;
33159 val_t variable3;
33160 val_t variable4;
33161 val_t variable5;
33162 val_t variable6;
33163 val_t variable7;
33164 val_t variable8;
33165 val_t variable9;
33166 val_t variable10;
33167 trace.prev = tracehead; tracehead = &trace;
33168 trace.file = LOCATE_parser;
33169 variable0 = param0;
33170 variable1 = NIT_NULL /*null*/;
33171 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33172 variable2 = variable3;
33173 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33174 variable3 = variable4;
33175 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33176 variable4 = variable5;
33177 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33178 variable5 = variable6;
33179 variable6 = variable4 /*nodearraylist1*/;
33180 variable7 = TAG_Bool(( variable6 /*pqualifiednode2*/==NIT_NULL) || VAL_ISA( variable6 /*pqualifiednode2*/, COLOR_PQualified, ID_PQualified)) /*cast PQualified*/;
33181 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction530___action, LOCATE_parser, 16618); nit_exit(1);}
33182 variable7 = variable3 /*nodearraylist2*/;
33183 variable8 = TAG_Bool(( variable7 /*tkwsupernode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwsupernode3*/, COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
33184 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction530___action, LOCATE_parser, 16620); nit_exit(1);}
33185 variable8 = variable2 /*nodearraylist3*/;
33186 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
33187 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction530___action, LOCATE_parser, 16622); nit_exit(1);}
33188 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33189 if (UNTAG_Bool(variable9)) { /*if*/
33190 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
33191 if (UNTAG_Bool(variable9)) { /*if*/
33192 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
33193 } else { /*if*/
33194 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
33195 }
33196 }
33197 variable10 = NEW_ASuperExpr_parser_prod___ASuperExpr___init_asuperexpr( variable6 /*pqualifiednode2*/, variable7 /*tkwsupernode3*/, variable5 /*listnode5*/); /*new ASuperExpr*/
33198 variable9 = variable10;
33199 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
33200 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33201 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
33202 tracehead = trace.prev;
33203 return;
33204 }
33205 void parser___ReduceAction530___init(val_t self, int* init_table) {
33206 struct trace_t trace = {NULL, NULL, 16638, LOCATE_parser___ReduceAction530___init};
33207 trace.prev = tracehead; tracehead = &trace;
33208 trace.file = LOCATE_parser;
33209 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction530].i]) return;
33210 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction530].i] = 1;
33211 tracehead = trace.prev;
33212 return;
33213 }
33214 void parser___ReduceAction531___action(val_t self, val_t param0) {
33215 struct trace_t trace = {NULL, NULL, 16642, LOCATE_parser___ReduceAction531___action};
33216 val_t variable0;
33217 val_t variable1;
33218 val_t variable2;
33219 val_t variable3;
33220 val_t variable4;
33221 val_t variable5;
33222 val_t variable6;
33223 val_t variable7;
33224 val_t variable8;
33225 val_t variable9;
33226 val_t variable10;
33227 trace.prev = tracehead; tracehead = &trace;
33228 trace.file = LOCATE_parser;
33229 variable0 = param0;
33230 variable1 = NIT_NULL /*null*/;
33231 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33232 variable2 = variable3;
33233 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33234 variable3 = variable4;
33235 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33236 variable4 = variable5;
33237 variable6 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33238 variable5 = variable6;
33239 variable6 = variable4 /*nodearraylist1*/;
33240 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
33241 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction531___action, LOCATE_parser, 16650); nit_exit(1);}
33242 variable7 = variable3 /*nodearraylist2*/;
33243 variable8 = TAG_Bool(( variable7 /*tkwinitnode3*/==NIT_NULL) || VAL_ISA( variable7 /*tkwinitnode3*/, COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
33244 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction531___action, LOCATE_parser, 16652); nit_exit(1);}
33245 variable8 = variable2 /*nodearraylist3*/;
33246 variable9 = TAG_Bool(( variable8 /*listnode4*/==NIT_NULL) || VAL_ISA( variable8 /*listnode4*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
33247 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction531___action, LOCATE_parser, 16654); nit_exit(1);}
33248 variable9 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable8 /*listnode4*/ == NIT_NULL /*null*/) || (( variable8 /*listnode4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable8 /*listnode4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable8 /*listnode4*/,COLOR_kernel___Object_____eqeq))( variable8 /*listnode4*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33249 if (UNTAG_Bool(variable9)) { /*if*/
33250 variable9 = ((array___AbstractArray___is_empty_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___Collection___is_empty))( variable5 /*listnode5*/) /*AbstractArray::is_empty*/;
33251 if (UNTAG_Bool(variable9)) { /*if*/
33252 variable5 = variable8 /*listnode4*/ /*listnode5=*/;
33253 } else { /*if*/
33254 ((abstract_collection___IndexedCollection___append_t)CALL( variable5 /*listnode5*/,COLOR_abstract_collection___IndexedCollection___append))( variable5 /*listnode5*/, variable8 /*listnode4*/) /*IndexedCollection::append*/;
33255 }
33256 }
33257 variable10 = NEW_AInitExpr_parser_prod___AInitExpr___init_ainitexpr( variable6 /*pexprnode2*/, variable7 /*tkwinitnode3*/, variable5 /*listnode5*/); /*new AInitExpr*/
33258 variable9 = variable10;
33259 variable1 = variable9 /*pexprnode1*/ /*node_list=*/;
33260 variable10 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33261 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable10, variable1 /*node_list*/) /*Parser::push*/;
33262 tracehead = trace.prev;
33263 return;
33264 }
33265 void parser___ReduceAction531___init(val_t self, int* init_table) {
33266 struct trace_t trace = {NULL, NULL, 16670, LOCATE_parser___ReduceAction531___init};
33267 trace.prev = tracehead; tracehead = &trace;
33268 trace.file = LOCATE_parser;
33269 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction531].i]) return;
33270 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction531].i] = 1;
33271 tracehead = trace.prev;
33272 return;
33273 }
33274 void parser___ReduceAction532___action(val_t self, val_t param0) {
33275 struct trace_t trace = {NULL, NULL, 16674, LOCATE_parser___ReduceAction532___action};
33276 val_t variable0;
33277 val_t variable1;
33278 val_t variable2;
33279 val_t variable3;
33280 val_t variable4;
33281 val_t variable5;
33282 val_t variable6;
33283 val_t variable7;
33284 val_t variable8;
33285 val_t variable9;
33286 val_t variable10;
33287 val_t variable11;
33288 val_t variable12;
33289 val_t variable13;
33290 val_t variable14;
33291 val_t variable15;
33292 trace.prev = tracehead; tracehead = &trace;
33293 trace.file = LOCATE_parser;
33294 variable0 = param0;
33295 variable1 = NIT_NULL /*null*/;
33296 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33297 variable2 = variable3;
33298 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33299 variable3 = variable4;
33300 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33301 variable4 = variable5;
33302 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33303 variable5 = variable6;
33304 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33305 variable6 = variable7;
33306 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33307 variable7 = variable8;
33308 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33309 variable8 = variable9;
33310 variable10 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33311 variable9 = variable10;
33312 variable10 = variable8 /*nodearraylist1*/;
33313 variable11 = TAG_Bool(( variable10 /*tkwnewnode2*/==NIT_NULL) || VAL_ISA( variable10 /*tkwnewnode2*/, COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
33314 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction532___action, LOCATE_parser, 16686); nit_exit(1);}
33315 variable11 = variable6 /*nodearraylist3*/;
33316 variable12 = TAG_Bool(( variable11 /*ptypenode3*/==NIT_NULL) || VAL_ISA( variable11 /*ptypenode3*/, COLOR_PType, ID_PType)) /*cast PType*/;
33317 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction532___action, LOCATE_parser, 16688); nit_exit(1);}
33318 variable12 = variable3 /*nodearraylist6*/;
33319 variable13 = TAG_Bool(( variable12 /*tidnode4*/==NIT_NULL) || VAL_ISA( variable12 /*tidnode4*/, COLOR_TId, ID_TId)) /*cast TId*/;
33320 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction532___action, LOCATE_parser, 16690); nit_exit(1);}
33321 variable13 = variable2 /*nodearraylist7*/;
33322 variable14 = TAG_Bool(( variable13 /*listnode5*/==NIT_NULL) || VAL_ISA( variable13 /*listnode5*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
33323 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction532___action, LOCATE_parser, 16692); nit_exit(1);}
33324 variable14 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable13 /*listnode5*/ == NIT_NULL /*null*/) || (( variable13 /*listnode5*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable13 /*listnode5*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable13 /*listnode5*/,COLOR_kernel___Object_____eqeq))( variable13 /*listnode5*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33325 if (UNTAG_Bool(variable14)) { /*if*/
33326 variable14 = ((array___AbstractArray___is_empty_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___Collection___is_empty))( variable9 /*listnode6*/) /*AbstractArray::is_empty*/;
33327 if (UNTAG_Bool(variable14)) { /*if*/
33328 variable9 = variable13 /*listnode5*/ /*listnode6=*/;
33329 } else { /*if*/
33330 ((abstract_collection___IndexedCollection___append_t)CALL( variable9 /*listnode6*/,COLOR_abstract_collection___IndexedCollection___append))( variable9 /*listnode6*/, variable13 /*listnode5*/) /*IndexedCollection::append*/;
33331 }
33332 }
33333 variable15 = NEW_ANewExpr_parser_prod___ANewExpr___init_anewexpr( variable10 /*tkwnewnode2*/, variable11 /*ptypenode3*/, variable12 /*tidnode4*/, variable9 /*listnode6*/); /*new ANewExpr*/
33334 variable14 = variable15;
33335 variable1 = variable14 /*pexprnode1*/ /*node_list=*/;
33336 variable15 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33337 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable15, variable1 /*node_list*/) /*Parser::push*/;
33338 tracehead = trace.prev;
33339 return;
33340 }
33341 void parser___ReduceAction532___init(val_t self, int* init_table) {
33342 struct trace_t trace = {NULL, NULL, 16709, LOCATE_parser___ReduceAction532___init};
33343 trace.prev = tracehead; tracehead = &trace;
33344 trace.file = LOCATE_parser;
33345 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction532].i]) return;
33346 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction532].i] = 1;
33347 tracehead = trace.prev;
33348 return;
33349 }
33350 void parser___ReduceAction533___action(val_t self, val_t param0) {
33351 struct trace_t trace = {NULL, NULL, 16713, LOCATE_parser___ReduceAction533___action};
33352 val_t variable0;
33353 val_t variable1;
33354 val_t variable2;
33355 val_t variable3;
33356 val_t variable4;
33357 val_t variable5;
33358 trace.prev = tracehead; tracehead = &trace;
33359 trace.file = LOCATE_parser;
33360 variable0 = param0;
33361 variable1 = NIT_NULL /*null*/;
33362 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33363 variable2 = variable3;
33364 variable3 = variable2 /*nodearraylist1*/;
33365 variable4 = TAG_Bool(( variable3 /*tkwselfnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwselfnode2*/, COLOR_TKwself, ID_TKwself)) /*cast TKwself*/;
33366 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction533___action, LOCATE_parser, 16718); nit_exit(1);}
33367 variable5 = NEW_ASelfExpr_parser_prod___ASelfExpr___init_aselfexpr( variable3 /*tkwselfnode2*/); /*new ASelfExpr*/
33368 variable4 = variable5;
33369 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33370 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33371 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33372 tracehead = trace.prev;
33373 return;
33374 }
33375 void parser___ReduceAction533___init(val_t self, int* init_table) {
33376 struct trace_t trace = {NULL, NULL, 16725, LOCATE_parser___ReduceAction533___init};
33377 trace.prev = tracehead; tracehead = &trace;
33378 trace.file = LOCATE_parser;
33379 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction533].i]) return;
33380 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction533].i] = 1;
33381 tracehead = trace.prev;
33382 return;
33383 }
33384 void parser___ReduceAction534___action(val_t self, val_t param0) {
33385 struct trace_t trace = {NULL, NULL, 16729, LOCATE_parser___ReduceAction534___action};
33386 val_t variable0;
33387 val_t variable1;
33388 val_t variable2;
33389 val_t variable3;
33390 val_t variable4;
33391 val_t variable5;
33392 trace.prev = tracehead; tracehead = &trace;
33393 trace.file = LOCATE_parser;
33394 variable0 = param0;
33395 variable1 = NIT_NULL /*null*/;
33396 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33397 variable2 = variable3;
33398 variable3 = variable2 /*nodearraylist1*/;
33399 variable4 = TAG_Bool(( variable3 /*tkwtruenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwtruenode2*/, COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/;
33400 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction534___action, LOCATE_parser, 16734); nit_exit(1);}
33401 variable5 = NEW_ATrueExpr_parser_prod___ATrueExpr___init_atrueexpr( variable3 /*tkwtruenode2*/); /*new ATrueExpr*/
33402 variable4 = variable5;
33403 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33404 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33405 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33406 tracehead = trace.prev;
33407 return;
33408 }
33409 void parser___ReduceAction534___init(val_t self, int* init_table) {
33410 struct trace_t trace = {NULL, NULL, 16741, LOCATE_parser___ReduceAction534___init};
33411 trace.prev = tracehead; tracehead = &trace;
33412 trace.file = LOCATE_parser;
33413 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction534].i]) return;
33414 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction534].i] = 1;
33415 tracehead = trace.prev;
33416 return;
33417 }
33418 void parser___ReduceAction535___action(val_t self, val_t param0) {
33419 struct trace_t trace = {NULL, NULL, 16745, LOCATE_parser___ReduceAction535___action};
33420 val_t variable0;
33421 val_t variable1;
33422 val_t variable2;
33423 val_t variable3;
33424 val_t variable4;
33425 val_t variable5;
33426 trace.prev = tracehead; tracehead = &trace;
33427 trace.file = LOCATE_parser;
33428 variable0 = param0;
33429 variable1 = NIT_NULL /*null*/;
33430 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33431 variable2 = variable3;
33432 variable3 = variable2 /*nodearraylist1*/;
33433 variable4 = TAG_Bool(( variable3 /*tkwfalsenode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwfalsenode2*/, COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/;
33434 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction535___action, LOCATE_parser, 16750); nit_exit(1);}
33435 variable5 = NEW_AFalseExpr_parser_prod___AFalseExpr___init_afalseexpr( variable3 /*tkwfalsenode2*/); /*new AFalseExpr*/
33436 variable4 = variable5;
33437 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33438 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33439 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33440 tracehead = trace.prev;
33441 return;
33442 }
33443 void parser___ReduceAction535___init(val_t self, int* init_table) {
33444 struct trace_t trace = {NULL, NULL, 16757, LOCATE_parser___ReduceAction535___init};
33445 trace.prev = tracehead; tracehead = &trace;
33446 trace.file = LOCATE_parser;
33447 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction535].i]) return;
33448 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction535].i] = 1;
33449 tracehead = trace.prev;
33450 return;
33451 }
33452 void parser___ReduceAction536___action(val_t self, val_t param0) {
33453 struct trace_t trace = {NULL, NULL, 16761, LOCATE_parser___ReduceAction536___action};
33454 val_t variable0;
33455 val_t variable1;
33456 val_t variable2;
33457 val_t variable3;
33458 val_t variable4;
33459 val_t variable5;
33460 trace.prev = tracehead; tracehead = &trace;
33461 trace.file = LOCATE_parser;
33462 variable0 = param0;
33463 variable1 = NIT_NULL /*null*/;
33464 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33465 variable2 = variable3;
33466 variable3 = variable2 /*nodearraylist1*/;
33467 variable4 = TAG_Bool(( variable3 /*tkwnullnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tkwnullnode2*/, COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/;
33468 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction536___action, LOCATE_parser, 16766); nit_exit(1);}
33469 variable5 = NEW_ANullExpr_parser_prod___ANullExpr___init_anullexpr( variable3 /*tkwnullnode2*/); /*new ANullExpr*/
33470 variable4 = variable5;
33471 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33472 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33473 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33474 tracehead = trace.prev;
33475 return;
33476 }
33477 void parser___ReduceAction536___init(val_t self, int* init_table) {
33478 struct trace_t trace = {NULL, NULL, 16773, LOCATE_parser___ReduceAction536___init};
33479 trace.prev = tracehead; tracehead = &trace;
33480 trace.file = LOCATE_parser;
33481 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction536].i]) return;
33482 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction536].i] = 1;
33483 tracehead = trace.prev;
33484 return;
33485 }
33486 void parser___ReduceAction537___action(val_t self, val_t param0) {
33487 struct trace_t trace = {NULL, NULL, 16777, LOCATE_parser___ReduceAction537___action};
33488 val_t variable0;
33489 val_t variable1;
33490 val_t variable2;
33491 val_t variable3;
33492 val_t variable4;
33493 val_t variable5;
33494 trace.prev = tracehead; tracehead = &trace;
33495 trace.file = LOCATE_parser;
33496 variable0 = param0;
33497 variable1 = NIT_NULL /*null*/;
33498 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33499 variable2 = variable3;
33500 variable3 = variable2 /*nodearraylist1*/;
33501 variable4 = TAG_Bool(( variable3 /*tnumbernode2*/==NIT_NULL) || VAL_ISA( variable3 /*tnumbernode2*/, COLOR_TNumber, ID_TNumber)) /*cast TNumber*/;
33502 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction537___action, LOCATE_parser, 16782); nit_exit(1);}
33503 variable5 = NEW_AIntExpr_parser_prod___AIntExpr___init_aintexpr( variable3 /*tnumbernode2*/); /*new AIntExpr*/
33504 variable4 = variable5;
33505 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33506 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33507 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33508 tracehead = trace.prev;
33509 return;
33510 }
33511 void parser___ReduceAction537___init(val_t self, int* init_table) {
33512 struct trace_t trace = {NULL, NULL, 16789, LOCATE_parser___ReduceAction537___init};
33513 trace.prev = tracehead; tracehead = &trace;
33514 trace.file = LOCATE_parser;
33515 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction537].i]) return;
33516 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction537].i] = 1;
33517 tracehead = trace.prev;
33518 return;
33519 }
33520 void parser___ReduceAction538___action(val_t self, val_t param0) {
33521 struct trace_t trace = {NULL, NULL, 16793, LOCATE_parser___ReduceAction538___action};
33522 val_t variable0;
33523 val_t variable1;
33524 val_t variable2;
33525 val_t variable3;
33526 val_t variable4;
33527 val_t variable5;
33528 trace.prev = tracehead; tracehead = &trace;
33529 trace.file = LOCATE_parser;
33530 variable0 = param0;
33531 variable1 = NIT_NULL /*null*/;
33532 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33533 variable2 = variable3;
33534 variable3 = variable2 /*nodearraylist1*/;
33535 variable4 = TAG_Bool(( variable3 /*tfloatnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tfloatnode2*/, COLOR_TFloat, ID_TFloat)) /*cast TFloat*/;
33536 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction538___action, LOCATE_parser, 16798); nit_exit(1);}
33537 variable5 = NEW_AFloatExpr_parser_prod___AFloatExpr___init_afloatexpr( variable3 /*tfloatnode2*/); /*new AFloatExpr*/
33538 variable4 = variable5;
33539 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33540 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33541 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33542 tracehead = trace.prev;
33543 return;
33544 }
33545 void parser___ReduceAction538___init(val_t self, int* init_table) {
33546 struct trace_t trace = {NULL, NULL, 16805, LOCATE_parser___ReduceAction538___init};
33547 trace.prev = tracehead; tracehead = &trace;
33548 trace.file = LOCATE_parser;
33549 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction538].i]) return;
33550 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction538].i] = 1;
33551 tracehead = trace.prev;
33552 return;
33553 }
33554 void parser___ReduceAction539___action(val_t self, val_t param0) {
33555 struct trace_t trace = {NULL, NULL, 16809, LOCATE_parser___ReduceAction539___action};
33556 val_t variable0;
33557 val_t variable1;
33558 val_t variable2;
33559 val_t variable3;
33560 val_t variable4;
33561 val_t variable5;
33562 trace.prev = tracehead; tracehead = &trace;
33563 trace.file = LOCATE_parser;
33564 variable0 = param0;
33565 variable1 = NIT_NULL /*null*/;
33566 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33567 variable2 = variable3;
33568 variable3 = variable2 /*nodearraylist1*/;
33569 variable4 = TAG_Bool(( variable3 /*tcharnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tcharnode2*/, COLOR_TChar, ID_TChar)) /*cast TChar*/;
33570 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction539___action, LOCATE_parser, 16814); nit_exit(1);}
33571 variable5 = NEW_ACharExpr_parser_prod___ACharExpr___init_acharexpr( variable3 /*tcharnode2*/); /*new ACharExpr*/
33572 variable4 = variable5;
33573 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33574 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33575 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33576 tracehead = trace.prev;
33577 return;
33578 }
33579 void parser___ReduceAction539___init(val_t self, int* init_table) {
33580 struct trace_t trace = {NULL, NULL, 16821, LOCATE_parser___ReduceAction539___init};
33581 trace.prev = tracehead; tracehead = &trace;
33582 trace.file = LOCATE_parser;
33583 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction539].i]) return;
33584 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction539].i] = 1;
33585 tracehead = trace.prev;
33586 return;
33587 }
33588 void parser___ReduceAction540___action(val_t self, val_t param0) {
33589 struct trace_t trace = {NULL, NULL, 16825, LOCATE_parser___ReduceAction540___action};
33590 val_t variable0;
33591 val_t variable1;
33592 val_t variable2;
33593 val_t variable3;
33594 val_t variable4;
33595 val_t variable5;
33596 trace.prev = tracehead; tracehead = &trace;
33597 trace.file = LOCATE_parser;
33598 variable0 = param0;
33599 variable1 = NIT_NULL /*null*/;
33600 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33601 variable2 = variable3;
33602 variable3 = variable2 /*nodearraylist1*/;
33603 variable4 = TAG_Bool(( variable3 /*tstringnode2*/==NIT_NULL) || VAL_ISA( variable3 /*tstringnode2*/, COLOR_TString, ID_TString)) /*cast TString*/;
33604 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction540___action, LOCATE_parser, 16830); nit_exit(1);}
33605 variable5 = NEW_AStringExpr_parser_prod___AStringExpr___init_astringexpr( variable3 /*tstringnode2*/); /*new AStringExpr*/
33606 variable4 = variable5;
33607 variable1 = variable4 /*pexprnode1*/ /*node_list=*/;
33608 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33609 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33610 tracehead = trace.prev;
33611 return;
33612 }
33613 void parser___ReduceAction540___init(val_t self, int* init_table) {
33614 struct trace_t trace = {NULL, NULL, 16837, LOCATE_parser___ReduceAction540___init};
33615 trace.prev = tracehead; tracehead = &trace;
33616 trace.file = LOCATE_parser;
33617 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction540].i]) return;
33618 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction540].i] = 1;
33619 tracehead = trace.prev;
33620 return;
33621 }
33622 void parser___ReduceAction541___action(val_t self, val_t param0) {
33623 struct trace_t trace = {NULL, NULL, 16841, LOCATE_parser___ReduceAction541___action};
33624 val_t variable0;
33625 val_t variable1;
33626 val_t variable2;
33627 val_t variable3;
33628 val_t variable4;
33629 trace.prev = tracehead; tracehead = &trace;
33630 trace.file = LOCATE_parser;
33631 variable0 = param0;
33632 variable1 = NIT_NULL /*null*/;
33633 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33634 variable2 = variable3;
33635 variable3 = variable2 /*nodearraylist1*/;
33636 variable4 = TAG_Bool(( variable3 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable3 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
33637 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction541___action, LOCATE_parser, 16846); nit_exit(1);}
33638 variable1 = variable3 /*pexprnode1*/ /*node_list=*/;
33639 variable4 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33640 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable4, variable1 /*node_list*/) /*Parser::push*/;
33641 tracehead = trace.prev;
33642 return;
33643 }
33644 void parser___ReduceAction541___init(val_t self, int* init_table) {
33645 struct trace_t trace = {NULL, NULL, 16850, LOCATE_parser___ReduceAction541___init};
33646 trace.prev = tracehead; tracehead = &trace;
33647 trace.file = LOCATE_parser;
33648 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction541].i]) return;
33649 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction541].i] = 1;
33650 tracehead = trace.prev;
33651 return;
33652 }
33653 void parser___ReduceAction542___action(val_t self, val_t param0) {
33654 struct trace_t trace = {NULL, NULL, 16854, LOCATE_parser___ReduceAction542___action};
33655 val_t variable0;
33656 val_t variable1;
33657 val_t variable2;
33658 val_t variable3;
33659 val_t variable4;
33660 val_t variable5;
33661 val_t variable6;
33662 val_t variable7;
33663 val_t variable8;
33664 val_t variable9;
33665 val_t variable10;
33666 val_t variable11;
33667 val_t variable12;
33668 val_t variable13;
33669 val_t variable14;
33670 val_t variable15;
33671 val_t variable16;
33672 trace.prev = tracehead; tracehead = &trace;
33673 trace.file = LOCATE_parser;
33674 variable0 = param0;
33675 variable1 = NIT_NULL /*null*/;
33676 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33677 variable2 = variable3;
33678 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33679 variable3 = variable4;
33680 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33681 variable4 = variable5;
33682 variable6 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33683 variable5 = variable6;
33684 variable7 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33685 variable6 = variable7;
33686 variable8 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33687 variable7 = variable8;
33688 variable9 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33689 variable8 = variable9;
33690 variable10 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33691 variable9 = variable10;
33692 variable11 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33693 variable10 = variable11;
33694 variable12 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33695 variable11 = variable12;
33696 variable12 = variable11 /*nodearraylist1*/;
33697 variable13 = TAG_Bool(( variable12 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable12 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
33698 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction542___action, LOCATE_parser, 16868); nit_exit(1);}
33699 variable13 = variable8 /*nodearraylist4*/;
33700 variable14 = TAG_Bool(( variable13 /*tkwasnode3*/==NIT_NULL) || VAL_ISA( variable13 /*tkwasnode3*/, COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
33701 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction542___action, LOCATE_parser, 16870); nit_exit(1);}
33702 variable14 = variable4 /*nodearraylist8*/;
33703 variable15 = TAG_Bool(( variable14 /*ptypenode4*/==NIT_NULL) || VAL_ISA( variable14 /*ptypenode4*/, COLOR_PType, ID_PType)) /*cast PType*/;
33704 if (!UNTAG_Bool(variable15)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction542___action, LOCATE_parser, 16872); nit_exit(1);}
33705 variable16 = NEW_AAsCastExpr_parser_prod___AAsCastExpr___init_aascastexpr( variable12 /*pexprnode2*/, variable13 /*tkwasnode3*/, variable14 /*ptypenode4*/); /*new AAsCastExpr*/
33706 variable15 = variable16;
33707 variable1 = variable15 /*pexprnode1*/ /*node_list=*/;
33708 variable16 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(100)) /*Parser::go_to*/;
33709 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable16, variable1 /*node_list*/) /*Parser::push*/;
33710 tracehead = trace.prev;
33711 return;
33712 }
33713 void parser___ReduceAction542___init(val_t self, int* init_table) {
33714 struct trace_t trace = {NULL, NULL, 16881, LOCATE_parser___ReduceAction542___init};
33715 trace.prev = tracehead; tracehead = &trace;
33716 trace.file = LOCATE_parser;
33717 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction542].i]) return;
33718 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction542].i] = 1;
33719 tracehead = trace.prev;
33720 return;
33721 }
33722 void parser___ReduceAction543___action(val_t self, val_t param0) {
33723 struct trace_t trace = {NULL, NULL, 16885, LOCATE_parser___ReduceAction543___action};
33724 val_t variable0;
33725 val_t variable1;
33726 val_t variable2;
33727 val_t variable3;
33728 val_t variable4;
33729 val_t variable5;
33730 val_t variable6;
33731 trace.prev = tracehead; tracehead = &trace;
33732 trace.file = LOCATE_parser;
33733 variable0 = param0;
33734 variable1 = NIT_NULL /*null*/;
33735 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33736 variable2 = variable3;
33737 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33738 variable3 = variable4;
33739 variable5 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33740 variable4 = variable5;
33741 variable5 = variable4 /*nodearraylist1*/;
33742 variable6 = TAG_Bool(( variable5 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable5 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
33743 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction543___action, LOCATE_parser, 16892); nit_exit(1);}
33744 variable1 = variable5 /*pexprnode1*/ /*node_list=*/;
33745 variable6 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(101)) /*Parser::go_to*/;
33746 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable6, variable1 /*node_list*/) /*Parser::push*/;
33747 tracehead = trace.prev;
33748 return;
33749 }
33750 void parser___ReduceAction543___init(val_t self, int* init_table) {
33751 struct trace_t trace = {NULL, NULL, 16896, LOCATE_parser___ReduceAction543___init};
33752 trace.prev = tracehead; tracehead = &trace;
33753 trace.file = LOCATE_parser;
33754 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction543].i]) return;
33755 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction543].i] = 1;
33756 tracehead = trace.prev;
33757 return;
33758 }
33759 void parser___ReduceAction544___action(val_t self, val_t param0) {
33760 struct trace_t trace = {NULL, NULL, 16900, LOCATE_parser___ReduceAction544___action};
33761 val_t variable0;
33762 val_t variable1;
33763 val_t variable2;
33764 val_t variable3;
33765 trace.prev = tracehead; tracehead = &trace;
33766 trace.file = LOCATE_parser;
33767 variable0 = param0;
33768 variable1 = NIT_NULL /*null*/;
33769 variable3 = NEW_AImplicitSelfExpr_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(); /*new AImplicitSelfExpr*/
33770 variable2 = variable3;
33771 variable1 = variable2 /*pexprnode1*/ /*node_list=*/;
33772 variable3 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(101)) /*Parser::go_to*/;
33773 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable3, variable1 /*node_list*/) /*Parser::push*/;
33774 tracehead = trace.prev;
33775 return;
33776 }
33777 void parser___ReduceAction544___init(val_t self, int* init_table) {
33778 struct trace_t trace = {NULL, NULL, 16908, LOCATE_parser___ReduceAction544___init};
33779 trace.prev = tracehead; tracehead = &trace;
33780 trace.file = LOCATE_parser;
33781 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction544].i]) return;
33782 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction544].i] = 1;
33783 tracehead = trace.prev;
33784 return;
33785 }
33786 void parser___ReduceAction545___action(val_t self, val_t param0) {
33787 struct trace_t trace = {NULL, NULL, 16912, LOCATE_parser___ReduceAction545___action};
33788 val_t variable0;
33789 val_t variable1;
33790 val_t variable2;
33791 val_t variable3;
33792 val_t variable4;
33793 val_t variable5;
33794 trace.prev = tracehead; tracehead = &trace;
33795 trace.file = LOCATE_parser;
33796 variable0 = param0;
33797 variable1 = NIT_NULL /*null*/;
33798 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33799 variable2 = variable3;
33800 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33801 variable3 = variable4;
33802 variable4 = variable2 /*nodearraylist1*/;
33803 variable5 = TAG_Bool(( variable4 /*pimportnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pimportnode1*/, COLOR_PImport, ID_PImport)) /*cast PImport*/;
33804 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction545___action, LOCATE_parser, 16918); nit_exit(1);}
33805 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pimportnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pimportnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pimportnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pimportnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pimportnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pimportnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33806 if (UNTAG_Bool(variable5)) { /*if*/
33807 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pimportnode1*/) /*AbstractArray::add*/;
33808 }
33809 variable1 = variable3 /*listnode2*/ /*node_list=*/;
33810 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(102)) /*Parser::go_to*/;
33811 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33812 tracehead = trace.prev;
33813 return;
33814 }
33815 void parser___ReduceAction545___init(val_t self, int* init_table) {
33816 struct trace_t trace = {NULL, NULL, 16925, LOCATE_parser___ReduceAction545___init};
33817 trace.prev = tracehead; tracehead = &trace;
33818 trace.file = LOCATE_parser;
33819 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction545].i]) return;
33820 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction545].i] = 1;
33821 tracehead = trace.prev;
33822 return;
33823 }
33824 void parser___ReduceAction546___action(val_t self, val_t param0) {
33825 struct trace_t trace = {NULL, NULL, 16929, LOCATE_parser___ReduceAction546___action};
33826 val_t variable0;
33827 val_t variable1;
33828 val_t variable2;
33829 val_t variable3;
33830 val_t variable4;
33831 val_t variable5;
33832 val_t variable6;
33833 val_t variable7;
33834 trace.prev = tracehead; tracehead = &trace;
33835 trace.file = LOCATE_parser;
33836 variable0 = param0;
33837 variable1 = NIT_NULL /*null*/;
33838 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33839 variable2 = variable3;
33840 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33841 variable3 = variable4;
33842 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33843 variable4 = variable5;
33844 variable5 = variable3 /*nodearraylist1*/;
33845 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
33846 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction546___action, LOCATE_parser, 16936); nit_exit(1);}
33847 variable6 = variable2 /*nodearraylist2*/;
33848 variable7 = TAG_Bool(( variable6 /*pimportnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pimportnode2*/, COLOR_PImport, ID_PImport)) /*cast PImport*/;
33849 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction546___action, LOCATE_parser, 16938); nit_exit(1);}
33850 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33851 if (UNTAG_Bool(variable7)) { /*if*/
33852 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
33853 if (UNTAG_Bool(variable7)) { /*if*/
33854 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
33855 } else { /*if*/
33856 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
33857 }
33858 }
33859 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pimportnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pimportnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pimportnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pimportnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pimportnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pimportnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33860 if (UNTAG_Bool(variable7)) { /*if*/
33861 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pimportnode2*/) /*AbstractArray::add*/;
33862 }
33863 variable1 = variable4 /*listnode3*/ /*node_list=*/;
33864 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(102)) /*Parser::go_to*/;
33865 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
33866 tracehead = trace.prev;
33867 return;
33868 }
33869 void parser___ReduceAction546___init(val_t self, int* init_table) {
33870 struct trace_t trace = {NULL, NULL, 16952, LOCATE_parser___ReduceAction546___init};
33871 trace.prev = tracehead; tracehead = &trace;
33872 trace.file = LOCATE_parser;
33873 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction546].i]) return;
33874 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction546].i] = 1;
33875 tracehead = trace.prev;
33876 return;
33877 }
33878 void parser___ReduceAction547___action(val_t self, val_t param0) {
33879 struct trace_t trace = {NULL, NULL, 16956, LOCATE_parser___ReduceAction547___action};
33880 val_t variable0;
33881 val_t variable1;
33882 val_t variable2;
33883 val_t variable3;
33884 val_t variable4;
33885 val_t variable5;
33886 trace.prev = tracehead; tracehead = &trace;
33887 trace.file = LOCATE_parser;
33888 variable0 = param0;
33889 variable1 = NIT_NULL /*null*/;
33890 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33891 variable2 = variable3;
33892 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33893 variable3 = variable4;
33894 variable4 = variable2 /*nodearraylist1*/;
33895 variable5 = TAG_Bool(( variable4 /*pclassdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pclassdefnode1*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
33896 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction547___action, LOCATE_parser, 16962); nit_exit(1);}
33897 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pclassdefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pclassdefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pclassdefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pclassdefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pclassdefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pclassdefnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33898 if (UNTAG_Bool(variable5)) { /*if*/
33899 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pclassdefnode1*/) /*AbstractArray::add*/;
33900 }
33901 variable1 = variable3 /*listnode2*/ /*node_list=*/;
33902 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(103)) /*Parser::go_to*/;
33903 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33904 tracehead = trace.prev;
33905 return;
33906 }
33907 void parser___ReduceAction547___init(val_t self, int* init_table) {
33908 struct trace_t trace = {NULL, NULL, 16969, LOCATE_parser___ReduceAction547___init};
33909 trace.prev = tracehead; tracehead = &trace;
33910 trace.file = LOCATE_parser;
33911 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction547].i]) return;
33912 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction547].i] = 1;
33913 tracehead = trace.prev;
33914 return;
33915 }
33916 void parser___ReduceAction548___action(val_t self, val_t param0) {
33917 struct trace_t trace = {NULL, NULL, 16973, LOCATE_parser___ReduceAction548___action};
33918 val_t variable0;
33919 val_t variable1;
33920 val_t variable2;
33921 val_t variable3;
33922 val_t variable4;
33923 val_t variable5;
33924 val_t variable6;
33925 val_t variable7;
33926 trace.prev = tracehead; tracehead = &trace;
33927 trace.file = LOCATE_parser;
33928 variable0 = param0;
33929 variable1 = NIT_NULL /*null*/;
33930 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33931 variable2 = variable3;
33932 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33933 variable3 = variable4;
33934 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33935 variable4 = variable5;
33936 variable5 = variable3 /*nodearraylist1*/;
33937 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
33938 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction548___action, LOCATE_parser, 16980); nit_exit(1);}
33939 variable6 = variable2 /*nodearraylist2*/;
33940 variable7 = TAG_Bool(( variable6 /*pclassdefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pclassdefnode2*/, COLOR_PClassdef, ID_PClassdef)) /*cast PClassdef*/;
33941 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction548___action, LOCATE_parser, 16982); nit_exit(1);}
33942 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33943 if (UNTAG_Bool(variable7)) { /*if*/
33944 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
33945 if (UNTAG_Bool(variable7)) { /*if*/
33946 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
33947 } else { /*if*/
33948 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
33949 }
33950 }
33951 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pclassdefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pclassdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pclassdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pclassdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pclassdefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pclassdefnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33952 if (UNTAG_Bool(variable7)) { /*if*/
33953 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pclassdefnode2*/) /*AbstractArray::add*/;
33954 }
33955 variable1 = variable4 /*listnode3*/ /*node_list=*/;
33956 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(103)) /*Parser::go_to*/;
33957 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
33958 tracehead = trace.prev;
33959 return;
33960 }
33961 void parser___ReduceAction548___init(val_t self, int* init_table) {
33962 struct trace_t trace = {NULL, NULL, 16996, LOCATE_parser___ReduceAction548___init};
33963 trace.prev = tracehead; tracehead = &trace;
33964 trace.file = LOCATE_parser;
33965 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction548].i]) return;
33966 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction548].i] = 1;
33967 tracehead = trace.prev;
33968 return;
33969 }
33970 void parser___ReduceAction549___action(val_t self, val_t param0) {
33971 struct trace_t trace = {NULL, NULL, 17000, LOCATE_parser___ReduceAction549___action};
33972 val_t variable0;
33973 val_t variable1;
33974 val_t variable2;
33975 val_t variable3;
33976 val_t variable4;
33977 val_t variable5;
33978 trace.prev = tracehead; tracehead = &trace;
33979 trace.file = LOCATE_parser;
33980 variable0 = param0;
33981 variable1 = NIT_NULL /*null*/;
33982 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
33983 variable2 = variable3;
33984 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
33985 variable3 = variable4;
33986 variable4 = variable2 /*nodearraylist1*/;
33987 variable5 = TAG_Bool(( variable4 /*psuperclassnode1*/==NIT_NULL) || VAL_ISA( variable4 /*psuperclassnode1*/, COLOR_PSuperclass, ID_PSuperclass)) /*cast PSuperclass*/;
33988 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction549___action, LOCATE_parser, 17006); nit_exit(1);}
33989 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*psuperclassnode1*/ == NIT_NULL /*null*/) || (( variable4 /*psuperclassnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*psuperclassnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*psuperclassnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*psuperclassnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*psuperclassnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
33990 if (UNTAG_Bool(variable5)) { /*if*/
33991 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*psuperclassnode1*/) /*AbstractArray::add*/;
33992 }
33993 variable1 = variable3 /*listnode2*/ /*node_list=*/;
33994 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(104)) /*Parser::go_to*/;
33995 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
33996 tracehead = trace.prev;
33997 return;
33998 }
33999 void parser___ReduceAction549___init(val_t self, int* init_table) {
34000 struct trace_t trace = {NULL, NULL, 17013, LOCATE_parser___ReduceAction549___init};
34001 trace.prev = tracehead; tracehead = &trace;
34002 trace.file = LOCATE_parser;
34003 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction549].i]) return;
34004 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction549].i] = 1;
34005 tracehead = trace.prev;
34006 return;
34007 }
34008 void parser___ReduceAction550___action(val_t self, val_t param0) {
34009 struct trace_t trace = {NULL, NULL, 17017, LOCATE_parser___ReduceAction550___action};
34010 val_t variable0;
34011 val_t variable1;
34012 val_t variable2;
34013 val_t variable3;
34014 val_t variable4;
34015 val_t variable5;
34016 val_t variable6;
34017 val_t variable7;
34018 trace.prev = tracehead; tracehead = &trace;
34019 trace.file = LOCATE_parser;
34020 variable0 = param0;
34021 variable1 = NIT_NULL /*null*/;
34022 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34023 variable2 = variable3;
34024 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34025 variable3 = variable4;
34026 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34027 variable4 = variable5;
34028 variable5 = variable3 /*nodearraylist1*/;
34029 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34030 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction550___action, LOCATE_parser, 17024); nit_exit(1);}
34031 variable6 = variable2 /*nodearraylist2*/;
34032 variable7 = TAG_Bool(( variable6 /*psuperclassnode2*/==NIT_NULL) || VAL_ISA( variable6 /*psuperclassnode2*/, COLOR_PSuperclass, ID_PSuperclass)) /*cast PSuperclass*/;
34033 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction550___action, LOCATE_parser, 17026); nit_exit(1);}
34034 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34035 if (UNTAG_Bool(variable7)) { /*if*/
34036 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34037 if (UNTAG_Bool(variable7)) { /*if*/
34038 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34039 } else { /*if*/
34040 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34041 }
34042 }
34043 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*psuperclassnode2*/ == NIT_NULL /*null*/) || (( variable6 /*psuperclassnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*psuperclassnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*psuperclassnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*psuperclassnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*psuperclassnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34044 if (UNTAG_Bool(variable7)) { /*if*/
34045 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*psuperclassnode2*/) /*AbstractArray::add*/;
34046 }
34047 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34048 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(104)) /*Parser::go_to*/;
34049 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34050 tracehead = trace.prev;
34051 return;
34052 }
34053 void parser___ReduceAction550___init(val_t self, int* init_table) {
34054 struct trace_t trace = {NULL, NULL, 17040, LOCATE_parser___ReduceAction550___init};
34055 trace.prev = tracehead; tracehead = &trace;
34056 trace.file = LOCATE_parser;
34057 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction550].i]) return;
34058 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction550].i] = 1;
34059 tracehead = trace.prev;
34060 return;
34061 }
34062 void parser___ReduceAction551___action(val_t self, val_t param0) {
34063 struct trace_t trace = {NULL, NULL, 17044, LOCATE_parser___ReduceAction551___action};
34064 val_t variable0;
34065 val_t variable1;
34066 val_t variable2;
34067 val_t variable3;
34068 val_t variable4;
34069 val_t variable5;
34070 trace.prev = tracehead; tracehead = &trace;
34071 trace.file = LOCATE_parser;
34072 variable0 = param0;
34073 variable1 = NIT_NULL /*null*/;
34074 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34075 variable2 = variable3;
34076 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34077 variable3 = variable4;
34078 variable4 = variable2 /*nodearraylist1*/;
34079 variable5 = TAG_Bool(( variable4 /*pformaldefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pformaldefnode1*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/;
34080 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction551___action, LOCATE_parser, 17050); nit_exit(1);}
34081 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pformaldefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pformaldefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pformaldefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pformaldefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pformaldefnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34082 if (UNTAG_Bool(variable5)) { /*if*/
34083 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pformaldefnode1*/) /*AbstractArray::add*/;
34084 }
34085 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34086 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(105)) /*Parser::go_to*/;
34087 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34088 tracehead = trace.prev;
34089 return;
34090 }
34091 void parser___ReduceAction551___init(val_t self, int* init_table) {
34092 struct trace_t trace = {NULL, NULL, 17057, LOCATE_parser___ReduceAction551___init};
34093 trace.prev = tracehead; tracehead = &trace;
34094 trace.file = LOCATE_parser;
34095 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction551].i]) return;
34096 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction551].i] = 1;
34097 tracehead = trace.prev;
34098 return;
34099 }
34100 void parser___ReduceAction552___action(val_t self, val_t param0) {
34101 struct trace_t trace = {NULL, NULL, 17061, LOCATE_parser___ReduceAction552___action};
34102 val_t variable0;
34103 val_t variable1;
34104 val_t variable2;
34105 val_t variable3;
34106 val_t variable4;
34107 val_t variable5;
34108 val_t variable6;
34109 val_t variable7;
34110 trace.prev = tracehead; tracehead = &trace;
34111 trace.file = LOCATE_parser;
34112 variable0 = param0;
34113 variable1 = NIT_NULL /*null*/;
34114 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34115 variable2 = variable3;
34116 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34117 variable3 = variable4;
34118 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34119 variable4 = variable5;
34120 variable5 = variable3 /*nodearraylist1*/;
34121 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34122 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction552___action, LOCATE_parser, 17068); nit_exit(1);}
34123 variable6 = variable2 /*nodearraylist2*/;
34124 variable7 = TAG_Bool(( variable6 /*pformaldefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pformaldefnode2*/, COLOR_PFormaldef, ID_PFormaldef)) /*cast PFormaldef*/;
34125 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction552___action, LOCATE_parser, 17070); nit_exit(1);}
34126 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34127 if (UNTAG_Bool(variable7)) { /*if*/
34128 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34129 if (UNTAG_Bool(variable7)) { /*if*/
34130 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34131 } else { /*if*/
34132 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34133 }
34134 }
34135 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pformaldefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pformaldefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pformaldefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pformaldefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pformaldefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pformaldefnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34136 if (UNTAG_Bool(variable7)) { /*if*/
34137 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pformaldefnode2*/) /*AbstractArray::add*/;
34138 }
34139 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34140 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(105)) /*Parser::go_to*/;
34141 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34142 tracehead = trace.prev;
34143 return;
34144 }
34145 void parser___ReduceAction552___init(val_t self, int* init_table) {
34146 struct trace_t trace = {NULL, NULL, 17084, LOCATE_parser___ReduceAction552___init};
34147 trace.prev = tracehead; tracehead = &trace;
34148 trace.file = LOCATE_parser;
34149 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction552].i]) return;
34150 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction552].i] = 1;
34151 tracehead = trace.prev;
34152 return;
34153 }
34154 void parser___ReduceAction553___action(val_t self, val_t param0) {
34155 struct trace_t trace = {NULL, NULL, 17088, LOCATE_parser___ReduceAction553___action};
34156 val_t variable0;
34157 val_t variable1;
34158 val_t variable2;
34159 val_t variable3;
34160 val_t variable4;
34161 val_t variable5;
34162 trace.prev = tracehead; tracehead = &trace;
34163 trace.file = LOCATE_parser;
34164 variable0 = param0;
34165 variable1 = NIT_NULL /*null*/;
34166 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34167 variable2 = variable3;
34168 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34169 variable3 = variable4;
34170 variable4 = variable2 /*nodearraylist1*/;
34171 variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
34172 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction553___action, LOCATE_parser, 17094); nit_exit(1);}
34173 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ppropdefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*ppropdefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34174 if (UNTAG_Bool(variable5)) { /*if*/
34175 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ppropdefnode1*/) /*AbstractArray::add*/;
34176 }
34177 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34178 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(106)) /*Parser::go_to*/;
34179 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34180 tracehead = trace.prev;
34181 return;
34182 }
34183 void parser___ReduceAction553___init(val_t self, int* init_table) {
34184 struct trace_t trace = {NULL, NULL, 17101, LOCATE_parser___ReduceAction553___init};
34185 trace.prev = tracehead; tracehead = &trace;
34186 trace.file = LOCATE_parser;
34187 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction553].i]) return;
34188 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction553].i] = 1;
34189 tracehead = trace.prev;
34190 return;
34191 }
34192 void parser___ReduceAction554___action(val_t self, val_t param0) {
34193 struct trace_t trace = {NULL, NULL, 17105, LOCATE_parser___ReduceAction554___action};
34194 val_t variable0;
34195 val_t variable1;
34196 val_t variable2;
34197 val_t variable3;
34198 val_t variable4;
34199 val_t variable5;
34200 val_t variable6;
34201 val_t variable7;
34202 trace.prev = tracehead; tracehead = &trace;
34203 trace.file = LOCATE_parser;
34204 variable0 = param0;
34205 variable1 = NIT_NULL /*null*/;
34206 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34207 variable2 = variable3;
34208 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34209 variable3 = variable4;
34210 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34211 variable4 = variable5;
34212 variable5 = variable3 /*nodearraylist1*/;
34213 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34214 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction554___action, LOCATE_parser, 17112); nit_exit(1);}
34215 variable6 = variable2 /*nodearraylist2*/;
34216 variable7 = TAG_Bool(( variable6 /*ppropdefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppropdefnode2*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
34217 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction554___action, LOCATE_parser, 17114); nit_exit(1);}
34218 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34219 if (UNTAG_Bool(variable7)) { /*if*/
34220 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34221 if (UNTAG_Bool(variable7)) { /*if*/
34222 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34223 } else { /*if*/
34224 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34225 }
34226 }
34227 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*ppropdefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*ppropdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34228 if (UNTAG_Bool(variable7)) { /*if*/
34229 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*ppropdefnode2*/) /*AbstractArray::add*/;
34230 }
34231 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34232 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(106)) /*Parser::go_to*/;
34233 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34234 tracehead = trace.prev;
34235 return;
34236 }
34237 void parser___ReduceAction554___init(val_t self, int* init_table) {
34238 struct trace_t trace = {NULL, NULL, 17128, LOCATE_parser___ReduceAction554___init};
34239 trace.prev = tracehead; tracehead = &trace;
34240 trace.file = LOCATE_parser;
34241 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction554].i]) return;
34242 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction554].i] = 1;
34243 tracehead = trace.prev;
34244 return;
34245 }
34246 void parser___ReduceAction555___action(val_t self, val_t param0) {
34247 struct trace_t trace = {NULL, NULL, 17132, LOCATE_parser___ReduceAction555___action};
34248 val_t variable0;
34249 val_t variable1;
34250 val_t variable2;
34251 val_t variable3;
34252 val_t variable4;
34253 val_t variable5;
34254 trace.prev = tracehead; tracehead = &trace;
34255 trace.file = LOCATE_parser;
34256 variable0 = param0;
34257 variable1 = NIT_NULL /*null*/;
34258 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34259 variable2 = variable3;
34260 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34261 variable3 = variable4;
34262 variable4 = variable2 /*nodearraylist1*/;
34263 variable5 = TAG_Bool(( variable4 /*ppropdefnode1*/==NIT_NULL) || VAL_ISA( variable4 /*ppropdefnode1*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
34264 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction555___action, LOCATE_parser, 17138); nit_exit(1);}
34265 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ppropdefnode1*/ == NIT_NULL /*null*/) || (( variable4 /*ppropdefnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ppropdefnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ppropdefnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34266 if (UNTAG_Bool(variable5)) { /*if*/
34267 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ppropdefnode1*/) /*AbstractArray::add*/;
34268 }
34269 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34270 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(107)) /*Parser::go_to*/;
34271 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34272 tracehead = trace.prev;
34273 return;
34274 }
34275 void parser___ReduceAction555___init(val_t self, int* init_table) {
34276 struct trace_t trace = {NULL, NULL, 17145, LOCATE_parser___ReduceAction555___init};
34277 trace.prev = tracehead; tracehead = &trace;
34278 trace.file = LOCATE_parser;
34279 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction555].i]) return;
34280 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction555].i] = 1;
34281 tracehead = trace.prev;
34282 return;
34283 }
34284 void parser___ReduceAction556___action(val_t self, val_t param0) {
34285 struct trace_t trace = {NULL, NULL, 17149, LOCATE_parser___ReduceAction556___action};
34286 val_t variable0;
34287 val_t variable1;
34288 val_t variable2;
34289 val_t variable3;
34290 val_t variable4;
34291 val_t variable5;
34292 val_t variable6;
34293 val_t variable7;
34294 trace.prev = tracehead; tracehead = &trace;
34295 trace.file = LOCATE_parser;
34296 variable0 = param0;
34297 variable1 = NIT_NULL /*null*/;
34298 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34299 variable2 = variable3;
34300 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34301 variable3 = variable4;
34302 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34303 variable4 = variable5;
34304 variable5 = variable3 /*nodearraylist1*/;
34305 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34306 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction556___action, LOCATE_parser, 17156); nit_exit(1);}
34307 variable6 = variable2 /*nodearraylist2*/;
34308 variable7 = TAG_Bool(( variable6 /*ppropdefnode2*/==NIT_NULL) || VAL_ISA( variable6 /*ppropdefnode2*/, COLOR_PPropdef, ID_PPropdef)) /*cast PPropdef*/;
34309 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction556___action, LOCATE_parser, 17158); nit_exit(1);}
34310 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34311 if (UNTAG_Bool(variable7)) { /*if*/
34312 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34313 if (UNTAG_Bool(variable7)) { /*if*/
34314 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34315 } else { /*if*/
34316 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34317 }
34318 }
34319 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*ppropdefnode2*/ == NIT_NULL /*null*/) || (( variable6 /*ppropdefnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*ppropdefnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*ppropdefnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34320 if (UNTAG_Bool(variable7)) { /*if*/
34321 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*ppropdefnode2*/) /*AbstractArray::add*/;
34322 }
34323 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34324 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(107)) /*Parser::go_to*/;
34325 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34326 tracehead = trace.prev;
34327 return;
34328 }
34329 void parser___ReduceAction556___init(val_t self, int* init_table) {
34330 struct trace_t trace = {NULL, NULL, 17172, LOCATE_parser___ReduceAction556___init};
34331 trace.prev = tracehead; tracehead = &trace;
34332 trace.file = LOCATE_parser;
34333 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction556].i]) return;
34334 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction556].i] = 1;
34335 tracehead = trace.prev;
34336 return;
34337 }
34338 void parser___ReduceAction557___action(val_t self, val_t param0) {
34339 struct trace_t trace = {NULL, NULL, 17176, LOCATE_parser___ReduceAction557___action};
34340 val_t variable0;
34341 val_t variable1;
34342 val_t variable2;
34343 val_t variable3;
34344 val_t variable4;
34345 val_t variable5;
34346 trace.prev = tracehead; tracehead = &trace;
34347 trace.file = LOCATE_parser;
34348 variable0 = param0;
34349 variable1 = NIT_NULL /*null*/;
34350 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34351 variable2 = variable3;
34352 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34353 variable3 = variable4;
34354 variable4 = variable2 /*nodearraylist1*/;
34355 variable5 = TAG_Bool(( variable4 /*pparamnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pparamnode1*/, COLOR_PParam, ID_PParam)) /*cast PParam*/;
34356 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction557___action, LOCATE_parser, 17182); nit_exit(1);}
34357 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pparamnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pparamnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pparamnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pparamnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pparamnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34358 if (UNTAG_Bool(variable5)) { /*if*/
34359 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pparamnode1*/) /*AbstractArray::add*/;
34360 }
34361 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34362 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(108)) /*Parser::go_to*/;
34363 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34364 tracehead = trace.prev;
34365 return;
34366 }
34367 void parser___ReduceAction557___init(val_t self, int* init_table) {
34368 struct trace_t trace = {NULL, NULL, 17189, LOCATE_parser___ReduceAction557___init};
34369 trace.prev = tracehead; tracehead = &trace;
34370 trace.file = LOCATE_parser;
34371 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction557].i]) return;
34372 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction557].i] = 1;
34373 tracehead = trace.prev;
34374 return;
34375 }
34376 void parser___ReduceAction558___action(val_t self, val_t param0) {
34377 struct trace_t trace = {NULL, NULL, 17193, LOCATE_parser___ReduceAction558___action};
34378 val_t variable0;
34379 val_t variable1;
34380 val_t variable2;
34381 val_t variable3;
34382 val_t variable4;
34383 val_t variable5;
34384 val_t variable6;
34385 val_t variable7;
34386 trace.prev = tracehead; tracehead = &trace;
34387 trace.file = LOCATE_parser;
34388 variable0 = param0;
34389 variable1 = NIT_NULL /*null*/;
34390 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34391 variable2 = variable3;
34392 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34393 variable3 = variable4;
34394 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34395 variable4 = variable5;
34396 variable5 = variable3 /*nodearraylist1*/;
34397 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34398 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction558___action, LOCATE_parser, 17200); nit_exit(1);}
34399 variable6 = variable2 /*nodearraylist2*/;
34400 variable7 = TAG_Bool(( variable6 /*pparamnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pparamnode2*/, COLOR_PParam, ID_PParam)) /*cast PParam*/;
34401 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction558___action, LOCATE_parser, 17202); nit_exit(1);}
34402 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34403 if (UNTAG_Bool(variable7)) { /*if*/
34404 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34405 if (UNTAG_Bool(variable7)) { /*if*/
34406 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34407 } else { /*if*/
34408 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34409 }
34410 }
34411 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pparamnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pparamnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pparamnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pparamnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pparamnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pparamnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34412 if (UNTAG_Bool(variable7)) { /*if*/
34413 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pparamnode2*/) /*AbstractArray::add*/;
34414 }
34415 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34416 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(108)) /*Parser::go_to*/;
34417 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34418 tracehead = trace.prev;
34419 return;
34420 }
34421 void parser___ReduceAction558___init(val_t self, int* init_table) {
34422 struct trace_t trace = {NULL, NULL, 17216, LOCATE_parser___ReduceAction558___init};
34423 trace.prev = tracehead; tracehead = &trace;
34424 trace.file = LOCATE_parser;
34425 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction558].i]) return;
34426 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction558].i] = 1;
34427 tracehead = trace.prev;
34428 return;
34429 }
34430 void parser___ReduceAction559___action(val_t self, val_t param0) {
34431 struct trace_t trace = {NULL, NULL, 17220, LOCATE_parser___ReduceAction559___action};
34432 val_t variable0;
34433 val_t variable1;
34434 val_t variable2;
34435 val_t variable3;
34436 val_t variable4;
34437 val_t variable5;
34438 trace.prev = tracehead; tracehead = &trace;
34439 trace.file = LOCATE_parser;
34440 variable0 = param0;
34441 variable1 = NIT_NULL /*null*/;
34442 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34443 variable2 = variable3;
34444 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34445 variable3 = variable4;
34446 variable4 = variable2 /*nodearraylist1*/;
34447 variable5 = TAG_Bool(( variable4 /*ptypenode1*/==NIT_NULL) || VAL_ISA( variable4 /*ptypenode1*/, COLOR_PType, ID_PType)) /*cast PType*/;
34448 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction559___action, LOCATE_parser, 17226); nit_exit(1);}
34449 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*ptypenode1*/ == NIT_NULL /*null*/) || (( variable4 /*ptypenode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*ptypenode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*ptypenode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*ptypenode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34450 if (UNTAG_Bool(variable5)) { /*if*/
34451 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*ptypenode1*/) /*AbstractArray::add*/;
34452 }
34453 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34454 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(109)) /*Parser::go_to*/;
34455 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34456 tracehead = trace.prev;
34457 return;
34458 }
34459 void parser___ReduceAction559___init(val_t self, int* init_table) {
34460 struct trace_t trace = {NULL, NULL, 17233, LOCATE_parser___ReduceAction559___init};
34461 trace.prev = tracehead; tracehead = &trace;
34462 trace.file = LOCATE_parser;
34463 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction559].i]) return;
34464 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction559].i] = 1;
34465 tracehead = trace.prev;
34466 return;
34467 }
34468 void parser___ReduceAction560___action(val_t self, val_t param0) {
34469 struct trace_t trace = {NULL, NULL, 17237, LOCATE_parser___ReduceAction560___action};
34470 val_t variable0;
34471 val_t variable1;
34472 val_t variable2;
34473 val_t variable3;
34474 val_t variable4;
34475 val_t variable5;
34476 val_t variable6;
34477 val_t variable7;
34478 trace.prev = tracehead; tracehead = &trace;
34479 trace.file = LOCATE_parser;
34480 variable0 = param0;
34481 variable1 = NIT_NULL /*null*/;
34482 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34483 variable2 = variable3;
34484 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34485 variable3 = variable4;
34486 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34487 variable4 = variable5;
34488 variable5 = variable3 /*nodearraylist1*/;
34489 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34490 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction560___action, LOCATE_parser, 17244); nit_exit(1);}
34491 variable6 = variable2 /*nodearraylist2*/;
34492 variable7 = TAG_Bool(( variable6 /*ptypenode2*/==NIT_NULL) || VAL_ISA( variable6 /*ptypenode2*/, COLOR_PType, ID_PType)) /*cast PType*/;
34493 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction560___action, LOCATE_parser, 17246); nit_exit(1);}
34494 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34495 if (UNTAG_Bool(variable7)) { /*if*/
34496 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34497 if (UNTAG_Bool(variable7)) { /*if*/
34498 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34499 } else { /*if*/
34500 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34501 }
34502 }
34503 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*ptypenode2*/ == NIT_NULL /*null*/) || (( variable6 /*ptypenode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*ptypenode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*ptypenode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*ptypenode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*ptypenode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34504 if (UNTAG_Bool(variable7)) { /*if*/
34505 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*ptypenode2*/) /*AbstractArray::add*/;
34506 }
34507 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34508 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(109)) /*Parser::go_to*/;
34509 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34510 tracehead = trace.prev;
34511 return;
34512 }
34513 void parser___ReduceAction560___init(val_t self, int* init_table) {
34514 struct trace_t trace = {NULL, NULL, 17260, LOCATE_parser___ReduceAction560___init};
34515 trace.prev = tracehead; tracehead = &trace;
34516 trace.file = LOCATE_parser;
34517 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction560].i]) return;
34518 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction560].i] = 1;
34519 tracehead = trace.prev;
34520 return;
34521 }
34522 void parser___ReduceAction561___action(val_t self, val_t param0) {
34523 struct trace_t trace = {NULL, NULL, 17264, LOCATE_parser___ReduceAction561___action};
34524 val_t variable0;
34525 val_t variable1;
34526 val_t variable2;
34527 val_t variable3;
34528 val_t variable4;
34529 val_t variable5;
34530 trace.prev = tracehead; tracehead = &trace;
34531 trace.file = LOCATE_parser;
34532 variable0 = param0;
34533 variable1 = NIT_NULL /*null*/;
34534 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34535 variable2 = variable3;
34536 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34537 variable3 = variable4;
34538 variable4 = variable2 /*nodearraylist1*/;
34539 variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
34540 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction561___action, LOCATE_parser, 17270); nit_exit(1);}
34541 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34542 if (UNTAG_Bool(variable5)) { /*if*/
34543 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pexprnode1*/) /*AbstractArray::add*/;
34544 }
34545 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34546 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(110)) /*Parser::go_to*/;
34547 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34548 tracehead = trace.prev;
34549 return;
34550 }
34551 void parser___ReduceAction561___init(val_t self, int* init_table) {
34552 struct trace_t trace = {NULL, NULL, 17277, LOCATE_parser___ReduceAction561___init};
34553 trace.prev = tracehead; tracehead = &trace;
34554 trace.file = LOCATE_parser;
34555 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction561].i]) return;
34556 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction561].i] = 1;
34557 tracehead = trace.prev;
34558 return;
34559 }
34560 void parser___ReduceAction562___action(val_t self, val_t param0) {
34561 struct trace_t trace = {NULL, NULL, 17281, LOCATE_parser___ReduceAction562___action};
34562 val_t variable0;
34563 val_t variable1;
34564 val_t variable2;
34565 val_t variable3;
34566 val_t variable4;
34567 val_t variable5;
34568 val_t variable6;
34569 val_t variable7;
34570 trace.prev = tracehead; tracehead = &trace;
34571 trace.file = LOCATE_parser;
34572 variable0 = param0;
34573 variable1 = NIT_NULL /*null*/;
34574 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34575 variable2 = variable3;
34576 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34577 variable3 = variable4;
34578 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34579 variable4 = variable5;
34580 variable5 = variable3 /*nodearraylist1*/;
34581 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34582 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction562___action, LOCATE_parser, 17288); nit_exit(1);}
34583 variable6 = variable2 /*nodearraylist2*/;
34584 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
34585 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction562___action, LOCATE_parser, 17290); nit_exit(1);}
34586 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34587 if (UNTAG_Bool(variable7)) { /*if*/
34588 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34589 if (UNTAG_Bool(variable7)) { /*if*/
34590 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34591 } else { /*if*/
34592 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34593 }
34594 }
34595 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34596 if (UNTAG_Bool(variable7)) { /*if*/
34597 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pexprnode2*/) /*AbstractArray::add*/;
34598 }
34599 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34600 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(110)) /*Parser::go_to*/;
34601 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34602 tracehead = trace.prev;
34603 return;
34604 }
34605 void parser___ReduceAction562___init(val_t self, int* init_table) {
34606 struct trace_t trace = {NULL, NULL, 17304, LOCATE_parser___ReduceAction562___init};
34607 trace.prev = tracehead; tracehead = &trace;
34608 trace.file = LOCATE_parser;
34609 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction562].i]) return;
34610 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction562].i] = 1;
34611 tracehead = trace.prev;
34612 return;
34613 }
34614 void parser___ReduceAction563___action(val_t self, val_t param0) {
34615 struct trace_t trace = {NULL, NULL, 17308, LOCATE_parser___ReduceAction563___action};
34616 val_t variable0;
34617 val_t variable1;
34618 val_t variable2;
34619 val_t variable3;
34620 val_t variable4;
34621 val_t variable5;
34622 trace.prev = tracehead; tracehead = &trace;
34623 trace.file = LOCATE_parser;
34624 variable0 = param0;
34625 variable1 = NIT_NULL /*null*/;
34626 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34627 variable2 = variable3;
34628 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34629 variable3 = variable4;
34630 variable4 = variable2 /*nodearraylist1*/;
34631 variable5 = TAG_Bool(( variable4 /*listnode1*/==NIT_NULL) || VAL_ISA( variable4 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34632 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction563___action, LOCATE_parser, 17314); nit_exit(1);}
34633 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*listnode1*/ == NIT_NULL /*null*/) || (( variable4 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34634 if (UNTAG_Bool(variable5)) { /*if*/
34635 variable5 = ((array___AbstractArray___is_empty_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___Collection___is_empty))( variable3 /*listnode2*/) /*AbstractArray::is_empty*/;
34636 if (UNTAG_Bool(variable5)) { /*if*/
34637 variable3 = variable4 /*listnode1*/ /*listnode2=*/;
34638 } else { /*if*/
34639 ((abstract_collection___IndexedCollection___append_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___IndexedCollection___append))( variable3 /*listnode2*/, variable4 /*listnode1*/) /*IndexedCollection::append*/;
34640 }
34641 }
34642 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34643 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(111)) /*Parser::go_to*/;
34644 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34645 tracehead = trace.prev;
34646 return;
34647 }
34648 void parser___ReduceAction563___init(val_t self, int* init_table) {
34649 struct trace_t trace = {NULL, NULL, 17325, LOCATE_parser___ReduceAction563___init};
34650 trace.prev = tracehead; tracehead = &trace;
34651 trace.file = LOCATE_parser;
34652 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction563].i]) return;
34653 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction563].i] = 1;
34654 tracehead = trace.prev;
34655 return;
34656 }
34657 void parser___ReduceAction564___action(val_t self, val_t param0) {
34658 struct trace_t trace = {NULL, NULL, 17329, LOCATE_parser___ReduceAction564___action};
34659 val_t variable0;
34660 val_t variable1;
34661 val_t variable2;
34662 val_t variable3;
34663 val_t variable4;
34664 val_t variable5;
34665 val_t variable6;
34666 val_t variable7;
34667 trace.prev = tracehead; tracehead = &trace;
34668 trace.file = LOCATE_parser;
34669 variable0 = param0;
34670 variable1 = NIT_NULL /*null*/;
34671 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34672 variable2 = variable3;
34673 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34674 variable3 = variable4;
34675 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34676 variable4 = variable5;
34677 variable5 = variable3 /*nodearraylist1*/;
34678 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34679 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction564___action, LOCATE_parser, 17336); nit_exit(1);}
34680 variable6 = variable2 /*nodearraylist2*/;
34681 variable7 = TAG_Bool(( variable6 /*listnode2*/==NIT_NULL) || VAL_ISA( variable6 /*listnode2*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34682 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction564___action, LOCATE_parser, 17338); nit_exit(1);}
34683 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34684 if (UNTAG_Bool(variable7)) { /*if*/
34685 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34686 if (UNTAG_Bool(variable7)) { /*if*/
34687 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34688 } else { /*if*/
34689 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34690 }
34691 }
34692 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*listnode2*/ == NIT_NULL /*null*/) || (( variable6 /*listnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*listnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*listnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*listnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34693 if (UNTAG_Bool(variable7)) { /*if*/
34694 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34695 if (UNTAG_Bool(variable7)) { /*if*/
34696 variable4 = variable6 /*listnode2*/ /*listnode3=*/;
34697 } else { /*if*/
34698 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable6 /*listnode2*/) /*IndexedCollection::append*/;
34699 }
34700 }
34701 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34702 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(111)) /*Parser::go_to*/;
34703 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34704 tracehead = trace.prev;
34705 return;
34706 }
34707 void parser___ReduceAction564___init(val_t self, int* init_table) {
34708 struct trace_t trace = {NULL, NULL, 17356, LOCATE_parser___ReduceAction564___init};
34709 trace.prev = tracehead; tracehead = &trace;
34710 trace.file = LOCATE_parser;
34711 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction564].i]) return;
34712 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction564].i] = 1;
34713 tracehead = trace.prev;
34714 return;
34715 }
34716 void parser___ReduceAction565___action(val_t self, val_t param0) {
34717 struct trace_t trace = {NULL, NULL, 17360, LOCATE_parser___ReduceAction565___action};
34718 val_t variable0;
34719 val_t variable1;
34720 val_t variable2;
34721 val_t variable3;
34722 val_t variable4;
34723 val_t variable5;
34724 trace.prev = tracehead; tracehead = &trace;
34725 trace.file = LOCATE_parser;
34726 variable0 = param0;
34727 variable1 = NIT_NULL /*null*/;
34728 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34729 variable2 = variable3;
34730 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34731 variable3 = variable4;
34732 variable4 = variable2 /*nodearraylist1*/;
34733 variable5 = TAG_Bool(( variable4 /*pexprnode1*/==NIT_NULL) || VAL_ISA( variable4 /*pexprnode1*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
34734 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction565___action, LOCATE_parser, 17366); nit_exit(1);}
34735 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*pexprnode1*/ == NIT_NULL /*null*/) || (( variable4 /*pexprnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*pexprnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*pexprnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*pexprnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34736 if (UNTAG_Bool(variable5)) { /*if*/
34737 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*pexprnode1*/) /*AbstractArray::add*/;
34738 }
34739 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34740 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(112)) /*Parser::go_to*/;
34741 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34742 tracehead = trace.prev;
34743 return;
34744 }
34745 void parser___ReduceAction565___init(val_t self, int* init_table) {
34746 struct trace_t trace = {NULL, NULL, 17373, LOCATE_parser___ReduceAction565___init};
34747 trace.prev = tracehead; tracehead = &trace;
34748 trace.file = LOCATE_parser;
34749 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction565].i]) return;
34750 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction565].i] = 1;
34751 tracehead = trace.prev;
34752 return;
34753 }
34754 void parser___ReduceAction566___action(val_t self, val_t param0) {
34755 struct trace_t trace = {NULL, NULL, 17377, LOCATE_parser___ReduceAction566___action};
34756 val_t variable0;
34757 val_t variable1;
34758 val_t variable2;
34759 val_t variable3;
34760 val_t variable4;
34761 val_t variable5;
34762 val_t variable6;
34763 val_t variable7;
34764 trace.prev = tracehead; tracehead = &trace;
34765 trace.file = LOCATE_parser;
34766 variable0 = param0;
34767 variable1 = NIT_NULL /*null*/;
34768 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34769 variable2 = variable3;
34770 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34771 variable3 = variable4;
34772 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34773 variable4 = variable5;
34774 variable5 = variable3 /*nodearraylist1*/;
34775 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34776 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction566___action, LOCATE_parser, 17384); nit_exit(1);}
34777 variable6 = variable2 /*nodearraylist2*/;
34778 variable7 = TAG_Bool(( variable6 /*pexprnode2*/==NIT_NULL) || VAL_ISA( variable6 /*pexprnode2*/, COLOR_PExpr, ID_PExpr)) /*cast PExpr*/;
34779 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction566___action, LOCATE_parser, 17386); nit_exit(1);}
34780 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34781 if (UNTAG_Bool(variable7)) { /*if*/
34782 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34783 if (UNTAG_Bool(variable7)) { /*if*/
34784 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34785 } else { /*if*/
34786 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34787 }
34788 }
34789 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*pexprnode2*/ == NIT_NULL /*null*/) || (( variable6 /*pexprnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*pexprnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*pexprnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*pexprnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34790 if (UNTAG_Bool(variable7)) { /*if*/
34791 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*pexprnode2*/) /*AbstractArray::add*/;
34792 }
34793 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34794 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(112)) /*Parser::go_to*/;
34795 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34796 tracehead = trace.prev;
34797 return;
34798 }
34799 void parser___ReduceAction566___init(val_t self, int* init_table) {
34800 struct trace_t trace = {NULL, NULL, 17400, LOCATE_parser___ReduceAction566___init};
34801 trace.prev = tracehead; tracehead = &trace;
34802 trace.file = LOCATE_parser;
34803 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction566].i]) return;
34804 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction566].i] = 1;
34805 tracehead = trace.prev;
34806 return;
34807 }
34808 void parser___ReduceAction567___action(val_t self, val_t param0) {
34809 struct trace_t trace = {NULL, NULL, 17404, LOCATE_parser___ReduceAction567___action};
34810 val_t variable0;
34811 val_t variable1;
34812 val_t variable2;
34813 val_t variable3;
34814 val_t variable4;
34815 val_t variable5;
34816 trace.prev = tracehead; tracehead = &trace;
34817 trace.file = LOCATE_parser;
34818 variable0 = param0;
34819 variable1 = NIT_NULL /*null*/;
34820 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34821 variable2 = variable3;
34822 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34823 variable3 = variable4;
34824 variable4 = variable2 /*nodearraylist1*/;
34825 variable5 = TAG_Bool(( variable4 /*tidnode1*/==NIT_NULL) || VAL_ISA( variable4 /*tidnode1*/, COLOR_TId, ID_TId)) /*cast TId*/;
34826 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction567___action, LOCATE_parser, 17410); nit_exit(1);}
34827 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*tidnode1*/ == NIT_NULL /*null*/) || (( variable4 /*tidnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*tidnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*tidnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*tidnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*tidnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34828 if (UNTAG_Bool(variable5)) { /*if*/
34829 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*tidnode1*/) /*AbstractArray::add*/;
34830 }
34831 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34832 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(113)) /*Parser::go_to*/;
34833 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34834 tracehead = trace.prev;
34835 return;
34836 }
34837 void parser___ReduceAction567___init(val_t self, int* init_table) {
34838 struct trace_t trace = {NULL, NULL, 17417, LOCATE_parser___ReduceAction567___init};
34839 trace.prev = tracehead; tracehead = &trace;
34840 trace.file = LOCATE_parser;
34841 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction567].i]) return;
34842 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction567].i] = 1;
34843 tracehead = trace.prev;
34844 return;
34845 }
34846 void parser___ReduceAction568___action(val_t self, val_t param0) {
34847 struct trace_t trace = {NULL, NULL, 17421, LOCATE_parser___ReduceAction568___action};
34848 val_t variable0;
34849 val_t variable1;
34850 val_t variable2;
34851 val_t variable3;
34852 val_t variable4;
34853 val_t variable5;
34854 val_t variable6;
34855 val_t variable7;
34856 trace.prev = tracehead; tracehead = &trace;
34857 trace.file = LOCATE_parser;
34858 variable0 = param0;
34859 variable1 = NIT_NULL /*null*/;
34860 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34861 variable2 = variable3;
34862 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34863 variable3 = variable4;
34864 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34865 variable4 = variable5;
34866 variable5 = variable3 /*nodearraylist1*/;
34867 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34868 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction568___action, LOCATE_parser, 17428); nit_exit(1);}
34869 variable6 = variable2 /*nodearraylist2*/;
34870 variable7 = TAG_Bool(( variable6 /*tidnode2*/==NIT_NULL) || VAL_ISA( variable6 /*tidnode2*/, COLOR_TId, ID_TId)) /*cast TId*/;
34871 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction568___action, LOCATE_parser, 17430); nit_exit(1);}
34872 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34873 if (UNTAG_Bool(variable7)) { /*if*/
34874 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34875 if (UNTAG_Bool(variable7)) { /*if*/
34876 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34877 } else { /*if*/
34878 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34879 }
34880 }
34881 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*tidnode2*/ == NIT_NULL /*null*/) || (( variable6 /*tidnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*tidnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*tidnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*tidnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*tidnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34882 if (UNTAG_Bool(variable7)) { /*if*/
34883 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*tidnode2*/) /*AbstractArray::add*/;
34884 }
34885 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34886 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(113)) /*Parser::go_to*/;
34887 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34888 tracehead = trace.prev;
34889 return;
34890 }
34891 void parser___ReduceAction568___init(val_t self, int* init_table) {
34892 struct trace_t trace = {NULL, NULL, 17444, LOCATE_parser___ReduceAction568___init};
34893 trace.prev = tracehead; tracehead = &trace;
34894 trace.file = LOCATE_parser;
34895 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction568].i]) return;
34896 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction568].i] = 1;
34897 tracehead = trace.prev;
34898 return;
34899 }
34900 void parser___ReduceAction569___action(val_t self, val_t param0) {
34901 struct trace_t trace = {NULL, NULL, 17448, LOCATE_parser___ReduceAction569___action};
34902 val_t variable0;
34903 val_t variable1;
34904 val_t variable2;
34905 val_t variable3;
34906 val_t variable4;
34907 val_t variable5;
34908 trace.prev = tracehead; tracehead = &trace;
34909 trace.file = LOCATE_parser;
34910 variable0 = param0;
34911 variable1 = NIT_NULL /*null*/;
34912 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34913 variable2 = variable3;
34914 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34915 variable3 = variable4;
34916 variable4 = variable2 /*nodearraylist1*/;
34917 variable5 = TAG_Bool(( variable4 /*tcommentnode1*/==NIT_NULL) || VAL_ISA( variable4 /*tcommentnode1*/, COLOR_TComment, ID_TComment)) /*cast TComment*/;
34918 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction569___action, LOCATE_parser, 17454); nit_exit(1);}
34919 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*tcommentnode1*/ == NIT_NULL /*null*/) || (( variable4 /*tcommentnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*tcommentnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*tcommentnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*tcommentnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*tcommentnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34920 if (UNTAG_Bool(variable5)) { /*if*/
34921 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*tcommentnode1*/) /*AbstractArray::add*/;
34922 }
34923 variable1 = variable3 /*listnode2*/ /*node_list=*/;
34924 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(114)) /*Parser::go_to*/;
34925 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
34926 tracehead = trace.prev;
34927 return;
34928 }
34929 void parser___ReduceAction569___init(val_t self, int* init_table) {
34930 struct trace_t trace = {NULL, NULL, 17461, LOCATE_parser___ReduceAction569___init};
34931 trace.prev = tracehead; tracehead = &trace;
34932 trace.file = LOCATE_parser;
34933 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction569].i]) return;
34934 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction569].i] = 1;
34935 tracehead = trace.prev;
34936 return;
34937 }
34938 void parser___ReduceAction570___action(val_t self, val_t param0) {
34939 struct trace_t trace = {NULL, NULL, 17465, LOCATE_parser___ReduceAction570___action};
34940 val_t variable0;
34941 val_t variable1;
34942 val_t variable2;
34943 val_t variable3;
34944 val_t variable4;
34945 val_t variable5;
34946 val_t variable6;
34947 val_t variable7;
34948 trace.prev = tracehead; tracehead = &trace;
34949 trace.file = LOCATE_parser;
34950 variable0 = param0;
34951 variable1 = NIT_NULL /*null*/;
34952 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34953 variable2 = variable3;
34954 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
34955 variable3 = variable4;
34956 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
34957 variable4 = variable5;
34958 variable5 = variable3 /*nodearraylist1*/;
34959 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
34960 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction570___action, LOCATE_parser, 17472); nit_exit(1);}
34961 variable6 = variable2 /*nodearraylist2*/;
34962 variable7 = TAG_Bool(( variable6 /*tcommentnode2*/==NIT_NULL) || VAL_ISA( variable6 /*tcommentnode2*/, COLOR_TComment, ID_TComment)) /*cast TComment*/;
34963 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction570___action, LOCATE_parser, 17474); nit_exit(1);}
34964 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34965 if (UNTAG_Bool(variable7)) { /*if*/
34966 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
34967 if (UNTAG_Bool(variable7)) { /*if*/
34968 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
34969 } else { /*if*/
34970 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
34971 }
34972 }
34973 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*tcommentnode2*/ == NIT_NULL /*null*/) || (( variable6 /*tcommentnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*tcommentnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*tcommentnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*tcommentnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*tcommentnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
34974 if (UNTAG_Bool(variable7)) { /*if*/
34975 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*tcommentnode2*/) /*AbstractArray::add*/;
34976 }
34977 variable1 = variable4 /*listnode3*/ /*node_list=*/;
34978 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(114)) /*Parser::go_to*/;
34979 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
34980 tracehead = trace.prev;
34981 return;
34982 }
34983 void parser___ReduceAction570___init(val_t self, int* init_table) {
34984 struct trace_t trace = {NULL, NULL, 17488, LOCATE_parser___ReduceAction570___init};
34985 trace.prev = tracehead; tracehead = &trace;
34986 trace.file = LOCATE_parser;
34987 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction570].i]) return;
34988 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction570].i] = 1;
34989 tracehead = trace.prev;
34990 return;
34991 }
34992 void parser___ReduceAction571___action(val_t self, val_t param0) {
34993 struct trace_t trace = {NULL, NULL, 17492, LOCATE_parser___ReduceAction571___action};
34994 val_t variable0;
34995 val_t variable1;
34996 val_t variable2;
34997 val_t variable3;
34998 val_t variable4;
34999 val_t variable5;
35000 trace.prev = tracehead; tracehead = &trace;
35001 trace.file = LOCATE_parser;
35002 variable0 = param0;
35003 variable1 = NIT_NULL /*null*/;
35004 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
35005 variable2 = variable3;
35006 variable4 = NEW_Array_array___Array___init(); /*new Array[Object]*/
35007 variable3 = variable4;
35008 variable4 = variable2 /*nodearraylist1*/;
35009 variable5 = TAG_Bool(( variable4 /*teolnode1*/==NIT_NULL) || VAL_ISA( variable4 /*teolnode1*/, COLOR_TEol, ID_TEol)) /*cast TEol*/;
35010 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction571___action, LOCATE_parser, 17498); nit_exit(1);}
35011 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4 /*teolnode1*/ == NIT_NULL /*null*/) || (( variable4 /*teolnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*teolnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*teolnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*teolnode1*/,COLOR_kernel___Object_____eqeq))( variable4 /*teolnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
35012 if (UNTAG_Bool(variable5)) { /*if*/
35013 ((array___AbstractArray___add_t)CALL( variable3 /*listnode2*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*listnode2*/, variable4 /*teolnode1*/) /*AbstractArray::add*/;
35014 }
35015 variable1 = variable3 /*listnode2*/ /*node_list=*/;
35016 variable5 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(115)) /*Parser::go_to*/;
35017 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable5, variable1 /*node_list*/) /*Parser::push*/;
35018 tracehead = trace.prev;
35019 return;
35020 }
35021 void parser___ReduceAction571___init(val_t self, int* init_table) {
35022 struct trace_t trace = {NULL, NULL, 17505, LOCATE_parser___ReduceAction571___init};
35023 trace.prev = tracehead; tracehead = &trace;
35024 trace.file = LOCATE_parser;
35025 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction571].i]) return;
35026 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction571].i] = 1;
35027 tracehead = trace.prev;
35028 return;
35029 }
35030 void parser___ReduceAction572___action(val_t self, val_t param0) {
35031 struct trace_t trace = {NULL, NULL, 17509, LOCATE_parser___ReduceAction572___action};
35032 val_t variable0;
35033 val_t variable1;
35034 val_t variable2;
35035 val_t variable3;
35036 val_t variable4;
35037 val_t variable5;
35038 val_t variable6;
35039 val_t variable7;
35040 trace.prev = tracehead; tracehead = &trace;
35041 trace.file = LOCATE_parser;
35042 variable0 = param0;
35043 variable1 = NIT_NULL /*null*/;
35044 variable3 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
35045 variable2 = variable3;
35046 variable4 = ((parser___Parser___pop_t)CALL( variable0 /*p*/,COLOR_parser___Parser___pop))( variable0 /*p*/) /*Parser::pop*/;
35047 variable3 = variable4;
35048 variable5 = NEW_Array_array___Array___init(); /*new Array[Object]*/
35049 variable4 = variable5;
35050 variable5 = variable3 /*nodearraylist1*/;
35051 variable6 = TAG_Bool(( variable5 /*listnode1*/==NIT_NULL) || VAL_ISA( variable5 /*listnode1*/, COLOR_Array, ID_Array)) /*cast Array[Object]*/;
35052 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction572___action, LOCATE_parser, 17516); nit_exit(1);}
35053 variable6 = variable2 /*nodearraylist2*/;
35054 variable7 = TAG_Bool(( variable6 /*teolnode2*/==NIT_NULL) || VAL_ISA( variable6 /*teolnode2*/, COLOR_TEol, ID_TEol)) /*cast TEol*/;
35055 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_parser___ReduceAction572___action, LOCATE_parser, 17518); nit_exit(1);}
35056 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable5 /*listnode1*/ == NIT_NULL /*null*/) || (( variable5 /*listnode1*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*listnode1*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*listnode1*/,COLOR_kernel___Object_____eqeq))( variable5 /*listnode1*/, NIT_NULL /*null*/) /*Object::==*/)))))));
35057 if (UNTAG_Bool(variable7)) { /*if*/
35058 variable7 = ((array___AbstractArray___is_empty_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___Collection___is_empty))( variable4 /*listnode3*/) /*AbstractArray::is_empty*/;
35059 if (UNTAG_Bool(variable7)) { /*if*/
35060 variable4 = variable5 /*listnode1*/ /*listnode3=*/;
35061 } else { /*if*/
35062 ((abstract_collection___IndexedCollection___append_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___IndexedCollection___append))( variable4 /*listnode3*/, variable5 /*listnode1*/) /*IndexedCollection::append*/;
35063 }
35064 }
35065 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable6 /*teolnode2*/ == NIT_NULL /*null*/) || (( variable6 /*teolnode2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*teolnode2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*teolnode2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*teolnode2*/,COLOR_kernel___Object_____eqeq))( variable6 /*teolnode2*/, NIT_NULL /*null*/) /*Object::==*/)))))));
35066 if (UNTAG_Bool(variable7)) { /*if*/
35067 ((array___AbstractArray___add_t)CALL( variable4 /*listnode3*/,COLOR_abstract_collection___SimpleCollection___add))( variable4 /*listnode3*/, variable6 /*teolnode2*/) /*AbstractArray::add*/;
35068 }
35069 variable1 = variable4 /*listnode3*/ /*node_list=*/;
35070 variable7 = ((parser___Parser___go_to_t)CALL( variable0 /*p*/,COLOR_parser___Parser___go_to))( variable0 /*p*/, TAG_Int(115)) /*Parser::go_to*/;
35071 ((parser___Parser___push_t)CALL( variable0 /*p*/,COLOR_parser___Parser___push))( variable0 /*p*/, variable7, variable1 /*node_list*/) /*Parser::push*/;
35072 tracehead = trace.prev;
35073 return;
35074 }
35075 void parser___ReduceAction572___init(val_t self, int* init_table) {
35076 struct trace_t trace = {NULL, NULL, 17532, LOCATE_parser___ReduceAction572___init};
35077 trace.prev = tracehead; tracehead = &trace;
35078 trace.file = LOCATE_parser;
35079 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction572].i]) return;
35080 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_ReduceAction572].i] = 1;
35081 tracehead = trace.prev;
35082 return;
35083 }