1 #include "parser.sep.0.h"
2 /* method parser#ReduceAction745#action for (self: ReduceAction745, Parser) */
3 void parser__ReduceAction745__action(val
* self
, val
* p0
) {
4 val
* var_p
/* var p: Parser */;
6 val
* var_node_list
/* var node_list: nullable Object */;
7 val
* var1
/* : nullable Object */;
8 val
* var_nodearraylist15
/* var nodearraylist15: nullable Object */;
9 val
* var2
/* : nullable Object */;
10 val
* var_nodearraylist14
/* var nodearraylist14: nullable Object */;
11 val
* var3
/* : nullable Object */;
12 val
* var_nodearraylist13
/* var nodearraylist13: nullable Object */;
13 val
* var4
/* : nullable Object */;
14 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
15 val
* var5
/* : nullable Object */;
16 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
17 val
* var6
/* : nullable Object */;
18 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
19 val
* var7
/* : nullable Object */;
20 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
21 val
* var8
/* : nullable Object */;
22 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
23 val
* var9
/* : nullable Object */;
24 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
25 val
* var10
/* : nullable Object */;
26 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
27 val
* var11
/* : nullable Object */;
28 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
29 val
* var12
/* : nullable Object */;
30 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
31 val
* var13
/* : nullable Object */;
32 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
33 val
* var14
/* : nullable Object */;
34 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
35 val
* var15
/* : nullable Object */;
36 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
37 val
* var16
/* : Array[Object] */;
38 val
* var_listnode4
/* var listnode4: Array[Object] */;
39 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
40 short int var17
/* : Bool */;
43 val
* var_listnode3
/* var listnode3: nullable Object */;
44 short int var18
/* : Bool */;
47 val
* var21
/* : Array[Object] */;
48 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
49 short int var22
/* : Bool */;
52 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
53 short int var25
/* : Bool */;
56 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
57 short int var28
/* : Bool */;
60 val
* var_plabelnode8
/* var plabelnode8: nullable Object */;
61 short int var31
/* : Bool */;
64 val
* var34
/* : AForExpr */;
65 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
66 long var35
/* : Int */;
67 long var36
/* : Int */;
71 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
72 var_nodearraylist15
= var1
;
73 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
74 var_nodearraylist14
= var2
;
75 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
76 var_nodearraylist13
= var3
;
77 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
78 var_nodearraylist12
= var4
;
79 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
80 var_nodearraylist11
= var5
;
81 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
82 var_nodearraylist10
= var6
;
83 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
84 var_nodearraylist9
= var7
;
85 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
86 var_nodearraylist8
= var8
;
87 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
88 var_nodearraylist7
= var9
;
89 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
90 var_nodearraylist6
= var10
;
91 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
92 var_nodearraylist5
= var11
;
93 var12
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
94 var_nodearraylist4
= var12
;
95 var13
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
96 var_nodearraylist3
= var13
;
97 var14
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
98 var_nodearraylist2
= var14
;
99 var15
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
100 var_nodearraylist1
= var15
;
101 var16
= NEW_array__Array(&type_array__Arraykernel__Object
);
102 ((void (*)(val
*))(var16
->class->vft
[COLOR_array__Array__init
]))(var16
) /* init on <var16:Array[Object]>*/;
103 CHECK_NEW_array__Array(var16
);
104 var_listnode4
= var16
;
105 var_tkwfornode2
= var_nodearraylist1
;
106 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
107 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
108 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
109 if(var_tkwfornode2
== NULL
) {
112 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
115 var17
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
119 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27655);
122 var_listnode3
= var_nodearraylist5
;
123 /* <var_listnode3:nullable Object> isa Array[Object] */
124 cltype19
= type_array__Arraykernel__Object
.color
;
125 idtype20
= type_array__Arraykernel__Object
.id
;
126 if(var_listnode3
== NULL
) {
129 if(cltype19
>= var_listnode3
->type
->table_size
) {
132 var18
= var_listnode3
->type
->type_table
[cltype19
] == idtype20
;
136 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27657);
139 var21
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction745>*/;
140 var_listnode4
= var21
;
141 var_pexprnode5
= var_nodearraylist11
;
142 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
143 cltype23
= type_nullable_parser_nodes__AExpr
.color
;
144 idtype24
= type_nullable_parser_nodes__AExpr
.id
;
145 if(var_pexprnode5
== NULL
) {
148 if(cltype23
>= var_pexprnode5
->type
->table_size
) {
151 var22
= var_pexprnode5
->type
->type_table
[cltype23
] == idtype24
;
155 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27660);
158 var_tkwdonode6
= var_nodearraylist13
;
159 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
160 cltype26
= type_nullable_parser_nodes__TKwdo
.color
;
161 idtype27
= type_nullable_parser_nodes__TKwdo
.id
;
162 if(var_tkwdonode6
== NULL
) {
165 if(cltype26
>= var_tkwdonode6
->type
->table_size
) {
168 var25
= var_tkwdonode6
->type
->type_table
[cltype26
] == idtype27
;
172 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27662);
175 var_pexprnode7
= var_nodearraylist14
;
176 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
177 cltype29
= type_nullable_parser_nodes__AExpr
.color
;
178 idtype30
= type_nullable_parser_nodes__AExpr
.id
;
179 if(var_pexprnode7
== NULL
) {
182 if(cltype29
>= var_pexprnode7
->type
->table_size
) {
185 var28
= var_pexprnode7
->type
->type_table
[cltype29
] == idtype30
;
189 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27664);
192 var_plabelnode8
= var_nodearraylist15
;
193 /* <var_plabelnode8:nullable Object> isa nullable ALabel */
194 cltype32
= type_nullable_parser_nodes__ALabel
.color
;
195 idtype33
= type_nullable_parser_nodes__ALabel
.id
;
196 if(var_plabelnode8
== NULL
) {
199 if(cltype32
>= var_plabelnode8
->type
->table_size
) {
202 var31
= var_plabelnode8
->type
->type_table
[cltype32
] == idtype33
;
206 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27666);
209 var34
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
210 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var34
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var34
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var_plabelnode8
) /* init_aforexpr on <var34:AForExpr>*/;
211 CHECK_NEW_parser_nodes__AForExpr(var34
);
212 var_pexprnode1
= var34
;
213 var_node_list
= var_pexprnode1
;
214 var35
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction745> */
215 var36
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var35
) /* go_to on <var_p:Parser>*/;
216 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var36
, var_node_list
) /* push on <var_p:Parser>*/;
219 /* method parser#ReduceAction745#action for (self: Object, Parser) */
220 void VIRTUAL_parser__ReduceAction745__action(val
* self
, val
* p0
) {
221 parser__ReduceAction745__action(self
, p0
);
224 /* method parser#ReduceAction746#action for (self: ReduceAction746, Parser) */
225 void parser__ReduceAction746__action(val
* self
, val
* p0
) {
226 val
* var_p
/* var p: Parser */;
227 val
* var
/* : null */;
228 val
* var_node_list
/* var node_list: nullable Object */;
229 val
* var1
/* : nullable Object */;
230 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
231 val
* var2
/* : nullable Object */;
232 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
233 val
* var3
/* : nullable Object */;
234 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
235 val
* var4
/* : nullable Object */;
236 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
237 val
* var5
/* : nullable Object */;
238 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
239 val
* var6
/* : nullable Object */;
240 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
241 val
* var7
/* : nullable Object */;
242 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
243 val
* var8
/* : nullable Object */;
244 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
245 val
* var9
/* : nullable Object */;
246 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
247 val
* var10
/* : nullable Object */;
248 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
249 val
* var11
/* : nullable Object */;
250 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
251 val
* var12
/* : Array[Object] */;
252 val
* var_listnode4
/* var listnode4: Array[Object] */;
253 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
254 short int var13
/* : Bool */;
257 val
* var_listnode3
/* var listnode3: nullable Object */;
258 short int var14
/* : Bool */;
261 val
* var17
/* : Array[Object] */;
262 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
263 short int var18
/* : Bool */;
266 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
267 short int var21
/* : Bool */;
270 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
271 short int var24
/* : Bool */;
274 val
* var_plabelnode8
/* var plabelnode8: nullable Object */;
275 short int var27
/* : Bool */;
278 val
* var30
/* : AForExpr */;
279 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
280 long var31
/* : Int */;
281 long var32
/* : Int */;
285 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
286 var_nodearraylist11
= var1
;
287 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
288 var_nodearraylist10
= var2
;
289 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
290 var_nodearraylist9
= var3
;
291 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
292 var_nodearraylist8
= var4
;
293 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
294 var_nodearraylist7
= var5
;
295 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
296 var_nodearraylist6
= var6
;
297 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
298 var_nodearraylist5
= var7
;
299 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
300 var_nodearraylist4
= var8
;
301 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
302 var_nodearraylist3
= var9
;
303 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
304 var_nodearraylist2
= var10
;
305 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
306 var_nodearraylist1
= var11
;
307 var12
= NEW_array__Array(&type_array__Arraykernel__Object
);
308 ((void (*)(val
*))(var12
->class->vft
[COLOR_array__Array__init
]))(var12
) /* init on <var12:Array[Object]>*/;
309 CHECK_NEW_array__Array(var12
);
310 var_listnode4
= var12
;
311 var_tkwfornode2
= var_nodearraylist1
;
312 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
313 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
314 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
315 if(var_tkwfornode2
== NULL
) {
318 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
321 var13
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
325 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27697);
328 var_listnode3
= var_nodearraylist3
;
329 /* <var_listnode3:nullable Object> isa Array[Object] */
330 cltype15
= type_array__Arraykernel__Object
.color
;
331 idtype16
= type_array__Arraykernel__Object
.id
;
332 if(var_listnode3
== NULL
) {
335 if(cltype15
>= var_listnode3
->type
->table_size
) {
338 var14
= var_listnode3
->type
->type_table
[cltype15
] == idtype16
;
342 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27699);
345 var17
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction746>*/;
346 var_listnode4
= var17
;
347 var_pexprnode5
= var_nodearraylist7
;
348 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
349 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
350 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
351 if(var_pexprnode5
== NULL
) {
354 if(cltype19
>= var_pexprnode5
->type
->table_size
) {
357 var18
= var_pexprnode5
->type
->type_table
[cltype19
] == idtype20
;
361 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27702);
364 var_tkwdonode6
= var_nodearraylist9
;
365 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
366 cltype22
= type_nullable_parser_nodes__TKwdo
.color
;
367 idtype23
= type_nullable_parser_nodes__TKwdo
.id
;
368 if(var_tkwdonode6
== NULL
) {
371 if(cltype22
>= var_tkwdonode6
->type
->table_size
) {
374 var21
= var_tkwdonode6
->type
->type_table
[cltype22
] == idtype23
;
378 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27704);
381 var_pexprnode7
= var_nodearraylist10
;
382 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
383 cltype25
= type_nullable_parser_nodes__AExpr
.color
;
384 idtype26
= type_nullable_parser_nodes__AExpr
.id
;
385 if(var_pexprnode7
== NULL
) {
388 if(cltype25
>= var_pexprnode7
->type
->table_size
) {
391 var24
= var_pexprnode7
->type
->type_table
[cltype25
] == idtype26
;
395 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27706);
398 var_plabelnode8
= var_nodearraylist11
;
399 /* <var_plabelnode8:nullable Object> isa nullable ALabel */
400 cltype28
= type_nullable_parser_nodes__ALabel
.color
;
401 idtype29
= type_nullable_parser_nodes__ALabel
.id
;
402 if(var_plabelnode8
== NULL
) {
405 if(cltype28
>= var_plabelnode8
->type
->table_size
) {
408 var27
= var_plabelnode8
->type
->type_table
[cltype28
] == idtype29
;
412 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27708);
415 var30
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
416 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var30
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var30
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var_plabelnode8
) /* init_aforexpr on <var30:AForExpr>*/;
417 CHECK_NEW_parser_nodes__AForExpr(var30
);
418 var_pexprnode1
= var30
;
419 var_node_list
= var_pexprnode1
;
420 var31
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction746> */
421 var32
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var31
) /* go_to on <var_p:Parser>*/;
422 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var32
, var_node_list
) /* push on <var_p:Parser>*/;
425 /* method parser#ReduceAction746#action for (self: Object, Parser) */
426 void VIRTUAL_parser__ReduceAction746__action(val
* self
, val
* p0
) {
427 parser__ReduceAction746__action(self
, p0
);
430 /* method parser#ReduceAction747#action for (self: ReduceAction747, Parser) */
431 void parser__ReduceAction747__action(val
* self
, val
* p0
) {
432 val
* var_p
/* var p: Parser */;
433 val
* var
/* : null */;
434 val
* var_node_list
/* var node_list: nullable Object */;
435 val
* var1
/* : nullable Object */;
436 val
* var_nodearraylist14
/* var nodearraylist14: nullable Object */;
437 val
* var2
/* : nullable Object */;
438 val
* var_nodearraylist13
/* var nodearraylist13: nullable Object */;
439 val
* var3
/* : nullable Object */;
440 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
441 val
* var4
/* : nullable Object */;
442 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
443 val
* var5
/* : nullable Object */;
444 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
445 val
* var6
/* : nullable Object */;
446 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
447 val
* var7
/* : nullable Object */;
448 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
449 val
* var8
/* : nullable Object */;
450 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
451 val
* var9
/* : nullable Object */;
452 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
453 val
* var10
/* : nullable Object */;
454 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
455 val
* var11
/* : nullable Object */;
456 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
457 val
* var12
/* : nullable Object */;
458 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
459 val
* var13
/* : nullable Object */;
460 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
461 val
* var14
/* : nullable Object */;
462 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
463 val
* var15
/* : Array[Object] */;
464 val
* var_listnode4
/* var listnode4: Array[Object] */;
465 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
466 short int var16
/* : Bool */;
469 val
* var_listnode3
/* var listnode3: nullable Object */;
470 short int var17
/* : Bool */;
473 val
* var20
/* : Array[Object] */;
474 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
475 short int var21
/* : Bool */;
478 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
479 short int var24
/* : Bool */;
482 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
483 short int var27
/* : Bool */;
486 val
* var30
/* : AForExpr */;
487 val
* var31
/* : null */;
488 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
489 long var32
/* : Int */;
490 long var33
/* : Int */;
494 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
495 var_nodearraylist14
= var1
;
496 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
497 var_nodearraylist13
= var2
;
498 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
499 var_nodearraylist12
= var3
;
500 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
501 var_nodearraylist11
= var4
;
502 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
503 var_nodearraylist10
= var5
;
504 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
505 var_nodearraylist9
= var6
;
506 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
507 var_nodearraylist8
= var7
;
508 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
509 var_nodearraylist7
= var8
;
510 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
511 var_nodearraylist6
= var9
;
512 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
513 var_nodearraylist5
= var10
;
514 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
515 var_nodearraylist4
= var11
;
516 var12
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
517 var_nodearraylist3
= var12
;
518 var13
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
519 var_nodearraylist2
= var13
;
520 var14
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
521 var_nodearraylist1
= var14
;
522 var15
= NEW_array__Array(&type_array__Arraykernel__Object
);
523 ((void (*)(val
*))(var15
->class->vft
[COLOR_array__Array__init
]))(var15
) /* init on <var15:Array[Object]>*/;
524 CHECK_NEW_array__Array(var15
);
525 var_listnode4
= var15
;
526 var_tkwfornode2
= var_nodearraylist1
;
527 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
528 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
529 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
530 if(var_tkwfornode2
== NULL
) {
533 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
536 var16
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
540 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27742);
543 var_listnode3
= var_nodearraylist5
;
544 /* <var_listnode3:nullable Object> isa Array[Object] */
545 cltype18
= type_array__Arraykernel__Object
.color
;
546 idtype19
= type_array__Arraykernel__Object
.id
;
547 if(var_listnode3
== NULL
) {
550 if(cltype18
>= var_listnode3
->type
->table_size
) {
553 var17
= var_listnode3
->type
->type_table
[cltype18
] == idtype19
;
557 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27744);
560 var20
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction747>*/;
561 var_listnode4
= var20
;
562 var_pexprnode5
= var_nodearraylist11
;
563 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
564 cltype22
= type_nullable_parser_nodes__AExpr
.color
;
565 idtype23
= type_nullable_parser_nodes__AExpr
.id
;
566 if(var_pexprnode5
== NULL
) {
569 if(cltype22
>= var_pexprnode5
->type
->table_size
) {
572 var21
= var_pexprnode5
->type
->type_table
[cltype22
] == idtype23
;
576 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27747);
579 var_tkwdonode6
= var_nodearraylist13
;
580 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
581 cltype25
= type_nullable_parser_nodes__TKwdo
.color
;
582 idtype26
= type_nullable_parser_nodes__TKwdo
.id
;
583 if(var_tkwdonode6
== NULL
) {
586 if(cltype25
>= var_tkwdonode6
->type
->table_size
) {
589 var24
= var_tkwdonode6
->type
->type_table
[cltype25
] == idtype26
;
593 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27749);
596 var_pexprnode7
= var_nodearraylist14
;
597 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
598 cltype28
= type_nullable_parser_nodes__AExpr
.color
;
599 idtype29
= type_nullable_parser_nodes__AExpr
.id
;
600 if(var_pexprnode7
== NULL
) {
603 if(cltype28
>= var_pexprnode7
->type
->table_size
) {
606 var27
= var_pexprnode7
->type
->type_table
[cltype28
] == idtype29
;
610 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27751);
613 var30
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
615 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var30
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var30
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var31
) /* init_aforexpr on <var30:AForExpr>*/;
616 CHECK_NEW_parser_nodes__AForExpr(var30
);
617 var_pexprnode1
= var30
;
618 var_node_list
= var_pexprnode1
;
619 var32
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction747> */
620 var33
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var32
) /* go_to on <var_p:Parser>*/;
621 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var33
, var_node_list
) /* push on <var_p:Parser>*/;
624 /* method parser#ReduceAction747#action for (self: Object, Parser) */
625 void VIRTUAL_parser__ReduceAction747__action(val
* self
, val
* p0
) {
626 parser__ReduceAction747__action(self
, p0
);
629 /* method parser#ReduceAction748#action for (self: ReduceAction748, Parser) */
630 void parser__ReduceAction748__action(val
* self
, val
* p0
) {
631 val
* var_p
/* var p: Parser */;
632 val
* var
/* : null */;
633 val
* var_node_list
/* var node_list: nullable Object */;
634 val
* var1
/* : nullable Object */;
635 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
636 val
* var2
/* : nullable Object */;
637 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
638 val
* var3
/* : nullable Object */;
639 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
640 val
* var4
/* : nullable Object */;
641 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
642 val
* var5
/* : nullable Object */;
643 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
644 val
* var6
/* : nullable Object */;
645 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
646 val
* var7
/* : nullable Object */;
647 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
648 val
* var8
/* : nullable Object */;
649 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
650 val
* var9
/* : nullable Object */;
651 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
652 val
* var10
/* : nullable Object */;
653 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
654 val
* var11
/* : Array[Object] */;
655 val
* var_listnode4
/* var listnode4: Array[Object] */;
656 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
657 short int var12
/* : Bool */;
660 val
* var_listnode3
/* var listnode3: nullable Object */;
661 short int var13
/* : Bool */;
664 val
* var16
/* : Array[Object] */;
665 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
666 short int var17
/* : Bool */;
669 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
670 short int var20
/* : Bool */;
673 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
674 short int var23
/* : Bool */;
677 val
* var26
/* : AForExpr */;
678 val
* var27
/* : null */;
679 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
680 long var28
/* : Int */;
681 long var29
/* : Int */;
685 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
686 var_nodearraylist10
= var1
;
687 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
688 var_nodearraylist9
= var2
;
689 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
690 var_nodearraylist8
= var3
;
691 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
692 var_nodearraylist7
= var4
;
693 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
694 var_nodearraylist6
= var5
;
695 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
696 var_nodearraylist5
= var6
;
697 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
698 var_nodearraylist4
= var7
;
699 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
700 var_nodearraylist3
= var8
;
701 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
702 var_nodearraylist2
= var9
;
703 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
704 var_nodearraylist1
= var10
;
705 var11
= NEW_array__Array(&type_array__Arraykernel__Object
);
706 ((void (*)(val
*))(var11
->class->vft
[COLOR_array__Array__init
]))(var11
) /* init on <var11:Array[Object]>*/;
707 CHECK_NEW_array__Array(var11
);
708 var_listnode4
= var11
;
709 var_tkwfornode2
= var_nodearraylist1
;
710 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
711 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
712 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
713 if(var_tkwfornode2
== NULL
) {
716 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
719 var12
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
723 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27781);
726 var_listnode3
= var_nodearraylist3
;
727 /* <var_listnode3:nullable Object> isa Array[Object] */
728 cltype14
= type_array__Arraykernel__Object
.color
;
729 idtype15
= type_array__Arraykernel__Object
.id
;
730 if(var_listnode3
== NULL
) {
733 if(cltype14
>= var_listnode3
->type
->table_size
) {
736 var13
= var_listnode3
->type
->type_table
[cltype14
] == idtype15
;
740 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27783);
743 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction748>*/;
744 var_listnode4
= var16
;
745 var_pexprnode5
= var_nodearraylist7
;
746 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
747 cltype18
= type_nullable_parser_nodes__AExpr
.color
;
748 idtype19
= type_nullable_parser_nodes__AExpr
.id
;
749 if(var_pexprnode5
== NULL
) {
752 if(cltype18
>= var_pexprnode5
->type
->table_size
) {
755 var17
= var_pexprnode5
->type
->type_table
[cltype18
] == idtype19
;
759 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27786);
762 var_tkwdonode6
= var_nodearraylist9
;
763 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
764 cltype21
= type_nullable_parser_nodes__TKwdo
.color
;
765 idtype22
= type_nullable_parser_nodes__TKwdo
.id
;
766 if(var_tkwdonode6
== NULL
) {
769 if(cltype21
>= var_tkwdonode6
->type
->table_size
) {
772 var20
= var_tkwdonode6
->type
->type_table
[cltype21
] == idtype22
;
776 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27788);
779 var_pexprnode7
= var_nodearraylist10
;
780 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
781 cltype24
= type_nullable_parser_nodes__AExpr
.color
;
782 idtype25
= type_nullable_parser_nodes__AExpr
.id
;
783 if(var_pexprnode7
== NULL
) {
786 if(cltype24
>= var_pexprnode7
->type
->table_size
) {
789 var23
= var_pexprnode7
->type
->type_table
[cltype24
] == idtype25
;
793 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27790);
796 var26
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
798 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var26
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var26
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var27
) /* init_aforexpr on <var26:AForExpr>*/;
799 CHECK_NEW_parser_nodes__AForExpr(var26
);
800 var_pexprnode1
= var26
;
801 var_node_list
= var_pexprnode1
;
802 var28
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction748> */
803 var29
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var28
) /* go_to on <var_p:Parser>*/;
804 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var29
, var_node_list
) /* push on <var_p:Parser>*/;
807 /* method parser#ReduceAction748#action for (self: Object, Parser) */
808 void VIRTUAL_parser__ReduceAction748__action(val
* self
, val
* p0
) {
809 parser__ReduceAction748__action(self
, p0
);
812 /* method parser#ReduceAction749#action for (self: ReduceAction749, Parser) */
813 void parser__ReduceAction749__action(val
* self
, val
* p0
) {
814 val
* var_p
/* var p: Parser */;
815 val
* var
/* : null */;
816 val
* var_node_list
/* var node_list: nullable Object */;
817 val
* var1
/* : nullable Object */;
818 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
819 val
* var2
/* : nullable Object */;
820 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
821 val
* var3
/* : nullable Object */;
822 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
823 val
* var4
/* : nullable Object */;
824 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
825 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
826 short int var5
/* : Bool */;
829 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
830 short int var6
/* : Bool */;
833 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
834 short int var9
/* : Bool */;
837 val
* var12
/* : AAssertExpr */;
838 val
* var13
/* : null */;
839 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
840 long var14
/* : Int */;
841 long var15
/* : Int */;
845 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
846 var_nodearraylist4
= var1
;
847 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
848 var_nodearraylist3
= var2
;
849 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
850 var_nodearraylist2
= var3
;
851 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
852 var_nodearraylist1
= var4
;
853 var_tkwassertnode2
= var_nodearraylist1
;
854 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
855 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
856 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
857 if(var_tkwassertnode2
== NULL
) {
860 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
863 var5
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
867 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27813);
870 var_pexprnode4
= var_nodearraylist2
;
871 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
872 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
873 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
874 if(var_pexprnode4
== NULL
) {
877 if(cltype7
>= var_pexprnode4
->type
->table_size
) {
880 var6
= var_pexprnode4
->type
->type_table
[cltype7
] == idtype8
;
884 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27815);
887 var_pexprnode5
= var_nodearraylist4
;
888 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
889 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
890 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
891 if(var_pexprnode5
== NULL
) {
894 if(cltype10
>= var_pexprnode5
->type
->table_size
) {
897 var9
= var_pexprnode5
->type
->type_table
[cltype10
] == idtype11
;
901 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27817);
904 var12
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
906 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var12
, var_tkwassertnode2
, var13
, var_pexprnode4
, var_pexprnode5
) /* init_aassertexpr on <var12:AAssertExpr>*/;
907 CHECK_NEW_parser_nodes__AAssertExpr(var12
);
908 var_pexprnode1
= var12
;
909 var_node_list
= var_pexprnode1
;
910 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction749> */
911 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
912 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
915 /* method parser#ReduceAction749#action for (self: Object, Parser) */
916 void VIRTUAL_parser__ReduceAction749__action(val
* self
, val
* p0
) {
917 parser__ReduceAction749__action(self
, p0
);
920 /* method parser#ReduceAction750#action for (self: ReduceAction750, Parser) */
921 void parser__ReduceAction750__action(val
* self
, val
* p0
) {
922 val
* var_p
/* var p: Parser */;
923 val
* var
/* : null */;
924 val
* var_node_list
/* var node_list: nullable Object */;
925 val
* var1
/* : nullable Object */;
926 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
927 val
* var2
/* : nullable Object */;
928 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
929 val
* var3
/* : nullable Object */;
930 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
931 val
* var4
/* : nullable Object */;
932 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
933 val
* var5
/* : nullable Object */;
934 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
935 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
936 short int var6
/* : Bool */;
939 val
* var_tidnode3
/* var tidnode3: nullable Object */;
940 short int var7
/* : Bool */;
943 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
944 short int var10
/* : Bool */;
947 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
948 short int var13
/* : Bool */;
951 val
* var16
/* : AAssertExpr */;
952 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
953 long var17
/* : Int */;
954 long var18
/* : Int */;
958 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
959 var_nodearraylist5
= var1
;
960 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
961 var_nodearraylist4
= var2
;
962 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
963 var_nodearraylist3
= var3
;
964 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
965 var_nodearraylist2
= var4
;
966 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
967 var_nodearraylist1
= var5
;
968 var_tkwassertnode2
= var_nodearraylist1
;
969 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
970 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
971 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
972 if(var_tkwassertnode2
== NULL
) {
975 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
978 var6
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
982 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27839);
985 var_tidnode3
= var_nodearraylist2
;
986 /* <var_tidnode3:nullable Object> isa nullable TId */
987 cltype8
= type_nullable_parser_nodes__TId
.color
;
988 idtype9
= type_nullable_parser_nodes__TId
.id
;
989 if(var_tidnode3
== NULL
) {
992 if(cltype8
>= var_tidnode3
->type
->table_size
) {
995 var7
= var_tidnode3
->type
->type_table
[cltype8
] == idtype9
;
999 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27841);
1002 var_pexprnode4
= var_nodearraylist3
;
1003 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
1004 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
1005 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
1006 if(var_pexprnode4
== NULL
) {
1009 if(cltype11
>= var_pexprnode4
->type
->table_size
) {
1012 var10
= var_pexprnode4
->type
->type_table
[cltype11
] == idtype12
;
1016 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27843);
1019 var_pexprnode5
= var_nodearraylist5
;
1020 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
1021 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
1022 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
1023 if(var_pexprnode5
== NULL
) {
1026 if(cltype14
>= var_pexprnode5
->type
->table_size
) {
1029 var13
= var_pexprnode5
->type
->type_table
[cltype14
] == idtype15
;
1033 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27845);
1036 var16
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
1037 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var16
, var_tkwassertnode2
, var_tidnode3
, var_pexprnode4
, var_pexprnode5
) /* init_aassertexpr on <var16:AAssertExpr>*/;
1038 CHECK_NEW_parser_nodes__AAssertExpr(var16
);
1039 var_pexprnode1
= var16
;
1040 var_node_list
= var_pexprnode1
;
1041 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction750> */
1042 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
1043 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
1046 /* method parser#ReduceAction750#action for (self: Object, Parser) */
1047 void VIRTUAL_parser__ReduceAction750__action(val
* self
, val
* p0
) {
1048 parser__ReduceAction750__action(self
, p0
);
1051 /* method parser#ReduceAction751#action for (self: ReduceAction751, Parser) */
1052 void parser__ReduceAction751__action(val
* self
, val
* p0
) {
1053 val
* var_p
/* var p: Parser */;
1054 val
* var
/* : null */;
1055 val
* var_node_list
/* var node_list: nullable Object */;
1056 val
* var1
/* : nullable Object */;
1057 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1058 val
* var2
/* : nullable Object */;
1059 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1060 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
1061 short int var3
/* : Bool */;
1064 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
1065 short int var4
/* : Bool */;
1068 val
* var7
/* : AAssertExpr */;
1069 val
* var8
/* : null */;
1070 val
* var9
/* : null */;
1071 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
1072 long var10
/* : Int */;
1073 long var11
/* : Int */;
1076 var_node_list
= var
;
1077 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1078 var_nodearraylist2
= var1
;
1079 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1080 var_nodearraylist1
= var2
;
1081 var_tkwassertnode2
= var_nodearraylist1
;
1082 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
1083 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
1084 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
1085 if(var_tkwassertnode2
== NULL
) {
1088 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
1091 var3
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
1095 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27864);
1098 var_pexprnode4
= var_nodearraylist2
;
1099 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
1100 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
1101 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
1102 if(var_pexprnode4
== NULL
) {
1105 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
1108 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
1112 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27866);
1115 var7
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
1118 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var7
, var_tkwassertnode2
, var8
, var_pexprnode4
, var9
) /* init_aassertexpr on <var7:AAssertExpr>*/;
1119 CHECK_NEW_parser_nodes__AAssertExpr(var7
);
1120 var_pexprnode1
= var7
;
1121 var_node_list
= var_pexprnode1
;
1122 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction751> */
1123 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
1124 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
1127 /* method parser#ReduceAction751#action for (self: Object, Parser) */
1128 void VIRTUAL_parser__ReduceAction751__action(val
* self
, val
* p0
) {
1129 parser__ReduceAction751__action(self
, p0
);
1132 /* method parser#ReduceAction752#action for (self: ReduceAction752, Parser) */
1133 void parser__ReduceAction752__action(val
* self
, val
* p0
) {
1134 val
* var_p
/* var p: Parser */;
1135 val
* var
/* : null */;
1136 val
* var_node_list
/* var node_list: nullable Object */;
1137 val
* var1
/* : nullable Object */;
1138 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1139 val
* var2
/* : nullable Object */;
1140 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1141 val
* var3
/* : nullable Object */;
1142 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1143 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
1144 short int var4
/* : Bool */;
1147 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1148 short int var5
/* : Bool */;
1151 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
1152 short int var8
/* : Bool */;
1155 val
* var11
/* : AAssertExpr */;
1156 val
* var12
/* : null */;
1157 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
1158 long var13
/* : Int */;
1159 long var14
/* : Int */;
1162 var_node_list
= var
;
1163 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1164 var_nodearraylist3
= var1
;
1165 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1166 var_nodearraylist2
= var2
;
1167 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1168 var_nodearraylist1
= var3
;
1169 var_tkwassertnode2
= var_nodearraylist1
;
1170 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
1171 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
1172 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
1173 if(var_tkwassertnode2
== NULL
) {
1176 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
1179 var4
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
1183 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27886);
1186 var_tidnode3
= var_nodearraylist2
;
1187 /* <var_tidnode3:nullable Object> isa nullable TId */
1188 cltype6
= type_nullable_parser_nodes__TId
.color
;
1189 idtype7
= type_nullable_parser_nodes__TId
.id
;
1190 if(var_tidnode3
== NULL
) {
1193 if(cltype6
>= var_tidnode3
->type
->table_size
) {
1196 var5
= var_tidnode3
->type
->type_table
[cltype6
] == idtype7
;
1200 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27888);
1203 var_pexprnode4
= var_nodearraylist3
;
1204 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
1205 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
1206 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
1207 if(var_pexprnode4
== NULL
) {
1210 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
1213 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
1217 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27890);
1220 var11
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
1222 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var11
, var_tkwassertnode2
, var_tidnode3
, var_pexprnode4
, var12
) /* init_aassertexpr on <var11:AAssertExpr>*/;
1223 CHECK_NEW_parser_nodes__AAssertExpr(var11
);
1224 var_pexprnode1
= var11
;
1225 var_node_list
= var_pexprnode1
;
1226 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction752> */
1227 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
1228 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
1231 /* method parser#ReduceAction752#action for (self: Object, Parser) */
1232 void VIRTUAL_parser__ReduceAction752__action(val
* self
, val
* p0
) {
1233 parser__ReduceAction752__action(self
, p0
);
1236 /* method parser#ReduceAction753#action for (self: ReduceAction753, Parser) */
1237 void parser__ReduceAction753__action(val
* self
, val
* p0
) {
1238 val
* var_p
/* var p: Parser */;
1239 val
* var
/* : null */;
1240 val
* var_node_list
/* var node_list: nullable Object */;
1241 val
* var1
/* : nullable Object */;
1242 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1243 val
* var2
/* : nullable Object */;
1244 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1245 val
* var_tidnode1
/* var tidnode1: nullable Object */;
1246 long var3
/* : Int */;
1247 long var4
/* : Int */;
1250 var_node_list
= var
;
1251 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1252 var_nodearraylist2
= var1
;
1253 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1254 var_nodearraylist1
= var2
;
1255 var_tidnode1
= var_nodearraylist1
;
1256 var_node_list
= var_tidnode1
;
1257 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction753> */
1258 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
1259 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
1262 /* method parser#ReduceAction753#action for (self: Object, Parser) */
1263 void VIRTUAL_parser__ReduceAction753__action(val
* self
, val
* p0
) {
1264 parser__ReduceAction753__action(self
, p0
);
1267 /* method parser#ReduceAction763#action for (self: ReduceAction763, Parser) */
1268 void parser__ReduceAction763__action(val
* self
, val
* p0
) {
1269 val
* var_p
/* var p: Parser */;
1270 val
* var
/* : null */;
1271 val
* var_node_list
/* var node_list: nullable Object */;
1272 val
* var1
/* : nullable Object */;
1273 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1274 val
* var2
/* : nullable Object */;
1275 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1276 val
* var3
/* : nullable Object */;
1277 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1278 val
* var4
/* : Array[Object] */;
1279 val
* var_listnode5
/* var listnode5: Array[Object] */;
1280 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1281 short int var5
/* : Bool */;
1284 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
1285 short int var6
/* : Bool */;
1288 val
* var_listnode4
/* var listnode4: nullable Object */;
1289 short int var9
/* : Bool */;
1292 val
* var12
/* : Array[Object] */;
1293 val
* var13
/* : ABraExpr */;
1294 val
* var_pexprnode1
/* var pexprnode1: nullable ABraExpr */;
1295 long var14
/* : Int */;
1296 long var15
/* : Int */;
1299 var_node_list
= var
;
1300 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1301 var_nodearraylist3
= var1
;
1302 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1303 var_nodearraylist2
= var2
;
1304 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1305 var_nodearraylist1
= var3
;
1306 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
1307 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
1308 CHECK_NEW_array__Array(var4
);
1309 var_listnode5
= var4
;
1310 var_pexprnode2
= var_nodearraylist1
;
1311 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1312 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1313 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1314 if(var_pexprnode2
== NULL
) {
1317 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1320 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1324 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27923);
1327 var_pexprsnode3
= var_nodearraylist2
;
1328 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
1329 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
1330 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
1331 if(var_pexprsnode3
== NULL
) {
1334 if(cltype7
>= var_pexprsnode3
->type
->table_size
) {
1337 var6
= var_pexprsnode3
->type
->type_table
[cltype7
] == idtype8
;
1341 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27925);
1344 var_listnode4
= var_nodearraylist3
;
1345 /* <var_listnode4:nullable Object> isa Array[Object] */
1346 cltype10
= type_array__Arraykernel__Object
.color
;
1347 idtype11
= type_array__Arraykernel__Object
.id
;
1348 if(var_listnode4
== NULL
) {
1351 if(cltype10
>= var_listnode4
->type
->table_size
) {
1354 var9
= var_listnode4
->type
->type_table
[cltype10
] == idtype11
;
1358 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27927);
1361 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction763>*/;
1362 var_listnode5
= var12
;
1363 var13
= NEW_parser_nodes__ABraExpr(&type_parser_nodes__ABraExpr
);
1364 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__ABraExpr__init_abraexpr
]))(var13
, var_pexprnode2
, var_pexprsnode3
, var_listnode5
) /* init_abraexpr on <var13:ABraExpr>*/;
1365 CHECK_NEW_parser_nodes__ABraExpr(var13
);
1366 var_pexprnode1
= var13
;
1367 var_node_list
= var_pexprnode1
;
1368 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction763> */
1369 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
1370 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
1373 /* method parser#ReduceAction763#action for (self: Object, Parser) */
1374 void VIRTUAL_parser__ReduceAction763__action(val
* self
, val
* p0
) {
1375 parser__ReduceAction763__action(self
, p0
);
1378 /* method parser#ReduceAction765#action for (self: ReduceAction765, Parser) */
1379 void parser__ReduceAction765__action(val
* self
, val
* p0
) {
1380 val
* var_p
/* var p: Parser */;
1381 val
* var
/* : null */;
1382 val
* var_node_list
/* var node_list: nullable Object */;
1383 val
* var1
/* : nullable Object */;
1384 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
1385 val
* var2
/* : nullable Object */;
1386 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
1387 val
* var3
/* : nullable Object */;
1388 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
1389 val
* var4
/* : nullable Object */;
1390 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
1391 val
* var5
/* : nullable Object */;
1392 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1393 val
* var6
/* : nullable Object */;
1394 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1395 val
* var7
/* : nullable Object */;
1396 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1397 val
* var8
/* : nullable Object */;
1398 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1399 val
* var9
/* : nullable Object */;
1400 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1401 val
* var10
/* : nullable Object */;
1402 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1403 val
* var11
/* : nullable Object */;
1404 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1405 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
1406 short int var12
/* : Bool */;
1409 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1410 short int var13
/* : Bool */;
1413 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
1414 short int var16
/* : Bool */;
1417 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
1418 short int var19
/* : Bool */;
1421 val
* var_tkwelsenode6
/* var tkwelsenode6: nullable Object */;
1422 short int var22
/* : Bool */;
1425 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
1426 short int var25
/* : Bool */;
1429 val
* var28
/* : AIfexprExpr */;
1430 val
* var_pexprnode1
/* var pexprnode1: nullable AIfexprExpr */;
1431 long var29
/* : Int */;
1432 long var30
/* : Int */;
1435 var_node_list
= var
;
1436 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1437 var_nodearraylist11
= var1
;
1438 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1439 var_nodearraylist10
= var2
;
1440 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1441 var_nodearraylist9
= var3
;
1442 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1443 var_nodearraylist8
= var4
;
1444 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1445 var_nodearraylist7
= var5
;
1446 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1447 var_nodearraylist6
= var6
;
1448 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1449 var_nodearraylist5
= var7
;
1450 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1451 var_nodearraylist4
= var8
;
1452 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1453 var_nodearraylist3
= var9
;
1454 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1455 var_nodearraylist2
= var10
;
1456 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1457 var_nodearraylist1
= var11
;
1458 var_tkwifnode2
= var_nodearraylist1
;
1459 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
1460 cltype
= type_nullable_parser_nodes__TKwif
.color
;
1461 idtype
= type_nullable_parser_nodes__TKwif
.id
;
1462 if(var_tkwifnode2
== NULL
) {
1465 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
1468 var12
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
1472 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27955);
1475 var_pexprnode3
= var_nodearraylist3
;
1476 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1477 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
1478 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
1479 if(var_pexprnode3
== NULL
) {
1482 if(cltype14
>= var_pexprnode3
->type
->table_size
) {
1485 var13
= var_pexprnode3
->type
->type_table
[cltype14
] == idtype15
;
1489 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27957);
1492 var_tkwthennode4
= var_nodearraylist5
;
1493 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
1494 cltype17
= type_nullable_parser_nodes__TKwthen
.color
;
1495 idtype18
= type_nullable_parser_nodes__TKwthen
.id
;
1496 if(var_tkwthennode4
== NULL
) {
1499 if(cltype17
>= var_tkwthennode4
->type
->table_size
) {
1502 var16
= var_tkwthennode4
->type
->type_table
[cltype17
] == idtype18
;
1506 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27959);
1509 var_pexprnode5
= var_nodearraylist7
;
1510 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
1511 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
1512 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
1513 if(var_pexprnode5
== NULL
) {
1516 if(cltype20
>= var_pexprnode5
->type
->table_size
) {
1519 var19
= var_pexprnode5
->type
->type_table
[cltype20
] == idtype21
;
1523 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27961);
1526 var_tkwelsenode6
= var_nodearraylist9
;
1527 /* <var_tkwelsenode6:nullable Object> isa nullable TKwelse */
1528 cltype23
= type_nullable_parser_nodes__TKwelse
.color
;
1529 idtype24
= type_nullable_parser_nodes__TKwelse
.id
;
1530 if(var_tkwelsenode6
== NULL
) {
1533 if(cltype23
>= var_tkwelsenode6
->type
->table_size
) {
1536 var22
= var_tkwelsenode6
->type
->type_table
[cltype23
] == idtype24
;
1540 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27963);
1543 var_pexprnode7
= var_nodearraylist11
;
1544 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
1545 cltype26
= type_nullable_parser_nodes__AExpr
.color
;
1546 idtype27
= type_nullable_parser_nodes__AExpr
.id
;
1547 if(var_pexprnode7
== NULL
) {
1550 if(cltype26
>= var_pexprnode7
->type
->table_size
) {
1553 var25
= var_pexprnode7
->type
->type_table
[cltype26
] == idtype27
;
1557 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27965);
1560 var28
= NEW_parser_nodes__AIfexprExpr(&type_parser_nodes__AIfexprExpr
);
1561 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var28
->class->vft
[COLOR_parser_prod__AIfexprExpr__init_aifexprexpr
]))(var28
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, var_pexprnode5
, var_tkwelsenode6
, var_pexprnode7
) /* init_aifexprexpr on <var28:AIfexprExpr>*/;
1562 CHECK_NEW_parser_nodes__AIfexprExpr(var28
);
1563 var_pexprnode1
= var28
;
1564 var_node_list
= var_pexprnode1
;
1565 var29
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction765> */
1566 var30
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var29
) /* go_to on <var_p:Parser>*/;
1567 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var30
, var_node_list
) /* push on <var_p:Parser>*/;
1570 /* method parser#ReduceAction765#action for (self: Object, Parser) */
1571 void VIRTUAL_parser__ReduceAction765__action(val
* self
, val
* p0
) {
1572 parser__ReduceAction765__action(self
, p0
);
1575 /* method parser#ReduceAction767#action for (self: ReduceAction767, Parser) */
1576 void parser__ReduceAction767__action(val
* self
, val
* p0
) {
1577 val
* var_p
/* var p: Parser */;
1578 val
* var
/* : null */;
1579 val
* var_node_list
/* var node_list: nullable Object */;
1580 val
* var1
/* : nullable Object */;
1581 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1582 val
* var2
/* : nullable Object */;
1583 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1584 val
* var3
/* : nullable Object */;
1585 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1586 val
* var4
/* : nullable Object */;
1587 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1588 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1589 short int var5
/* : Bool */;
1592 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1593 short int var6
/* : Bool */;
1596 val
* var9
/* : AOrExpr */;
1597 val
* var_pexprnode1
/* var pexprnode1: nullable AOrExpr */;
1598 long var10
/* : Int */;
1599 long var11
/* : Int */;
1602 var_node_list
= var
;
1603 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1604 var_nodearraylist4
= var1
;
1605 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1606 var_nodearraylist3
= var2
;
1607 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1608 var_nodearraylist2
= var3
;
1609 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1610 var_nodearraylist1
= var4
;
1611 var_pexprnode2
= var_nodearraylist1
;
1612 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1613 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1614 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1615 if(var_pexprnode2
== NULL
) {
1618 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1621 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1625 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27988);
1628 var_pexprnode3
= var_nodearraylist4
;
1629 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1630 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
1631 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
1632 if(var_pexprnode3
== NULL
) {
1635 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
1638 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
1642 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27990);
1645 var9
= NEW_parser_nodes__AOrExpr(&type_parser_nodes__AOrExpr
);
1646 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AOrExpr__init_aorexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aorexpr on <var9:AOrExpr>*/;
1647 CHECK_NEW_parser_nodes__AOrExpr(var9
);
1648 var_pexprnode1
= var9
;
1649 var_node_list
= var_pexprnode1
;
1650 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction767> */
1651 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
1652 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
1655 /* method parser#ReduceAction767#action for (self: Object, Parser) */
1656 void VIRTUAL_parser__ReduceAction767__action(val
* self
, val
* p0
) {
1657 parser__ReduceAction767__action(self
, p0
);
1660 /* method parser#ReduceAction768#action for (self: ReduceAction768, Parser) */
1661 void parser__ReduceAction768__action(val
* self
, val
* p0
) {
1662 val
* var_p
/* var p: Parser */;
1663 val
* var
/* : null */;
1664 val
* var_node_list
/* var node_list: nullable Object */;
1665 val
* var1
/* : nullable Object */;
1666 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1667 val
* var2
/* : nullable Object */;
1668 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1669 val
* var3
/* : nullable Object */;
1670 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1671 val
* var4
/* : nullable Object */;
1672 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1673 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1674 short int var5
/* : Bool */;
1677 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1678 short int var6
/* : Bool */;
1681 val
* var9
/* : AAndExpr */;
1682 val
* var_pexprnode1
/* var pexprnode1: nullable AAndExpr */;
1683 long var10
/* : Int */;
1684 long var11
/* : Int */;
1687 var_node_list
= var
;
1688 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1689 var_nodearraylist4
= var1
;
1690 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1691 var_nodearraylist3
= var2
;
1692 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1693 var_nodearraylist2
= var3
;
1694 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1695 var_nodearraylist1
= var4
;
1696 var_pexprnode2
= var_nodearraylist1
;
1697 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1698 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1699 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1700 if(var_pexprnode2
== NULL
) {
1703 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1706 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1710 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28009);
1713 var_pexprnode3
= var_nodearraylist4
;
1714 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1715 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
1716 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
1717 if(var_pexprnode3
== NULL
) {
1720 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
1723 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
1727 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28011);
1730 var9
= NEW_parser_nodes__AAndExpr(&type_parser_nodes__AAndExpr
);
1731 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AAndExpr__init_aandexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aandexpr on <var9:AAndExpr>*/;
1732 CHECK_NEW_parser_nodes__AAndExpr(var9
);
1733 var_pexprnode1
= var9
;
1734 var_node_list
= var_pexprnode1
;
1735 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction768> */
1736 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
1737 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
1740 /* method parser#ReduceAction768#action for (self: Object, Parser) */
1741 void VIRTUAL_parser__ReduceAction768__action(val
* self
, val
* p0
) {
1742 parser__ReduceAction768__action(self
, p0
);
1745 /* method parser#ReduceAction769#action for (self: ReduceAction769, Parser) */
1746 void parser__ReduceAction769__action(val
* self
, val
* p0
) {
1747 val
* var_p
/* var p: Parser */;
1748 val
* var
/* : null */;
1749 val
* var_node_list
/* var node_list: nullable Object */;
1750 val
* var1
/* : nullable Object */;
1751 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1752 val
* var2
/* : nullable Object */;
1753 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1754 val
* var3
/* : nullable Object */;
1755 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1756 val
* var4
/* : nullable Object */;
1757 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1758 val
* var5
/* : nullable Object */;
1759 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1760 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1761 short int var6
/* : Bool */;
1764 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1765 short int var7
/* : Bool */;
1768 val
* var10
/* : AOrElseExpr */;
1769 val
* var_pexprnode1
/* var pexprnode1: nullable AOrElseExpr */;
1770 long var11
/* : Int */;
1771 long var12
/* : Int */;
1774 var_node_list
= var
;
1775 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1776 var_nodearraylist5
= var1
;
1777 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1778 var_nodearraylist4
= var2
;
1779 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1780 var_nodearraylist3
= var3
;
1781 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1782 var_nodearraylist2
= var4
;
1783 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1784 var_nodearraylist1
= var5
;
1785 var_pexprnode2
= var_nodearraylist1
;
1786 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1787 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1788 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1789 if(var_pexprnode2
== NULL
) {
1792 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1795 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1799 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28031);
1802 var_pexprnode3
= var_nodearraylist5
;
1803 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1804 cltype8
= type_nullable_parser_nodes__AExpr
.color
;
1805 idtype9
= type_nullable_parser_nodes__AExpr
.id
;
1806 if(var_pexprnode3
== NULL
) {
1809 if(cltype8
>= var_pexprnode3
->type
->table_size
) {
1812 var7
= var_pexprnode3
->type
->type_table
[cltype8
] == idtype9
;
1816 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28033);
1819 var10
= NEW_parser_nodes__AOrElseExpr(&type_parser_nodes__AOrElseExpr
);
1820 ((void (*)(val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AOrElseExpr__init_aorelseexpr
]))(var10
, var_pexprnode2
, var_pexprnode3
) /* init_aorelseexpr on <var10:AOrElseExpr>*/;
1821 CHECK_NEW_parser_nodes__AOrElseExpr(var10
);
1822 var_pexprnode1
= var10
;
1823 var_node_list
= var_pexprnode1
;
1824 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction769> */
1825 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
1826 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
1829 /* method parser#ReduceAction769#action for (self: Object, Parser) */
1830 void VIRTUAL_parser__ReduceAction769__action(val
* self
, val
* p0
) {
1831 parser__ReduceAction769__action(self
, p0
);
1834 /* method parser#ReduceAction770#action for (self: ReduceAction770, Parser) */
1835 void parser__ReduceAction770__action(val
* self
, val
* p0
) {
1836 val
* var_p
/* var p: Parser */;
1837 val
* var
/* : null */;
1838 val
* var_node_list
/* var node_list: nullable Object */;
1839 val
* var1
/* : nullable Object */;
1840 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1841 val
* var2
/* : nullable Object */;
1842 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1843 val
* var3
/* : nullable Object */;
1844 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1845 val
* var4
/* : nullable Object */;
1846 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1847 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1848 short int var5
/* : Bool */;
1851 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1852 short int var6
/* : Bool */;
1855 val
* var9
/* : AImpliesExpr */;
1856 val
* var_pexprnode1
/* var pexprnode1: nullable AImpliesExpr */;
1857 long var10
/* : Int */;
1858 long var11
/* : Int */;
1861 var_node_list
= var
;
1862 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1863 var_nodearraylist4
= var1
;
1864 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1865 var_nodearraylist3
= var2
;
1866 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1867 var_nodearraylist2
= var3
;
1868 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1869 var_nodearraylist1
= var4
;
1870 var_pexprnode2
= var_nodearraylist1
;
1871 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1872 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1873 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1874 if(var_pexprnode2
== NULL
) {
1877 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1880 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1884 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28052);
1887 var_pexprnode3
= var_nodearraylist4
;
1888 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1889 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
1890 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
1891 if(var_pexprnode3
== NULL
) {
1894 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
1897 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
1901 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28054);
1904 var9
= NEW_parser_nodes__AImpliesExpr(&type_parser_nodes__AImpliesExpr
);
1905 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AImpliesExpr__init_aimpliesexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aimpliesexpr on <var9:AImpliesExpr>*/;
1906 CHECK_NEW_parser_nodes__AImpliesExpr(var9
);
1907 var_pexprnode1
= var9
;
1908 var_node_list
= var_pexprnode1
;
1909 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction770> */
1910 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
1911 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
1914 /* method parser#ReduceAction770#action for (self: Object, Parser) */
1915 void VIRTUAL_parser__ReduceAction770__action(val
* self
, val
* p0
) {
1916 parser__ReduceAction770__action(self
, p0
);
1919 /* method parser#ReduceAction772#action for (self: ReduceAction772, Parser) */
1920 void parser__ReduceAction772__action(val
* self
, val
* p0
) {
1921 val
* var_p
/* var p: Parser */;
1922 val
* var
/* : null */;
1923 val
* var_node_list
/* var node_list: nullable Object */;
1924 val
* var1
/* : nullable Object */;
1925 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1926 val
* var2
/* : nullable Object */;
1927 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1928 val
* var3
/* : nullable Object */;
1929 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1930 val
* var_tkwnotnode2
/* var tkwnotnode2: nullable Object */;
1931 short int var4
/* : Bool */;
1934 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1935 short int var5
/* : Bool */;
1938 val
* var8
/* : ANotExpr */;
1939 val
* var_pexprnode1
/* var pexprnode1: nullable ANotExpr */;
1940 long var9
/* : Int */;
1941 long var10
/* : Int */;
1944 var_node_list
= var
;
1945 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1946 var_nodearraylist3
= var1
;
1947 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1948 var_nodearraylist2
= var2
;
1949 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1950 var_nodearraylist1
= var3
;
1951 var_tkwnotnode2
= var_nodearraylist1
;
1952 /* <var_tkwnotnode2:nullable Object> isa nullable TKwnot */
1953 cltype
= type_nullable_parser_nodes__TKwnot
.color
;
1954 idtype
= type_nullable_parser_nodes__TKwnot
.id
;
1955 if(var_tkwnotnode2
== NULL
) {
1958 if(cltype
>= var_tkwnotnode2
->type
->table_size
) {
1961 var4
= var_tkwnotnode2
->type
->type_table
[cltype
] == idtype
;
1965 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28072);
1968 var_pexprnode3
= var_nodearraylist3
;
1969 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1970 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
1971 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
1972 if(var_pexprnode3
== NULL
) {
1975 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
1978 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
1982 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28074);
1985 var8
= NEW_parser_nodes__ANotExpr(&type_parser_nodes__ANotExpr
);
1986 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__ANotExpr__init_anotexpr
]))(var8
, var_tkwnotnode2
, var_pexprnode3
) /* init_anotexpr on <var8:ANotExpr>*/;
1987 CHECK_NEW_parser_nodes__ANotExpr(var8
);
1988 var_pexprnode1
= var8
;
1989 var_node_list
= var_pexprnode1
;
1990 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction772> */
1991 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
1992 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
1995 /* method parser#ReduceAction772#action for (self: Object, Parser) */
1996 void VIRTUAL_parser__ReduceAction772__action(val
* self
, val
* p0
) {
1997 parser__ReduceAction772__action(self
, p0
);
2000 /* method parser#ReduceAction774#action for (self: ReduceAction774, Parser) */
2001 void parser__ReduceAction774__action(val
* self
, val
* p0
) {
2002 val
* var_p
/* var p: Parser */;
2003 val
* var
/* : null */;
2004 val
* var_node_list
/* var node_list: nullable Object */;
2005 val
* var1
/* : nullable Object */;
2006 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2007 val
* var2
/* : nullable Object */;
2008 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2009 val
* var3
/* : nullable Object */;
2010 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2011 val
* var4
/* : nullable Object */;
2012 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2013 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2014 short int var5
/* : Bool */;
2017 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2018 short int var6
/* : Bool */;
2021 val
* var9
/* : AEqExpr */;
2022 val
* var_pexprnode1
/* var pexprnode1: nullable AEqExpr */;
2023 long var10
/* : Int */;
2024 long var11
/* : Int */;
2027 var_node_list
= var
;
2028 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2029 var_nodearraylist4
= var1
;
2030 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2031 var_nodearraylist3
= var2
;
2032 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2033 var_nodearraylist2
= var3
;
2034 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2035 var_nodearraylist1
= var4
;
2036 var_pexprnode2
= var_nodearraylist1
;
2037 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2038 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2039 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2040 if(var_pexprnode2
== NULL
) {
2043 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2046 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2050 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28093);
2053 var_pexprnode3
= var_nodearraylist4
;
2054 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2055 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2056 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2057 if(var_pexprnode3
== NULL
) {
2060 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2063 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2067 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28095);
2070 var9
= NEW_parser_nodes__AEqExpr(&type_parser_nodes__AEqExpr
);
2071 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AEqExpr__init_aeqexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aeqexpr on <var9:AEqExpr>*/;
2072 CHECK_NEW_parser_nodes__AEqExpr(var9
);
2073 var_pexprnode1
= var9
;
2074 var_node_list
= var_pexprnode1
;
2075 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction774> */
2076 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2077 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2080 /* method parser#ReduceAction774#action for (self: Object, Parser) */
2081 void VIRTUAL_parser__ReduceAction774__action(val
* self
, val
* p0
) {
2082 parser__ReduceAction774__action(self
, p0
);
2085 /* method parser#ReduceAction775#action for (self: ReduceAction775, Parser) */
2086 void parser__ReduceAction775__action(val
* self
, val
* p0
) {
2087 val
* var_p
/* var p: Parser */;
2088 val
* var
/* : null */;
2089 val
* var_node_list
/* var node_list: nullable Object */;
2090 val
* var1
/* : nullable Object */;
2091 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2092 val
* var2
/* : nullable Object */;
2093 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2094 val
* var3
/* : nullable Object */;
2095 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2096 val
* var4
/* : nullable Object */;
2097 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2098 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2099 short int var5
/* : Bool */;
2102 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2103 short int var6
/* : Bool */;
2106 val
* var9
/* : AEeExpr */;
2107 val
* var_pexprnode1
/* var pexprnode1: nullable AEeExpr */;
2108 long var10
/* : Int */;
2109 long var11
/* : Int */;
2112 var_node_list
= var
;
2113 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2114 var_nodearraylist4
= var1
;
2115 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2116 var_nodearraylist3
= var2
;
2117 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2118 var_nodearraylist2
= var3
;
2119 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2120 var_nodearraylist1
= var4
;
2121 var_pexprnode2
= var_nodearraylist1
;
2122 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2123 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2124 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2125 if(var_pexprnode2
== NULL
) {
2128 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2131 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2135 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28114);
2138 var_pexprnode3
= var_nodearraylist4
;
2139 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2140 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2141 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2142 if(var_pexprnode3
== NULL
) {
2145 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2148 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2152 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28116);
2155 var9
= NEW_parser_nodes__AEeExpr(&type_parser_nodes__AEeExpr
);
2156 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AEeExpr__init_aeeexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aeeexpr on <var9:AEeExpr>*/;
2157 CHECK_NEW_parser_nodes__AEeExpr(var9
);
2158 var_pexprnode1
= var9
;
2159 var_node_list
= var_pexprnode1
;
2160 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction775> */
2161 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2162 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2165 /* method parser#ReduceAction775#action for (self: Object, Parser) */
2166 void VIRTUAL_parser__ReduceAction775__action(val
* self
, val
* p0
) {
2167 parser__ReduceAction775__action(self
, p0
);
2170 /* method parser#ReduceAction776#action for (self: ReduceAction776, Parser) */
2171 void parser__ReduceAction776__action(val
* self
, val
* p0
) {
2172 val
* var_p
/* var p: Parser */;
2173 val
* var
/* : null */;
2174 val
* var_node_list
/* var node_list: nullable Object */;
2175 val
* var1
/* : nullable Object */;
2176 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2177 val
* var2
/* : nullable Object */;
2178 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2179 val
* var3
/* : nullable Object */;
2180 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2181 val
* var4
/* : nullable Object */;
2182 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2183 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2184 short int var5
/* : Bool */;
2187 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2188 short int var6
/* : Bool */;
2191 val
* var9
/* : ANeExpr */;
2192 val
* var_pexprnode1
/* var pexprnode1: nullable ANeExpr */;
2193 long var10
/* : Int */;
2194 long var11
/* : Int */;
2197 var_node_list
= var
;
2198 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2199 var_nodearraylist4
= var1
;
2200 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2201 var_nodearraylist3
= var2
;
2202 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2203 var_nodearraylist2
= var3
;
2204 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2205 var_nodearraylist1
= var4
;
2206 var_pexprnode2
= var_nodearraylist1
;
2207 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2208 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2209 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2210 if(var_pexprnode2
== NULL
) {
2213 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2216 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2220 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28135);
2223 var_pexprnode3
= var_nodearraylist4
;
2224 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2225 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2226 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2227 if(var_pexprnode3
== NULL
) {
2230 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2233 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2237 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28137);
2240 var9
= NEW_parser_nodes__ANeExpr(&type_parser_nodes__ANeExpr
);
2241 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ANeExpr__init_aneexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aneexpr on <var9:ANeExpr>*/;
2242 CHECK_NEW_parser_nodes__ANeExpr(var9
);
2243 var_pexprnode1
= var9
;
2244 var_node_list
= var_pexprnode1
;
2245 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction776> */
2246 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2247 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2250 /* method parser#ReduceAction776#action for (self: Object, Parser) */
2251 void VIRTUAL_parser__ReduceAction776__action(val
* self
, val
* p0
) {
2252 parser__ReduceAction776__action(self
, p0
);
2255 /* method parser#ReduceAction777#action for (self: ReduceAction777, Parser) */
2256 void parser__ReduceAction777__action(val
* self
, val
* p0
) {
2257 val
* var_p
/* var p: Parser */;
2258 val
* var
/* : null */;
2259 val
* var_node_list
/* var node_list: nullable Object */;
2260 val
* var1
/* : nullable Object */;
2261 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2262 val
* var2
/* : nullable Object */;
2263 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2264 val
* var3
/* : nullable Object */;
2265 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2266 val
* var4
/* : nullable Object */;
2267 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2268 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2269 short int var5
/* : Bool */;
2272 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2273 short int var6
/* : Bool */;
2276 val
* var9
/* : ALtExpr */;
2277 val
* var_pexprnode1
/* var pexprnode1: nullable ALtExpr */;
2278 long var10
/* : Int */;
2279 long var11
/* : Int */;
2282 var_node_list
= var
;
2283 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2284 var_nodearraylist4
= var1
;
2285 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2286 var_nodearraylist3
= var2
;
2287 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2288 var_nodearraylist2
= var3
;
2289 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2290 var_nodearraylist1
= var4
;
2291 var_pexprnode2
= var_nodearraylist1
;
2292 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2293 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2294 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2295 if(var_pexprnode2
== NULL
) {
2298 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2301 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2305 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28156);
2308 var_pexprnode3
= var_nodearraylist4
;
2309 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2310 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2311 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2312 if(var_pexprnode3
== NULL
) {
2315 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2318 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2322 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28158);
2325 var9
= NEW_parser_nodes__ALtExpr(&type_parser_nodes__ALtExpr
);
2326 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ALtExpr__init_altexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_altexpr on <var9:ALtExpr>*/;
2327 CHECK_NEW_parser_nodes__ALtExpr(var9
);
2328 var_pexprnode1
= var9
;
2329 var_node_list
= var_pexprnode1
;
2330 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction777> */
2331 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2332 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2335 /* method parser#ReduceAction777#action for (self: Object, Parser) */
2336 void VIRTUAL_parser__ReduceAction777__action(val
* self
, val
* p0
) {
2337 parser__ReduceAction777__action(self
, p0
);
2340 /* method parser#ReduceAction778#action for (self: ReduceAction778, Parser) */
2341 void parser__ReduceAction778__action(val
* self
, val
* p0
) {
2342 val
* var_p
/* var p: Parser */;
2343 val
* var
/* : null */;
2344 val
* var_node_list
/* var node_list: nullable Object */;
2345 val
* var1
/* : nullable Object */;
2346 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2347 val
* var2
/* : nullable Object */;
2348 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2349 val
* var3
/* : nullable Object */;
2350 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2351 val
* var4
/* : nullable Object */;
2352 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2353 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2354 short int var5
/* : Bool */;
2357 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2358 short int var6
/* : Bool */;
2361 val
* var9
/* : ALeExpr */;
2362 val
* var_pexprnode1
/* var pexprnode1: nullable ALeExpr */;
2363 long var10
/* : Int */;
2364 long var11
/* : Int */;
2367 var_node_list
= var
;
2368 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2369 var_nodearraylist4
= var1
;
2370 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2371 var_nodearraylist3
= var2
;
2372 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2373 var_nodearraylist2
= var3
;
2374 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2375 var_nodearraylist1
= var4
;
2376 var_pexprnode2
= var_nodearraylist1
;
2377 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2378 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2379 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2380 if(var_pexprnode2
== NULL
) {
2383 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2386 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2390 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28177);
2393 var_pexprnode3
= var_nodearraylist4
;
2394 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2395 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2396 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2397 if(var_pexprnode3
== NULL
) {
2400 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2403 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2407 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28179);
2410 var9
= NEW_parser_nodes__ALeExpr(&type_parser_nodes__ALeExpr
);
2411 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ALeExpr__init_aleexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aleexpr on <var9:ALeExpr>*/;
2412 CHECK_NEW_parser_nodes__ALeExpr(var9
);
2413 var_pexprnode1
= var9
;
2414 var_node_list
= var_pexprnode1
;
2415 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction778> */
2416 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2417 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2420 /* method parser#ReduceAction778#action for (self: Object, Parser) */
2421 void VIRTUAL_parser__ReduceAction778__action(val
* self
, val
* p0
) {
2422 parser__ReduceAction778__action(self
, p0
);
2425 /* method parser#ReduceAction779#action for (self: ReduceAction779, Parser) */
2426 void parser__ReduceAction779__action(val
* self
, val
* p0
) {
2427 val
* var_p
/* var p: Parser */;
2428 val
* var
/* : null */;
2429 val
* var_node_list
/* var node_list: nullable Object */;
2430 val
* var1
/* : nullable Object */;
2431 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2432 val
* var2
/* : nullable Object */;
2433 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2434 val
* var3
/* : nullable Object */;
2435 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2436 val
* var4
/* : nullable Object */;
2437 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2438 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2439 short int var5
/* : Bool */;
2442 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2443 short int var6
/* : Bool */;
2446 val
* var9
/* : ALlExpr */;
2447 val
* var_pexprnode1
/* var pexprnode1: nullable ALlExpr */;
2448 long var10
/* : Int */;
2449 long var11
/* : Int */;
2452 var_node_list
= var
;
2453 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2454 var_nodearraylist4
= var1
;
2455 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2456 var_nodearraylist3
= var2
;
2457 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2458 var_nodearraylist2
= var3
;
2459 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2460 var_nodearraylist1
= var4
;
2461 var_pexprnode2
= var_nodearraylist1
;
2462 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2463 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2464 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2465 if(var_pexprnode2
== NULL
) {
2468 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2471 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2475 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28198);
2478 var_pexprnode3
= var_nodearraylist4
;
2479 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2480 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2481 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2482 if(var_pexprnode3
== NULL
) {
2485 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2488 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2492 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28200);
2495 var9
= NEW_parser_nodes__ALlExpr(&type_parser_nodes__ALlExpr
);
2496 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ALlExpr__init_allexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_allexpr on <var9:ALlExpr>*/;
2497 CHECK_NEW_parser_nodes__ALlExpr(var9
);
2498 var_pexprnode1
= var9
;
2499 var_node_list
= var_pexprnode1
;
2500 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction779> */
2501 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2502 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2505 /* method parser#ReduceAction779#action for (self: Object, Parser) */
2506 void VIRTUAL_parser__ReduceAction779__action(val
* self
, val
* p0
) {
2507 parser__ReduceAction779__action(self
, p0
);
2510 /* method parser#ReduceAction780#action for (self: ReduceAction780, Parser) */
2511 void parser__ReduceAction780__action(val
* self
, val
* p0
) {
2512 val
* var_p
/* var p: Parser */;
2513 val
* var
/* : null */;
2514 val
* var_node_list
/* var node_list: nullable Object */;
2515 val
* var1
/* : nullable Object */;
2516 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2517 val
* var2
/* : nullable Object */;
2518 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2519 val
* var3
/* : nullable Object */;
2520 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2521 val
* var4
/* : nullable Object */;
2522 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2523 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2524 short int var5
/* : Bool */;
2527 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2528 short int var6
/* : Bool */;
2531 val
* var9
/* : AGtExpr */;
2532 val
* var_pexprnode1
/* var pexprnode1: nullable AGtExpr */;
2533 long var10
/* : Int */;
2534 long var11
/* : Int */;
2537 var_node_list
= var
;
2538 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2539 var_nodearraylist4
= var1
;
2540 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2541 var_nodearraylist3
= var2
;
2542 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2543 var_nodearraylist2
= var3
;
2544 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2545 var_nodearraylist1
= var4
;
2546 var_pexprnode2
= var_nodearraylist1
;
2547 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2548 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2549 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2550 if(var_pexprnode2
== NULL
) {
2553 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2556 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2560 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28219);
2563 var_pexprnode3
= var_nodearraylist4
;
2564 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2565 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2566 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2567 if(var_pexprnode3
== NULL
) {
2570 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2573 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2577 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28221);
2580 var9
= NEW_parser_nodes__AGtExpr(&type_parser_nodes__AGtExpr
);
2581 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AGtExpr__init_agtexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_agtexpr on <var9:AGtExpr>*/;
2582 CHECK_NEW_parser_nodes__AGtExpr(var9
);
2583 var_pexprnode1
= var9
;
2584 var_node_list
= var_pexprnode1
;
2585 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction780> */
2586 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2587 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2590 /* method parser#ReduceAction780#action for (self: Object, Parser) */
2591 void VIRTUAL_parser__ReduceAction780__action(val
* self
, val
* p0
) {
2592 parser__ReduceAction780__action(self
, p0
);
2595 /* method parser#ReduceAction781#action for (self: ReduceAction781, Parser) */
2596 void parser__ReduceAction781__action(val
* self
, val
* p0
) {
2597 val
* var_p
/* var p: Parser */;
2598 val
* var
/* : null */;
2599 val
* var_node_list
/* var node_list: nullable Object */;
2600 val
* var1
/* : nullable Object */;
2601 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2602 val
* var2
/* : nullable Object */;
2603 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2604 val
* var3
/* : nullable Object */;
2605 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2606 val
* var4
/* : nullable Object */;
2607 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2608 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2609 short int var5
/* : Bool */;
2612 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2613 short int var6
/* : Bool */;
2616 val
* var9
/* : AGeExpr */;
2617 val
* var_pexprnode1
/* var pexprnode1: nullable AGeExpr */;
2618 long var10
/* : Int */;
2619 long var11
/* : Int */;
2622 var_node_list
= var
;
2623 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2624 var_nodearraylist4
= var1
;
2625 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2626 var_nodearraylist3
= var2
;
2627 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2628 var_nodearraylist2
= var3
;
2629 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2630 var_nodearraylist1
= var4
;
2631 var_pexprnode2
= var_nodearraylist1
;
2632 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2633 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2634 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2635 if(var_pexprnode2
== NULL
) {
2638 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2641 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2645 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28240);
2648 var_pexprnode3
= var_nodearraylist4
;
2649 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2650 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2651 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2652 if(var_pexprnode3
== NULL
) {
2655 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2658 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2662 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28242);
2665 var9
= NEW_parser_nodes__AGeExpr(&type_parser_nodes__AGeExpr
);
2666 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AGeExpr__init_ageexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_ageexpr on <var9:AGeExpr>*/;
2667 CHECK_NEW_parser_nodes__AGeExpr(var9
);
2668 var_pexprnode1
= var9
;
2669 var_node_list
= var_pexprnode1
;
2670 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction781> */
2671 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2672 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2675 /* method parser#ReduceAction781#action for (self: Object, Parser) */
2676 void VIRTUAL_parser__ReduceAction781__action(val
* self
, val
* p0
) {
2677 parser__ReduceAction781__action(self
, p0
);
2680 /* method parser#ReduceAction782#action for (self: ReduceAction782, Parser) */
2681 void parser__ReduceAction782__action(val
* self
, val
* p0
) {
2682 val
* var_p
/* var p: Parser */;
2683 val
* var
/* : null */;
2684 val
* var_node_list
/* var node_list: nullable Object */;
2685 val
* var1
/* : nullable Object */;
2686 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2687 val
* var2
/* : nullable Object */;
2688 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2689 val
* var3
/* : nullable Object */;
2690 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2691 val
* var4
/* : nullable Object */;
2692 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2693 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2694 short int var5
/* : Bool */;
2697 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2698 short int var6
/* : Bool */;
2701 val
* var9
/* : AGgExpr */;
2702 val
* var_pexprnode1
/* var pexprnode1: nullable AGgExpr */;
2703 long var10
/* : Int */;
2704 long var11
/* : Int */;
2707 var_node_list
= var
;
2708 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2709 var_nodearraylist4
= var1
;
2710 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2711 var_nodearraylist3
= var2
;
2712 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2713 var_nodearraylist2
= var3
;
2714 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2715 var_nodearraylist1
= var4
;
2716 var_pexprnode2
= var_nodearraylist1
;
2717 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2718 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2719 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2720 if(var_pexprnode2
== NULL
) {
2723 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2726 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2730 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28261);
2733 var_pexprnode3
= var_nodearraylist4
;
2734 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2735 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2736 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2737 if(var_pexprnode3
== NULL
) {
2740 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2743 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2747 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28263);
2750 var9
= NEW_parser_nodes__AGgExpr(&type_parser_nodes__AGgExpr
);
2751 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AGgExpr__init_aggexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aggexpr on <var9:AGgExpr>*/;
2752 CHECK_NEW_parser_nodes__AGgExpr(var9
);
2753 var_pexprnode1
= var9
;
2754 var_node_list
= var_pexprnode1
;
2755 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction782> */
2756 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2757 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2760 /* method parser#ReduceAction782#action for (self: Object, Parser) */
2761 void VIRTUAL_parser__ReduceAction782__action(val
* self
, val
* p0
) {
2762 parser__ReduceAction782__action(self
, p0
);
2765 /* method parser#ReduceAction783#action for (self: ReduceAction783, Parser) */
2766 void parser__ReduceAction783__action(val
* self
, val
* p0
) {
2767 val
* var_p
/* var p: Parser */;
2768 val
* var
/* : null */;
2769 val
* var_node_list
/* var node_list: nullable Object */;
2770 val
* var1
/* : nullable Object */;
2771 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2772 val
* var2
/* : nullable Object */;
2773 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2774 val
* var3
/* : nullable Object */;
2775 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2776 val
* var4
/* : nullable Object */;
2777 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2778 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2779 short int var5
/* : Bool */;
2782 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2783 short int var6
/* : Bool */;
2786 val
* var9
/* : AStarshipExpr */;
2787 val
* var_pexprnode1
/* var pexprnode1: nullable AStarshipExpr */;
2788 long var10
/* : Int */;
2789 long var11
/* : Int */;
2792 var_node_list
= var
;
2793 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2794 var_nodearraylist4
= var1
;
2795 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2796 var_nodearraylist3
= var2
;
2797 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2798 var_nodearraylist2
= var3
;
2799 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2800 var_nodearraylist1
= var4
;
2801 var_pexprnode2
= var_nodearraylist1
;
2802 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2803 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2804 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2805 if(var_pexprnode2
== NULL
) {
2808 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2811 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2815 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28282);
2818 var_pexprnode3
= var_nodearraylist4
;
2819 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2820 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2821 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2822 if(var_pexprnode3
== NULL
) {
2825 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2828 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
2832 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28284);
2835 var9
= NEW_parser_nodes__AStarshipExpr(&type_parser_nodes__AStarshipExpr
);
2836 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AStarshipExpr__init_astarshipexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_astarshipexpr on <var9:AStarshipExpr>*/;
2837 CHECK_NEW_parser_nodes__AStarshipExpr(var9
);
2838 var_pexprnode1
= var9
;
2839 var_node_list
= var_pexprnode1
;
2840 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction783> */
2841 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2842 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2845 /* method parser#ReduceAction783#action for (self: Object, Parser) */
2846 void VIRTUAL_parser__ReduceAction783__action(val
* self
, val
* p0
) {
2847 parser__ReduceAction783__action(self
, p0
);
2850 /* method parser#ReduceAction784#action for (self: ReduceAction784, Parser) */
2851 void parser__ReduceAction784__action(val
* self
, val
* p0
) {
2852 val
* var_p
/* var p: Parser */;
2853 val
* var
/* : null */;
2854 val
* var_node_list
/* var node_list: nullable Object */;
2855 val
* var1
/* : nullable Object */;
2856 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2857 val
* var2
/* : nullable Object */;
2858 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2859 val
* var3
/* : nullable Object */;
2860 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2861 val
* var4
/* : nullable Object */;
2862 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2863 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2864 short int var5
/* : Bool */;
2867 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2868 short int var6
/* : Bool */;
2871 val
* var9
/* : AIsaExpr */;
2872 val
* var_pexprnode1
/* var pexprnode1: nullable AIsaExpr */;
2873 long var10
/* : Int */;
2874 long var11
/* : Int */;
2877 var_node_list
= var
;
2878 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2879 var_nodearraylist4
= var1
;
2880 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2881 var_nodearraylist3
= var2
;
2882 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2883 var_nodearraylist2
= var3
;
2884 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2885 var_nodearraylist1
= var4
;
2886 var_pexprnode2
= var_nodearraylist1
;
2887 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2888 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2889 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2890 if(var_pexprnode2
== NULL
) {
2893 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2896 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2900 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28303);
2903 var_ptypenode3
= var_nodearraylist4
;
2904 /* <var_ptypenode3:nullable Object> isa nullable AType */
2905 cltype7
= type_nullable_parser_nodes__AType
.color
;
2906 idtype8
= type_nullable_parser_nodes__AType
.id
;
2907 if(var_ptypenode3
== NULL
) {
2910 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
2913 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
2917 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28305);
2920 var9
= NEW_parser_nodes__AIsaExpr(&type_parser_nodes__AIsaExpr
);
2921 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AIsaExpr__init_aisaexpr
]))(var9
, var_pexprnode2
, var_ptypenode3
) /* init_aisaexpr on <var9:AIsaExpr>*/;
2922 CHECK_NEW_parser_nodes__AIsaExpr(var9
);
2923 var_pexprnode1
= var9
;
2924 var_node_list
= var_pexprnode1
;
2925 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction784> */
2926 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2927 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2930 /* method parser#ReduceAction784#action for (self: Object, Parser) */
2931 void VIRTUAL_parser__ReduceAction784__action(val
* self
, val
* p0
) {
2932 parser__ReduceAction784__action(self
, p0
);
2935 /* method parser#ReduceAction786#action for (self: ReduceAction786, Parser) */
2936 void parser__ReduceAction786__action(val
* self
, val
* p0
) {
2937 val
* var_p
/* var p: Parser */;
2938 val
* var
/* : null */;
2939 val
* var_node_list
/* var node_list: nullable Object */;
2940 val
* var1
/* : nullable Object */;
2941 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2942 val
* var2
/* : nullable Object */;
2943 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2944 val
* var3
/* : nullable Object */;
2945 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2946 val
* var4
/* : nullable Object */;
2947 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2948 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2949 short int var5
/* : Bool */;
2952 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2953 short int var6
/* : Bool */;
2956 val
* var9
/* : APlusExpr */;
2957 val
* var_pexprnode1
/* var pexprnode1: nullable APlusExpr */;
2958 long var10
/* : Int */;
2959 long var11
/* : Int */;
2962 var_node_list
= var
;
2963 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2964 var_nodearraylist4
= var1
;
2965 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2966 var_nodearraylist3
= var2
;
2967 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2968 var_nodearraylist2
= var3
;
2969 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2970 var_nodearraylist1
= var4
;
2971 var_pexprnode2
= var_nodearraylist1
;
2972 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2973 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2974 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2975 if(var_pexprnode2
== NULL
) {
2978 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2981 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2985 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28324);
2988 var_pexprnode3
= var_nodearraylist4
;
2989 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2990 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
2991 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
2992 if(var_pexprnode3
== NULL
) {
2995 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
2998 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
3002 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28326);
3005 var9
= NEW_parser_nodes__APlusExpr(&type_parser_nodes__APlusExpr
);
3006 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__APlusExpr__init_aplusexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aplusexpr on <var9:APlusExpr>*/;
3007 CHECK_NEW_parser_nodes__APlusExpr(var9
);
3008 var_pexprnode1
= var9
;
3009 var_node_list
= var_pexprnode1
;
3010 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction786> */
3011 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3012 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3015 /* method parser#ReduceAction786#action for (self: Object, Parser) */
3016 void VIRTUAL_parser__ReduceAction786__action(val
* self
, val
* p0
) {
3017 parser__ReduceAction786__action(self
, p0
);
3020 /* method parser#ReduceAction787#action for (self: ReduceAction787, Parser) */
3021 void parser__ReduceAction787__action(val
* self
, val
* p0
) {
3022 val
* var_p
/* var p: Parser */;
3023 val
* var
/* : null */;
3024 val
* var_node_list
/* var node_list: nullable Object */;
3025 val
* var1
/* : nullable Object */;
3026 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3027 val
* var2
/* : nullable Object */;
3028 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3029 val
* var3
/* : nullable Object */;
3030 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3031 val
* var4
/* : nullable Object */;
3032 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3033 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
3034 short int var5
/* : Bool */;
3037 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3038 short int var6
/* : Bool */;
3041 val
* var9
/* : AMinusExpr */;
3042 val
* var_pexprnode1
/* var pexprnode1: nullable AMinusExpr */;
3043 long var10
/* : Int */;
3044 long var11
/* : Int */;
3047 var_node_list
= var
;
3048 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3049 var_nodearraylist4
= var1
;
3050 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3051 var_nodearraylist3
= var2
;
3052 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3053 var_nodearraylist2
= var3
;
3054 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3055 var_nodearraylist1
= var4
;
3056 var_pexprnode2
= var_nodearraylist1
;
3057 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
3058 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3059 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3060 if(var_pexprnode2
== NULL
) {
3063 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3066 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3070 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28345);
3073 var_pexprnode3
= var_nodearraylist4
;
3074 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3075 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
3076 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
3077 if(var_pexprnode3
== NULL
) {
3080 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
3083 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
3087 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28347);
3090 var9
= NEW_parser_nodes__AMinusExpr(&type_parser_nodes__AMinusExpr
);
3091 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AMinusExpr__init_aminusexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aminusexpr on <var9:AMinusExpr>*/;
3092 CHECK_NEW_parser_nodes__AMinusExpr(var9
);
3093 var_pexprnode1
= var9
;
3094 var_node_list
= var_pexprnode1
;
3095 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction787> */
3096 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3097 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3100 /* method parser#ReduceAction787#action for (self: Object, Parser) */
3101 void VIRTUAL_parser__ReduceAction787__action(val
* self
, val
* p0
) {
3102 parser__ReduceAction787__action(self
, p0
);
3105 /* method parser#ReduceAction789#action for (self: ReduceAction789, Parser) */
3106 void parser__ReduceAction789__action(val
* self
, val
* p0
) {
3107 val
* var_p
/* var p: Parser */;
3108 val
* var
/* : null */;
3109 val
* var_node_list
/* var node_list: nullable Object */;
3110 val
* var1
/* : nullable Object */;
3111 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3112 val
* var2
/* : nullable Object */;
3113 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3114 val
* var3
/* : nullable Object */;
3115 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3116 val
* var4
/* : nullable Object */;
3117 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3118 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
3119 short int var5
/* : Bool */;
3122 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3123 short int var6
/* : Bool */;
3126 val
* var9
/* : AStarExpr */;
3127 val
* var_pexprnode1
/* var pexprnode1: nullable AStarExpr */;
3128 long var10
/* : Int */;
3129 long var11
/* : Int */;
3132 var_node_list
= var
;
3133 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3134 var_nodearraylist4
= var1
;
3135 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3136 var_nodearraylist3
= var2
;
3137 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3138 var_nodearraylist2
= var3
;
3139 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3140 var_nodearraylist1
= var4
;
3141 var_pexprnode2
= var_nodearraylist1
;
3142 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
3143 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3144 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3145 if(var_pexprnode2
== NULL
) {
3148 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3151 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3155 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28366);
3158 var_pexprnode3
= var_nodearraylist4
;
3159 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3160 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
3161 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
3162 if(var_pexprnode3
== NULL
) {
3165 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
3168 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
3172 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28368);
3175 var9
= NEW_parser_nodes__AStarExpr(&type_parser_nodes__AStarExpr
);
3176 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AStarExpr__init_astarexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_astarexpr on <var9:AStarExpr>*/;
3177 CHECK_NEW_parser_nodes__AStarExpr(var9
);
3178 var_pexprnode1
= var9
;
3179 var_node_list
= var_pexprnode1
;
3180 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction789> */
3181 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3182 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3185 /* method parser#ReduceAction789#action for (self: Object, Parser) */
3186 void VIRTUAL_parser__ReduceAction789__action(val
* self
, val
* p0
) {
3187 parser__ReduceAction789__action(self
, p0
);
3190 /* method parser#ReduceAction790#action for (self: ReduceAction790, Parser) */
3191 void parser__ReduceAction790__action(val
* self
, val
* p0
) {
3192 val
* var_p
/* var p: Parser */;
3193 val
* var
/* : null */;
3194 val
* var_node_list
/* var node_list: nullable Object */;
3195 val
* var1
/* : nullable Object */;
3196 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3197 val
* var2
/* : nullable Object */;
3198 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3199 val
* var3
/* : nullable Object */;
3200 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3201 val
* var4
/* : nullable Object */;
3202 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3203 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
3204 short int var5
/* : Bool */;
3207 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3208 short int var6
/* : Bool */;
3211 val
* var9
/* : ASlashExpr */;
3212 val
* var_pexprnode1
/* var pexprnode1: nullable ASlashExpr */;
3213 long var10
/* : Int */;
3214 long var11
/* : Int */;
3217 var_node_list
= var
;
3218 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3219 var_nodearraylist4
= var1
;
3220 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3221 var_nodearraylist3
= var2
;
3222 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3223 var_nodearraylist2
= var3
;
3224 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3225 var_nodearraylist1
= var4
;
3226 var_pexprnode2
= var_nodearraylist1
;
3227 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
3228 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3229 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3230 if(var_pexprnode2
== NULL
) {
3233 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3236 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3240 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28387);
3243 var_pexprnode3
= var_nodearraylist4
;
3244 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3245 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
3246 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
3247 if(var_pexprnode3
== NULL
) {
3250 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
3253 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
3257 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28389);
3260 var9
= NEW_parser_nodes__ASlashExpr(&type_parser_nodes__ASlashExpr
);
3261 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ASlashExpr__init_aslashexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aslashexpr on <var9:ASlashExpr>*/;
3262 CHECK_NEW_parser_nodes__ASlashExpr(var9
);
3263 var_pexprnode1
= var9
;
3264 var_node_list
= var_pexprnode1
;
3265 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction790> */
3266 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3267 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3270 /* method parser#ReduceAction790#action for (self: Object, Parser) */
3271 void VIRTUAL_parser__ReduceAction790__action(val
* self
, val
* p0
) {
3272 parser__ReduceAction790__action(self
, p0
);
3275 /* method parser#ReduceAction791#action for (self: ReduceAction791, Parser) */
3276 void parser__ReduceAction791__action(val
* self
, val
* p0
) {
3277 val
* var_p
/* var p: Parser */;
3278 val
* var
/* : null */;
3279 val
* var_node_list
/* var node_list: nullable Object */;
3280 val
* var1
/* : nullable Object */;
3281 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3282 val
* var2
/* : nullable Object */;
3283 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3284 val
* var3
/* : nullable Object */;
3285 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3286 val
* var4
/* : nullable Object */;
3287 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3288 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
3289 short int var5
/* : Bool */;
3292 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3293 short int var6
/* : Bool */;
3296 val
* var9
/* : APercentExpr */;
3297 val
* var_pexprnode1
/* var pexprnode1: nullable APercentExpr */;
3298 long var10
/* : Int */;
3299 long var11
/* : Int */;
3302 var_node_list
= var
;
3303 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3304 var_nodearraylist4
= var1
;
3305 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3306 var_nodearraylist3
= var2
;
3307 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3308 var_nodearraylist2
= var3
;
3309 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3310 var_nodearraylist1
= var4
;
3311 var_pexprnode2
= var_nodearraylist1
;
3312 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
3313 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3314 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3315 if(var_pexprnode2
== NULL
) {
3318 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3321 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3325 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28408);
3328 var_pexprnode3
= var_nodearraylist4
;
3329 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3330 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
3331 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
3332 if(var_pexprnode3
== NULL
) {
3335 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
3338 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
3342 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28410);
3345 var9
= NEW_parser_nodes__APercentExpr(&type_parser_nodes__APercentExpr
);
3346 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__APercentExpr__init_apercentexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_apercentexpr on <var9:APercentExpr>*/;
3347 CHECK_NEW_parser_nodes__APercentExpr(var9
);
3348 var_pexprnode1
= var9
;
3349 var_node_list
= var_pexprnode1
;
3350 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction791> */
3351 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3352 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3355 /* method parser#ReduceAction791#action for (self: Object, Parser) */
3356 void VIRTUAL_parser__ReduceAction791__action(val
* self
, val
* p0
) {
3357 parser__ReduceAction791__action(self
, p0
);
3360 /* method parser#ReduceAction793#action for (self: ReduceAction793, Parser) */
3361 void parser__ReduceAction793__action(val
* self
, val
* p0
) {
3362 val
* var_p
/* var p: Parser */;
3363 val
* var
/* : null */;
3364 val
* var_node_list
/* var node_list: nullable Object */;
3365 val
* var1
/* : nullable Object */;
3366 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3367 val
* var2
/* : nullable Object */;
3368 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3369 val
* var3
/* : nullable Object */;
3370 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3371 val
* var_tminusnode2
/* var tminusnode2: nullable Object */;
3372 short int var4
/* : Bool */;
3375 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3376 short int var5
/* : Bool */;
3379 val
* var8
/* : AUminusExpr */;
3380 val
* var_pexprnode1
/* var pexprnode1: nullable AUminusExpr */;
3381 long var9
/* : Int */;
3382 long var10
/* : Int */;
3385 var_node_list
= var
;
3386 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3387 var_nodearraylist3
= var1
;
3388 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3389 var_nodearraylist2
= var2
;
3390 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3391 var_nodearraylist1
= var3
;
3392 var_tminusnode2
= var_nodearraylist1
;
3393 /* <var_tminusnode2:nullable Object> isa nullable TMinus */
3394 cltype
= type_nullable_parser_nodes__TMinus
.color
;
3395 idtype
= type_nullable_parser_nodes__TMinus
.id
;
3396 if(var_tminusnode2
== NULL
) {
3399 if(cltype
>= var_tminusnode2
->type
->table_size
) {
3402 var4
= var_tminusnode2
->type
->type_table
[cltype
] == idtype
;
3406 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28428);
3409 var_pexprnode3
= var_nodearraylist3
;
3410 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3411 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
3412 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
3413 if(var_pexprnode3
== NULL
) {
3416 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
3419 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
3423 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28430);
3426 var8
= NEW_parser_nodes__AUminusExpr(&type_parser_nodes__AUminusExpr
);
3427 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AUminusExpr__init_auminusexpr
]))(var8
, var_tminusnode2
, var_pexprnode3
) /* init_auminusexpr on <var8:AUminusExpr>*/;
3428 CHECK_NEW_parser_nodes__AUminusExpr(var8
);
3429 var_pexprnode1
= var8
;
3430 var_node_list
= var_pexprnode1
;
3431 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction793> */
3432 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
3433 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
3436 /* method parser#ReduceAction793#action for (self: Object, Parser) */
3437 void VIRTUAL_parser__ReduceAction793__action(val
* self
, val
* p0
) {
3438 parser__ReduceAction793__action(self
, p0
);
3441 /* method parser#ReduceAction794#action for (self: ReduceAction794, Parser) */
3442 void parser__ReduceAction794__action(val
* self
, val
* p0
) {
3443 val
* var_p
/* var p: Parser */;
3444 val
* var
/* : null */;
3445 val
* var_node_list
/* var node_list: nullable Object */;
3446 val
* var1
/* : nullable Object */;
3447 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3448 val
* var2
/* : nullable Object */;
3449 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3450 val
* var3
/* : nullable Object */;
3451 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3452 val
* var_tkwoncenode2
/* var tkwoncenode2: nullable Object */;
3453 short int var4
/* : Bool */;
3456 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3457 short int var5
/* : Bool */;
3460 val
* var8
/* : AOnceExpr */;
3461 val
* var_pexprnode1
/* var pexprnode1: nullable AOnceExpr */;
3462 long var9
/* : Int */;
3463 long var10
/* : Int */;
3466 var_node_list
= var
;
3467 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3468 var_nodearraylist3
= var1
;
3469 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3470 var_nodearraylist2
= var2
;
3471 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3472 var_nodearraylist1
= var3
;
3473 var_tkwoncenode2
= var_nodearraylist1
;
3474 /* <var_tkwoncenode2:nullable Object> isa nullable TKwonce */
3475 cltype
= type_nullable_parser_nodes__TKwonce
.color
;
3476 idtype
= type_nullable_parser_nodes__TKwonce
.id
;
3477 if(var_tkwoncenode2
== NULL
) {
3480 if(cltype
>= var_tkwoncenode2
->type
->table_size
) {
3483 var4
= var_tkwoncenode2
->type
->type_table
[cltype
] == idtype
;
3487 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28448);
3490 var_pexprnode3
= var_nodearraylist3
;
3491 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3492 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
3493 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
3494 if(var_pexprnode3
== NULL
) {
3497 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
3500 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
3504 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28450);
3507 var8
= NEW_parser_nodes__AOnceExpr(&type_parser_nodes__AOnceExpr
);
3508 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AOnceExpr__init_aonceexpr
]))(var8
, var_tkwoncenode2
, var_pexprnode3
) /* init_aonceexpr on <var8:AOnceExpr>*/;
3509 CHECK_NEW_parser_nodes__AOnceExpr(var8
);
3510 var_pexprnode1
= var8
;
3511 var_node_list
= var_pexprnode1
;
3512 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction794> */
3513 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
3514 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
3517 /* method parser#ReduceAction794#action for (self: Object, Parser) */
3518 void VIRTUAL_parser__ReduceAction794__action(val
* self
, val
* p0
) {
3519 parser__ReduceAction794__action(self
, p0
);
3522 /* method parser#ReduceAction796#action for (self: ReduceAction796, Parser) */
3523 void parser__ReduceAction796__action(val
* self
, val
* p0
) {
3524 val
* var_p
/* var p: Parser */;
3525 val
* var
/* : null */;
3526 val
* var_node_list
/* var node_list: nullable Object */;
3527 val
* var1
/* : nullable Object */;
3528 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3529 val
* var2
/* : nullable Object */;
3530 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3531 val
* var3
/* : nullable Object */;
3532 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3533 val
* var4
/* : nullable Object */;
3534 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3535 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
3536 short int var5
/* : Bool */;
3539 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
3540 short int var6
/* : Bool */;
3543 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
3544 short int var9
/* : Bool */;
3547 val
* var12
/* : ANewExpr */;
3548 val
* var13
/* : null */;
3549 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
3550 long var14
/* : Int */;
3551 long var15
/* : Int */;
3554 var_node_list
= var
;
3555 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3556 var_nodearraylist4
= var1
;
3557 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3558 var_nodearraylist3
= var2
;
3559 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3560 var_nodearraylist2
= var3
;
3561 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3562 var_nodearraylist1
= var4
;
3563 var_tkwnewnode2
= var_nodearraylist1
;
3564 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
3565 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
3566 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
3567 if(var_tkwnewnode2
== NULL
) {
3570 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
3573 var5
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
3577 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28469);
3580 var_ptypenode3
= var_nodearraylist3
;
3581 /* <var_ptypenode3:nullable Object> isa nullable AType */
3582 cltype7
= type_nullable_parser_nodes__AType
.color
;
3583 idtype8
= type_nullable_parser_nodes__AType
.id
;
3584 if(var_ptypenode3
== NULL
) {
3587 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
3590 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
3594 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28471);
3597 var_pexprsnode5
= var_nodearraylist4
;
3598 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
3599 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
3600 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
3601 if(var_pexprsnode5
== NULL
) {
3604 if(cltype10
>= var_pexprsnode5
->type
->table_size
) {
3607 var9
= var_pexprsnode5
->type
->type_table
[cltype10
] == idtype11
;
3611 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28473);
3614 var12
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
3616 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__ANewExpr__init_anewexpr
]))(var12
, var_tkwnewnode2
, var_ptypenode3
, var13
, var_pexprsnode5
) /* init_anewexpr on <var12:ANewExpr>*/;
3617 CHECK_NEW_parser_nodes__ANewExpr(var12
);
3618 var_pexprnode1
= var12
;
3619 var_node_list
= var_pexprnode1
;
3620 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction796> */
3621 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
3622 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
3625 /* method parser#ReduceAction796#action for (self: Object, Parser) */
3626 void VIRTUAL_parser__ReduceAction796__action(val
* self
, val
* p0
) {
3627 parser__ReduceAction796__action(self
, p0
);
3630 /* method parser#ReduceAction797#action for (self: ReduceAction797, Parser) */
3631 void parser__ReduceAction797__action(val
* self
, val
* p0
) {
3632 val
* var_p
/* var p: Parser */;
3633 val
* var
/* : null */;
3634 val
* var_node_list
/* var node_list: nullable Object */;
3635 val
* var1
/* : nullable Object */;
3636 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3637 val
* var2
/* : nullable Object */;
3638 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3639 val
* var3
/* : nullable Object */;
3640 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3641 val
* var4
/* : nullable Object */;
3642 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3643 val
* var5
/* : nullable Object */;
3644 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3645 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
3646 short int var6
/* : Bool */;
3649 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3650 short int var7
/* : Bool */;
3653 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
3654 short int var10
/* : Bool */;
3657 val
* var13
/* : AIssetAttrExpr */;
3658 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
3659 long var14
/* : Int */;
3660 long var15
/* : Int */;
3663 var_node_list
= var
;
3664 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3665 var_nodearraylist5
= var1
;
3666 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3667 var_nodearraylist4
= var2
;
3668 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3669 var_nodearraylist3
= var3
;
3670 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3671 var_nodearraylist2
= var4
;
3672 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3673 var_nodearraylist1
= var5
;
3674 var_tkwissetnode2
= var_nodearraylist1
;
3675 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
3676 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
3677 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
3678 if(var_tkwissetnode2
== NULL
) {
3681 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
3684 var6
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
3688 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28495);
3691 var_pexprnode3
= var_nodearraylist2
;
3692 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3693 cltype8
= type_nullable_parser_nodes__AExpr
.color
;
3694 idtype9
= type_nullable_parser_nodes__AExpr
.id
;
3695 if(var_pexprnode3
== NULL
) {
3698 if(cltype8
>= var_pexprnode3
->type
->table_size
) {
3701 var7
= var_pexprnode3
->type
->type_table
[cltype8
] == idtype9
;
3705 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28497);
3708 var_tattridnode4
= var_nodearraylist5
;
3709 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
3710 cltype11
= type_nullable_parser_nodes__TAttrid
.color
;
3711 idtype12
= type_nullable_parser_nodes__TAttrid
.id
;
3712 if(var_tattridnode4
== NULL
) {
3715 if(cltype11
>= var_tattridnode4
->type
->table_size
) {
3718 var10
= var_tattridnode4
->type
->type_table
[cltype11
] == idtype12
;
3722 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28499);
3725 var13
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
3726 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var13
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var13:AIssetAttrExpr>*/;
3727 CHECK_NEW_parser_nodes__AIssetAttrExpr(var13
);
3728 var_pexprnode1
= var13
;
3729 var_node_list
= var_pexprnode1
;
3730 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction797> */
3731 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
3732 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
3735 /* method parser#ReduceAction797#action for (self: Object, Parser) */
3736 void VIRTUAL_parser__ReduceAction797__action(val
* self
, val
* p0
) {
3737 parser__ReduceAction797__action(self
, p0
);
3740 /* method parser#ReduceAction798#action for (self: ReduceAction798, Parser) */
3741 void parser__ReduceAction798__action(val
* self
, val
* p0
) {
3742 val
* var_p
/* var p: Parser */;
3743 val
* var
/* : null */;
3744 val
* var_node_list
/* var node_list: nullable Object */;
3745 val
* var1
/* : nullable Object */;
3746 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3747 val
* var2
/* : nullable Object */;
3748 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3749 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
3750 short int var3
/* : Bool */;
3753 val
* var4
/* : AImplicitSelfExpr */;
3754 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
3755 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
3756 short int var5
/* : Bool */;
3759 val
* var8
/* : AIssetAttrExpr */;
3760 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
3761 long var9
/* : Int */;
3762 long var10
/* : Int */;
3765 var_node_list
= var
;
3766 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3767 var_nodearraylist2
= var1
;
3768 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3769 var_nodearraylist1
= var2
;
3770 var_tkwissetnode2
= var_nodearraylist1
;
3771 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
3772 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
3773 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
3774 if(var_tkwissetnode2
== NULL
) {
3777 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
3780 var3
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
3784 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28517);
3787 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
3788 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
3789 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
3790 var_pexprnode3
= var4
;
3791 var_tattridnode4
= var_nodearraylist2
;
3792 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
3793 cltype6
= type_nullable_parser_nodes__TAttrid
.color
;
3794 idtype7
= type_nullable_parser_nodes__TAttrid
.id
;
3795 if(var_tattridnode4
== NULL
) {
3798 if(cltype6
>= var_tattridnode4
->type
->table_size
) {
3801 var5
= var_tattridnode4
->type
->type_table
[cltype6
] == idtype7
;
3805 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28520);
3808 var8
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
3809 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var8
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var8:AIssetAttrExpr>*/;
3810 CHECK_NEW_parser_nodes__AIssetAttrExpr(var8
);
3811 var_pexprnode1
= var8
;
3812 var_node_list
= var_pexprnode1
;
3813 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction798> */
3814 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
3815 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
3818 /* method parser#ReduceAction798#action for (self: Object, Parser) */
3819 void VIRTUAL_parser__ReduceAction798__action(val
* self
, val
* p0
) {
3820 parser__ReduceAction798__action(self
, p0
);
3823 /* method parser#ReduceAction799#action for (self: ReduceAction799, Parser) */
3824 void parser__ReduceAction799__action(val
* self
, val
* p0
) {
3825 val
* var_p
/* var p: Parser */;
3826 val
* var
/* : null */;
3827 val
* var_node_list
/* var node_list: nullable Object */;
3828 val
* var1
/* : nullable Object */;
3829 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3830 val
* var2
/* : nullable Object */;
3831 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3832 val
* var3
/* : nullable Object */;
3833 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3834 val
* var4
/* : nullable Object */;
3835 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3836 val
* var5
/* : nullable Object */;
3837 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3838 val
* var6
/* : nullable Object */;
3839 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3840 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
3841 short int var7
/* : Bool */;
3844 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3845 short int var8
/* : Bool */;
3848 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
3849 short int var11
/* : Bool */;
3852 val
* var14
/* : AIssetAttrExpr */;
3853 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
3854 long var15
/* : Int */;
3855 long var16
/* : Int */;
3858 var_node_list
= var
;
3859 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3860 var_nodearraylist6
= var1
;
3861 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3862 var_nodearraylist5
= var2
;
3863 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3864 var_nodearraylist4
= var3
;
3865 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3866 var_nodearraylist3
= var4
;
3867 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3868 var_nodearraylist2
= var5
;
3869 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3870 var_nodearraylist1
= var6
;
3871 var_tkwissetnode2
= var_nodearraylist1
;
3872 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
3873 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
3874 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
3875 if(var_tkwissetnode2
== NULL
) {
3878 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
3881 var7
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
3885 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28542);
3888 var_pexprnode3
= var_nodearraylist2
;
3889 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3890 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
3891 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
3892 if(var_pexprnode3
== NULL
) {
3895 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
3898 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
3902 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28544);
3905 var_tattridnode4
= var_nodearraylist6
;
3906 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
3907 cltype12
= type_nullable_parser_nodes__TAttrid
.color
;
3908 idtype13
= type_nullable_parser_nodes__TAttrid
.id
;
3909 if(var_tattridnode4
== NULL
) {
3912 if(cltype12
>= var_tattridnode4
->type
->table_size
) {
3915 var11
= var_tattridnode4
->type
->type_table
[cltype12
] == idtype13
;
3919 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28546);
3922 var14
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
3923 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var14
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var14:AIssetAttrExpr>*/;
3924 CHECK_NEW_parser_nodes__AIssetAttrExpr(var14
);
3925 var_pexprnode1
= var14
;
3926 var_node_list
= var_pexprnode1
;
3927 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction799> */
3928 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
3929 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
3932 /* method parser#ReduceAction799#action for (self: Object, Parser) */
3933 void VIRTUAL_parser__ReduceAction799__action(val
* self
, val
* p0
) {
3934 parser__ReduceAction799__action(self
, p0
);
3937 /* method parser#ReduceAction800#action for (self: ReduceAction800, Parser) */
3938 void parser__ReduceAction800__action(val
* self
, val
* p0
) {
3939 val
* var_p
/* var p: Parser */;
3940 val
* var
/* : null */;
3941 val
* var_node_list
/* var node_list: nullable Object */;
3942 val
* var1
/* : nullable Object */;
3943 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3944 val
* var2
/* : nullable Object */;
3945 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3946 val
* var3
/* : nullable Object */;
3947 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3948 val
* var4
/* : nullable Object */;
3949 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3950 val
* var5
/* : nullable Object */;
3951 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3952 val
* var6
/* : nullable Object */;
3953 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3954 val
* var7
/* : nullable Object */;
3955 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3956 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
3957 short int var8
/* : Bool */;
3960 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3961 short int var9
/* : Bool */;
3964 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
3965 short int var12
/* : Bool */;
3968 val
* var15
/* : AIssetAttrExpr */;
3969 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
3970 long var16
/* : Int */;
3971 long var17
/* : Int */;
3974 var_node_list
= var
;
3975 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3976 var_nodearraylist7
= var1
;
3977 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3978 var_nodearraylist6
= var2
;
3979 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3980 var_nodearraylist5
= var3
;
3981 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3982 var_nodearraylist4
= var4
;
3983 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3984 var_nodearraylist3
= var5
;
3985 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3986 var_nodearraylist2
= var6
;
3987 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3988 var_nodearraylist1
= var7
;
3989 var_tkwissetnode2
= var_nodearraylist1
;
3990 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
3991 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
3992 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
3993 if(var_tkwissetnode2
== NULL
) {
3996 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
3999 var8
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
4003 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28569);
4006 var_pexprnode3
= var_nodearraylist2
;
4007 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4008 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
4009 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
4010 if(var_pexprnode3
== NULL
) {
4013 if(cltype10
>= var_pexprnode3
->type
->table_size
) {
4016 var9
= var_pexprnode3
->type
->type_table
[cltype10
] == idtype11
;
4020 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28571);
4023 var_tattridnode4
= var_nodearraylist7
;
4024 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
4025 cltype13
= type_nullable_parser_nodes__TAttrid
.color
;
4026 idtype14
= type_nullable_parser_nodes__TAttrid
.id
;
4027 if(var_tattridnode4
== NULL
) {
4030 if(cltype13
>= var_tattridnode4
->type
->table_size
) {
4033 var12
= var_tattridnode4
->type
->type_table
[cltype13
] == idtype14
;
4037 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28573);
4040 var15
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
4041 ((void (*)(val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var15
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var15:AIssetAttrExpr>*/;
4042 CHECK_NEW_parser_nodes__AIssetAttrExpr(var15
);
4043 var_pexprnode1
= var15
;
4044 var_node_list
= var_pexprnode1
;
4045 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction800> */
4046 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
4047 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
4050 /* method parser#ReduceAction800#action for (self: Object, Parser) */
4051 void VIRTUAL_parser__ReduceAction800__action(val
* self
, val
* p0
) {
4052 parser__ReduceAction800__action(self
, p0
);
4055 /* method parser#ReduceAction802#action for (self: ReduceAction802, Parser) */
4056 void parser__ReduceAction802__action(val
* self
, val
* p0
) {
4057 val
* var_p
/* var p: Parser */;
4058 val
* var
/* : null */;
4059 val
* var_node_list
/* var node_list: nullable Object */;
4060 val
* var1
/* : nullable Object */;
4061 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4062 val
* var2
/* : nullable Object */;
4063 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4064 val
* var3
/* : nullable Object */;
4065 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4066 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
4067 short int var4
/* : Bool */;
4070 val
* var5
/* : AImplicitSelfExpr */;
4071 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
4072 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
4073 short int var6
/* : Bool */;
4076 val
* var9
/* : AIssetAttrExpr */;
4077 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
4078 long var10
/* : Int */;
4079 long var11
/* : Int */;
4082 var_node_list
= var
;
4083 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4084 var_nodearraylist3
= var1
;
4085 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4086 var_nodearraylist2
= var2
;
4087 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4088 var_nodearraylist1
= var3
;
4089 var_tkwissetnode2
= var_nodearraylist1
;
4090 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
4091 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
4092 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
4093 if(var_tkwissetnode2
== NULL
) {
4096 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
4099 var4
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
4103 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28592);
4106 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
4107 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
4108 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
4109 var_pexprnode3
= var5
;
4110 var_tattridnode4
= var_nodearraylist3
;
4111 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
4112 cltype7
= type_nullable_parser_nodes__TAttrid
.color
;
4113 idtype8
= type_nullable_parser_nodes__TAttrid
.id
;
4114 if(var_tattridnode4
== NULL
) {
4117 if(cltype7
>= var_tattridnode4
->type
->table_size
) {
4120 var6
= var_tattridnode4
->type
->type_table
[cltype7
] == idtype8
;
4124 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28595);
4127 var9
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
4128 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var9
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var9:AIssetAttrExpr>*/;
4129 CHECK_NEW_parser_nodes__AIssetAttrExpr(var9
);
4130 var_pexprnode1
= var9
;
4131 var_node_list
= var_pexprnode1
;
4132 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction802> */
4133 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
4134 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
4137 /* method parser#ReduceAction802#action for (self: Object, Parser) */
4138 void VIRTUAL_parser__ReduceAction802__action(val
* self
, val
* p0
) {
4139 parser__ReduceAction802__action(self
, p0
);
4142 /* method parser#ReduceAction803#action for (self: ReduceAction803, Parser) */
4143 void parser__ReduceAction803__action(val
* self
, val
* p0
) {
4144 val
* var_p
/* var p: Parser */;
4145 val
* var
/* : null */;
4146 val
* var_node_list
/* var node_list: nullable Object */;
4147 val
* var1
/* : nullable Object */;
4148 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4149 val
* var2
/* : nullable Object */;
4150 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4151 val
* var3
/* : nullable Object */;
4152 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4153 val
* var4
/* : nullable Object */;
4154 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4155 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
4156 short int var5
/* : Bool */;
4159 val
* var6
/* : AImplicitSelfExpr */;
4160 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
4161 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
4162 short int var7
/* : Bool */;
4165 val
* var10
/* : AIssetAttrExpr */;
4166 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
4167 long var11
/* : Int */;
4168 long var12
/* : Int */;
4171 var_node_list
= var
;
4172 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4173 var_nodearraylist4
= var1
;
4174 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4175 var_nodearraylist3
= var2
;
4176 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4177 var_nodearraylist2
= var3
;
4178 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4179 var_nodearraylist1
= var4
;
4180 var_tkwissetnode2
= var_nodearraylist1
;
4181 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
4182 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
4183 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
4184 if(var_tkwissetnode2
== NULL
) {
4187 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
4190 var5
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
4194 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28615);
4197 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
4198 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
4199 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
4200 var_pexprnode3
= var6
;
4201 var_tattridnode4
= var_nodearraylist4
;
4202 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
4203 cltype8
= type_nullable_parser_nodes__TAttrid
.color
;
4204 idtype9
= type_nullable_parser_nodes__TAttrid
.id
;
4205 if(var_tattridnode4
== NULL
) {
4208 if(cltype8
>= var_tattridnode4
->type
->table_size
) {
4211 var7
= var_tattridnode4
->type
->type_table
[cltype8
] == idtype9
;
4215 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28618);
4218 var10
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
4219 ((void (*)(val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var10
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var10:AIssetAttrExpr>*/;
4220 CHECK_NEW_parser_nodes__AIssetAttrExpr(var10
);
4221 var_pexprnode1
= var10
;
4222 var_node_list
= var_pexprnode1
;
4223 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction803> */
4224 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
4225 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
4228 /* method parser#ReduceAction803#action for (self: Object, Parser) */
4229 void VIRTUAL_parser__ReduceAction803__action(val
* self
, val
* p0
) {
4230 parser__ReduceAction803__action(self
, p0
);
4233 /* method parser#ReduceAction805#action for (self: ReduceAction805, Parser) */
4234 void parser__ReduceAction805__action(val
* self
, val
* p0
) {
4235 val
* var_p
/* var p: Parser */;
4236 val
* var
/* : null */;
4237 val
* var_node_list
/* var node_list: nullable Object */;
4238 val
* var1
/* : nullable Object */;
4239 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4240 val
* var2
/* : nullable Object */;
4241 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4242 val
* var3
/* : nullable Object */;
4243 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4244 val
* var4
/* : nullable Object */;
4245 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4246 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
4247 short int var5
/* : Bool */;
4250 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
4251 short int var6
/* : Bool */;
4254 val
* var9
/* : AAttrExpr */;
4255 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
4256 long var10
/* : Int */;
4257 long var11
/* : Int */;
4260 var_node_list
= var
;
4261 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4262 var_nodearraylist4
= var1
;
4263 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4264 var_nodearraylist3
= var2
;
4265 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4266 var_nodearraylist2
= var3
;
4267 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4268 var_nodearraylist1
= var4
;
4269 var_pexprnode2
= var_nodearraylist1
;
4270 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
4271 cltype
= type_nullable_parser_nodes__AExpr
.color
;
4272 idtype
= type_nullable_parser_nodes__AExpr
.id
;
4273 if(var_pexprnode2
== NULL
) {
4276 if(cltype
>= var_pexprnode2
->type
->table_size
) {
4279 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
4283 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28638);
4286 var_tattridnode3
= var_nodearraylist4
;
4287 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
4288 cltype7
= type_nullable_parser_nodes__TAttrid
.color
;
4289 idtype8
= type_nullable_parser_nodes__TAttrid
.id
;
4290 if(var_tattridnode3
== NULL
) {
4293 if(cltype7
>= var_tattridnode3
->type
->table_size
) {
4296 var6
= var_tattridnode3
->type
->type_table
[cltype7
] == idtype8
;
4300 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28640);
4303 var9
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
4304 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var9
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var9:AAttrExpr>*/;
4305 CHECK_NEW_parser_nodes__AAttrExpr(var9
);
4306 var_pexprnode1
= var9
;
4307 var_node_list
= var_pexprnode1
;
4308 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction805> */
4309 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
4310 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
4313 /* method parser#ReduceAction805#action for (self: Object, Parser) */
4314 void VIRTUAL_parser__ReduceAction805__action(val
* self
, val
* p0
) {
4315 parser__ReduceAction805__action(self
, p0
);
4318 /* method parser#ReduceAction806#action for (self: ReduceAction806, Parser) */
4319 void parser__ReduceAction806__action(val
* self
, val
* p0
) {
4320 val
* var_p
/* var p: Parser */;
4321 val
* var
/* : null */;
4322 val
* var_node_list
/* var node_list: nullable Object */;
4323 val
* var1
/* : nullable Object */;
4324 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4325 val
* var2
/* : AImplicitSelfExpr */;
4326 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
4327 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
4328 short int var3
/* : Bool */;
4331 val
* var4
/* : AAttrExpr */;
4332 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
4333 long var5
/* : Int */;
4334 long var6
/* : Int */;
4337 var_node_list
= var
;
4338 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4339 var_nodearraylist1
= var1
;
4340 var2
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
4341 ((void (*)(val
*))(var2
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var2
) /* init_aimplicitselfexpr on <var2:AImplicitSelfExpr>*/;
4342 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var2
);
4343 var_pexprnode2
= var2
;
4344 var_tattridnode3
= var_nodearraylist1
;
4345 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
4346 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
4347 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
4348 if(var_tattridnode3
== NULL
) {
4351 if(cltype
>= var_tattridnode3
->type
->table_size
) {
4354 var3
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
4358 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28657);
4361 var4
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
4362 ((void (*)(val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var4
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var4:AAttrExpr>*/;
4363 CHECK_NEW_parser_nodes__AAttrExpr(var4
);
4364 var_pexprnode1
= var4
;
4365 var_node_list
= var_pexprnode1
;
4366 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction806> */
4367 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
4368 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
4371 /* method parser#ReduceAction806#action for (self: Object, Parser) */
4372 void VIRTUAL_parser__ReduceAction806__action(val
* self
, val
* p0
) {
4373 parser__ReduceAction806__action(self
, p0
);
4376 /* method parser#ReduceAction807#action for (self: ReduceAction807, Parser) */
4377 void parser__ReduceAction807__action(val
* self
, val
* p0
) {
4378 val
* var_p
/* var p: Parser */;
4379 val
* var
/* : null */;
4380 val
* var_node_list
/* var node_list: nullable Object */;
4381 val
* var1
/* : nullable Object */;
4382 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4383 val
* var2
/* : nullable Object */;
4384 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4385 val
* var3
/* : nullable Object */;
4386 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4387 val
* var4
/* : nullable Object */;
4388 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4389 val
* var5
/* : nullable Object */;
4390 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4391 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
4392 short int var6
/* : Bool */;
4395 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
4396 short int var7
/* : Bool */;
4399 val
* var10
/* : AAttrExpr */;
4400 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
4401 long var11
/* : Int */;
4402 long var12
/* : Int */;
4405 var_node_list
= var
;
4406 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4407 var_nodearraylist5
= var1
;
4408 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4409 var_nodearraylist4
= var2
;
4410 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4411 var_nodearraylist3
= var3
;
4412 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4413 var_nodearraylist2
= var4
;
4414 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4415 var_nodearraylist1
= var5
;
4416 var_pexprnode2
= var_nodearraylist1
;
4417 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
4418 cltype
= type_nullable_parser_nodes__AExpr
.color
;
4419 idtype
= type_nullable_parser_nodes__AExpr
.id
;
4420 if(var_pexprnode2
== NULL
) {
4423 if(cltype
>= var_pexprnode2
->type
->table_size
) {
4426 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
4430 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28677);
4433 var_tattridnode3
= var_nodearraylist5
;
4434 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
4435 cltype8
= type_nullable_parser_nodes__TAttrid
.color
;
4436 idtype9
= type_nullable_parser_nodes__TAttrid
.id
;
4437 if(var_tattridnode3
== NULL
) {
4440 if(cltype8
>= var_tattridnode3
->type
->table_size
) {
4443 var7
= var_tattridnode3
->type
->type_table
[cltype8
] == idtype9
;
4447 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28679);
4450 var10
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
4451 ((void (*)(val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var10
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var10:AAttrExpr>*/;
4452 CHECK_NEW_parser_nodes__AAttrExpr(var10
);
4453 var_pexprnode1
= var10
;
4454 var_node_list
= var_pexprnode1
;
4455 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction807> */
4456 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
4457 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
4460 /* method parser#ReduceAction807#action for (self: Object, Parser) */
4461 void VIRTUAL_parser__ReduceAction807__action(val
* self
, val
* p0
) {
4462 parser__ReduceAction807__action(self
, p0
);
4465 /* method parser#ReduceAction808#action for (self: ReduceAction808, Parser) */
4466 void parser__ReduceAction808__action(val
* self
, val
* p0
) {
4467 val
* var_p
/* var p: Parser */;
4468 val
* var
/* : null */;
4469 val
* var_node_list
/* var node_list: nullable Object */;
4470 val
* var1
/* : nullable Object */;
4471 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4472 val
* var2
/* : nullable Object */;
4473 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4474 val
* var3
/* : nullable Object */;
4475 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4476 val
* var4
/* : nullable Object */;
4477 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4478 val
* var5
/* : nullable Object */;
4479 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4480 val
* var6
/* : nullable Object */;
4481 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4482 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
4483 short int var7
/* : Bool */;
4486 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
4487 short int var8
/* : Bool */;
4490 val
* var11
/* : AAttrExpr */;
4491 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
4492 long var12
/* : Int */;
4493 long var13
/* : Int */;
4496 var_node_list
= var
;
4497 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4498 var_nodearraylist6
= var1
;
4499 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4500 var_nodearraylist5
= var2
;
4501 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4502 var_nodearraylist4
= var3
;
4503 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4504 var_nodearraylist3
= var4
;
4505 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4506 var_nodearraylist2
= var5
;
4507 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4508 var_nodearraylist1
= var6
;
4509 var_pexprnode2
= var_nodearraylist1
;
4510 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
4511 cltype
= type_nullable_parser_nodes__AExpr
.color
;
4512 idtype
= type_nullable_parser_nodes__AExpr
.id
;
4513 if(var_pexprnode2
== NULL
) {
4516 if(cltype
>= var_pexprnode2
->type
->table_size
) {
4519 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
4523 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28700);
4526 var_tattridnode3
= var_nodearraylist6
;
4527 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
4528 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
4529 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
4530 if(var_tattridnode3
== NULL
) {
4533 if(cltype9
>= var_tattridnode3
->type
->table_size
) {
4536 var8
= var_tattridnode3
->type
->type_table
[cltype9
] == idtype10
;
4540 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28702);
4543 var11
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
4544 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var11
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var11:AAttrExpr>*/;
4545 CHECK_NEW_parser_nodes__AAttrExpr(var11
);
4546 var_pexprnode1
= var11
;
4547 var_node_list
= var_pexprnode1
;
4548 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction808> */
4549 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
4550 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
4553 /* method parser#ReduceAction808#action for (self: Object, Parser) */
4554 void VIRTUAL_parser__ReduceAction808__action(val
* self
, val
* p0
) {
4555 parser__ReduceAction808__action(self
, p0
);
4558 /* method parser#ReduceAction810#action for (self: ReduceAction810, Parser) */
4559 void parser__ReduceAction810__action(val
* self
, val
* p0
) {
4560 val
* var_p
/* var p: Parser */;
4561 val
* var
/* : null */;
4562 val
* var_node_list
/* var node_list: nullable Object */;
4563 val
* var1
/* : nullable Object */;
4564 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4565 val
* var2
/* : nullable Object */;
4566 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4567 val
* var3
/* : AImplicitSelfExpr */;
4568 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
4569 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
4570 short int var4
/* : Bool */;
4573 val
* var5
/* : AAttrExpr */;
4574 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
4575 long var6
/* : Int */;
4576 long var7
/* : Int */;
4579 var_node_list
= var
;
4580 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4581 var_nodearraylist2
= var1
;
4582 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4583 var_nodearraylist1
= var2
;
4584 var3
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
4585 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var3
) /* init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/;
4586 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var3
);
4587 var_pexprnode2
= var3
;
4588 var_tattridnode3
= var_nodearraylist2
;
4589 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
4590 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
4591 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
4592 if(var_tattridnode3
== NULL
) {
4595 if(cltype
>= var_tattridnode3
->type
->table_size
) {
4598 var4
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
4602 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28720);
4605 var5
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
4606 ((void (*)(val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var5
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var5:AAttrExpr>*/;
4607 CHECK_NEW_parser_nodes__AAttrExpr(var5
);
4608 var_pexprnode1
= var5
;
4609 var_node_list
= var_pexprnode1
;
4610 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction810> */
4611 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
4612 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
4615 /* method parser#ReduceAction810#action for (self: Object, Parser) */
4616 void VIRTUAL_parser__ReduceAction810__action(val
* self
, val
* p0
) {
4617 parser__ReduceAction810__action(self
, p0
);
4620 /* method parser#ReduceAction811#action for (self: ReduceAction811, Parser) */
4621 void parser__ReduceAction811__action(val
* self
, val
* p0
) {
4622 val
* var_p
/* var p: Parser */;
4623 val
* var
/* : null */;
4624 val
* var_node_list
/* var node_list: nullable Object */;
4625 val
* var1
/* : nullable Object */;
4626 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4627 val
* var2
/* : nullable Object */;
4628 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4629 val
* var3
/* : nullable Object */;
4630 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4631 val
* var4
/* : AImplicitSelfExpr */;
4632 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
4633 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
4634 short int var5
/* : Bool */;
4637 val
* var6
/* : AAttrExpr */;
4638 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
4639 long var7
/* : Int */;
4640 long var8
/* : Int */;
4643 var_node_list
= var
;
4644 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4645 var_nodearraylist3
= var1
;
4646 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4647 var_nodearraylist2
= var2
;
4648 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4649 var_nodearraylist1
= var3
;
4650 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
4651 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
4652 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
4653 var_pexprnode2
= var4
;
4654 var_tattridnode3
= var_nodearraylist3
;
4655 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
4656 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
4657 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
4658 if(var_tattridnode3
== NULL
) {
4661 if(cltype
>= var_tattridnode3
->type
->table_size
) {
4664 var5
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
4668 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28739);
4671 var6
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
4672 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var6
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var6:AAttrExpr>*/;
4673 CHECK_NEW_parser_nodes__AAttrExpr(var6
);
4674 var_pexprnode1
= var6
;
4675 var_node_list
= var_pexprnode1
;
4676 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction811> */
4677 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
4678 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
4681 /* method parser#ReduceAction811#action for (self: Object, Parser) */
4682 void VIRTUAL_parser__ReduceAction811__action(val
* self
, val
* p0
) {
4683 parser__ReduceAction811__action(self
, p0
);
4686 /* method parser#ReduceAction827#action for (self: ReduceAction827, Parser) */
4687 void parser__ReduceAction827__action(val
* self
, val
* p0
) {
4688 val
* var_p
/* var p: Parser */;
4689 val
* var
/* : null */;
4690 val
* var_node_list
/* var node_list: nullable Object */;
4691 val
* var1
/* : nullable Object */;
4692 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4693 val
* var2
/* : nullable Object */;
4694 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4695 val
* var3
/* : Array[Object] */;
4696 val
* var_listnode4
/* var listnode4: Array[Object] */;
4697 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
4698 short int var4
/* : Bool */;
4701 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
4702 short int var5
/* : Bool */;
4705 val
* var8
/* : ABraExpr */;
4706 val
* var_pexprnode1
/* var pexprnode1: nullable ABraExpr */;
4707 long var9
/* : Int */;
4708 long var10
/* : Int */;
4711 var_node_list
= var
;
4712 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4713 var_nodearraylist2
= var1
;
4714 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4715 var_nodearraylist1
= var2
;
4716 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
4717 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
4718 CHECK_NEW_array__Array(var3
);
4719 var_listnode4
= var3
;
4720 var_pexprnode2
= var_nodearraylist1
;
4721 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
4722 cltype
= type_nullable_parser_nodes__AExpr
.color
;
4723 idtype
= type_nullable_parser_nodes__AExpr
.id
;
4724 if(var_pexprnode2
== NULL
) {
4727 if(cltype
>= var_pexprnode2
->type
->table_size
) {
4730 var4
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
4734 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28757);
4737 var_pexprsnode3
= var_nodearraylist2
;
4738 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
4739 cltype6
= type_nullable_parser_nodes__AExprs
.color
;
4740 idtype7
= type_nullable_parser_nodes__AExprs
.id
;
4741 if(var_pexprsnode3
== NULL
) {
4744 if(cltype6
>= var_pexprsnode3
->type
->table_size
) {
4747 var5
= var_pexprsnode3
->type
->type_table
[cltype6
] == idtype7
;
4751 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28759);
4754 var8
= NEW_parser_nodes__ABraExpr(&type_parser_nodes__ABraExpr
);
4755 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__ABraExpr__init_abraexpr
]))(var8
, var_pexprnode2
, var_pexprsnode3
, var_listnode4
) /* init_abraexpr on <var8:ABraExpr>*/;
4756 CHECK_NEW_parser_nodes__ABraExpr(var8
);
4757 var_pexprnode1
= var8
;
4758 var_node_list
= var_pexprnode1
;
4759 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction827> */
4760 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
4761 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
4764 /* method parser#ReduceAction827#action for (self: Object, Parser) */
4765 void VIRTUAL_parser__ReduceAction827__action(val
* self
, val
* p0
) {
4766 parser__ReduceAction827__action(self
, p0
);
4769 /* method parser#ReduceAction828#action for (self: ReduceAction828, Parser) */
4770 void parser__ReduceAction828__action(val
* self
, val
* p0
) {
4771 val
* var_p
/* var p: Parser */;
4772 val
* var
/* : null */;
4773 val
* var_node_list
/* var node_list: nullable Object */;
4774 val
* var1
/* : nullable Object */;
4775 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4776 val
* var2
/* : nullable Object */;
4777 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4778 val
* var3
/* : nullable Object */;
4779 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4780 val
* var4
/* : nullable Object */;
4781 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4782 val
* var5
/* : nullable Object */;
4783 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4784 val
* var6
/* : nullable Object */;
4785 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4786 val
* var7
/* : nullable Object */;
4787 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4788 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
4789 short int var8
/* : Bool */;
4792 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
4793 short int var9
/* : Bool */;
4796 val
* var_tidnode4
/* var tidnode4: nullable Object */;
4797 short int var12
/* : Bool */;
4800 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
4801 short int var15
/* : Bool */;
4804 val
* var18
/* : ANewExpr */;
4805 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
4806 long var19
/* : Int */;
4807 long var20
/* : Int */;
4810 var_node_list
= var
;
4811 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4812 var_nodearraylist7
= var1
;
4813 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4814 var_nodearraylist6
= var2
;
4815 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4816 var_nodearraylist5
= var3
;
4817 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4818 var_nodearraylist4
= var4
;
4819 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4820 var_nodearraylist3
= var5
;
4821 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4822 var_nodearraylist2
= var6
;
4823 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4824 var_nodearraylist1
= var7
;
4825 var_tkwnewnode2
= var_nodearraylist1
;
4826 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
4827 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
4828 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
4829 if(var_tkwnewnode2
== NULL
) {
4832 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
4835 var8
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
4839 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28782);
4842 var_ptypenode3
= var_nodearraylist3
;
4843 /* <var_ptypenode3:nullable Object> isa nullable AType */
4844 cltype10
= type_nullable_parser_nodes__AType
.color
;
4845 idtype11
= type_nullable_parser_nodes__AType
.id
;
4846 if(var_ptypenode3
== NULL
) {
4849 if(cltype10
>= var_ptypenode3
->type
->table_size
) {
4852 var9
= var_ptypenode3
->type
->type_table
[cltype10
] == idtype11
;
4856 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28784);
4859 var_tidnode4
= var_nodearraylist6
;
4860 /* <var_tidnode4:nullable Object> isa nullable TId */
4861 cltype13
= type_nullable_parser_nodes__TId
.color
;
4862 idtype14
= type_nullable_parser_nodes__TId
.id
;
4863 if(var_tidnode4
== NULL
) {
4866 if(cltype13
>= var_tidnode4
->type
->table_size
) {
4869 var12
= var_tidnode4
->type
->type_table
[cltype13
] == idtype14
;
4873 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28786);
4876 var_pexprsnode5
= var_nodearraylist7
;
4877 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
4878 cltype16
= type_nullable_parser_nodes__AExprs
.color
;
4879 idtype17
= type_nullable_parser_nodes__AExprs
.id
;
4880 if(var_pexprsnode5
== NULL
) {
4883 if(cltype16
>= var_pexprsnode5
->type
->table_size
) {
4886 var15
= var_pexprsnode5
->type
->type_table
[cltype16
] == idtype17
;
4890 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28788);
4893 var18
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
4894 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__ANewExpr__init_anewexpr
]))(var18
, var_tkwnewnode2
, var_ptypenode3
, var_tidnode4
, var_pexprsnode5
) /* init_anewexpr on <var18:ANewExpr>*/;
4895 CHECK_NEW_parser_nodes__ANewExpr(var18
);
4896 var_pexprnode1
= var18
;
4897 var_node_list
= var_pexprnode1
;
4898 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction828> */
4899 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
4900 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
4903 /* method parser#ReduceAction828#action for (self: Object, Parser) */
4904 void VIRTUAL_parser__ReduceAction828__action(val
* self
, val
* p0
) {
4905 parser__ReduceAction828__action(self
, p0
);
4908 /* method parser#ReduceAction829#action for (self: ReduceAction829, Parser) */
4909 void parser__ReduceAction829__action(val
* self
, val
* p0
) {
4910 val
* var_p
/* var p: Parser */;
4911 val
* var
/* : null */;
4912 val
* var_node_list
/* var node_list: nullable Object */;
4913 val
* var1
/* : nullable Object */;
4914 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4915 val
* var2
/* : nullable Object */;
4916 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4917 val
* var3
/* : nullable Object */;
4918 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4919 val
* var4
/* : nullable Object */;
4920 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4921 val
* var5
/* : nullable Object */;
4922 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4923 val
* var6
/* : nullable Object */;
4924 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4925 val
* var7
/* : nullable Object */;
4926 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4927 val
* var8
/* : nullable Object */;
4928 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4929 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
4930 short int var9
/* : Bool */;
4933 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
4934 short int var10
/* : Bool */;
4937 val
* var_tidnode4
/* var tidnode4: nullable Object */;
4938 short int var13
/* : Bool */;
4941 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
4942 short int var16
/* : Bool */;
4945 val
* var19
/* : ANewExpr */;
4946 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
4947 long var20
/* : Int */;
4948 long var21
/* : Int */;
4951 var_node_list
= var
;
4952 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4953 var_nodearraylist8
= var1
;
4954 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4955 var_nodearraylist7
= var2
;
4956 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4957 var_nodearraylist6
= var3
;
4958 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4959 var_nodearraylist5
= var4
;
4960 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4961 var_nodearraylist4
= var5
;
4962 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4963 var_nodearraylist3
= var6
;
4964 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4965 var_nodearraylist2
= var7
;
4966 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4967 var_nodearraylist1
= var8
;
4968 var_tkwnewnode2
= var_nodearraylist1
;
4969 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
4970 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
4971 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
4972 if(var_tkwnewnode2
== NULL
) {
4975 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
4978 var9
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
4982 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28813);
4985 var_ptypenode3
= var_nodearraylist3
;
4986 /* <var_ptypenode3:nullable Object> isa nullable AType */
4987 cltype11
= type_nullable_parser_nodes__AType
.color
;
4988 idtype12
= type_nullable_parser_nodes__AType
.id
;
4989 if(var_ptypenode3
== NULL
) {
4992 if(cltype11
>= var_ptypenode3
->type
->table_size
) {
4995 var10
= var_ptypenode3
->type
->type_table
[cltype11
] == idtype12
;
4999 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28815);
5002 var_tidnode4
= var_nodearraylist7
;
5003 /* <var_tidnode4:nullable Object> isa nullable TId */
5004 cltype14
= type_nullable_parser_nodes__TId
.color
;
5005 idtype15
= type_nullable_parser_nodes__TId
.id
;
5006 if(var_tidnode4
== NULL
) {
5009 if(cltype14
>= var_tidnode4
->type
->table_size
) {
5012 var13
= var_tidnode4
->type
->type_table
[cltype14
] == idtype15
;
5016 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28817);
5019 var_pexprsnode5
= var_nodearraylist8
;
5020 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
5021 cltype17
= type_nullable_parser_nodes__AExprs
.color
;
5022 idtype18
= type_nullable_parser_nodes__AExprs
.id
;
5023 if(var_pexprsnode5
== NULL
) {
5026 if(cltype17
>= var_pexprsnode5
->type
->table_size
) {
5029 var16
= var_pexprsnode5
->type
->type_table
[cltype17
] == idtype18
;
5033 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28819);
5036 var19
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
5037 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__ANewExpr__init_anewexpr
]))(var19
, var_tkwnewnode2
, var_ptypenode3
, var_tidnode4
, var_pexprsnode5
) /* init_anewexpr on <var19:ANewExpr>*/;
5038 CHECK_NEW_parser_nodes__ANewExpr(var19
);
5039 var_pexprnode1
= var19
;
5040 var_node_list
= var_pexprnode1
;
5041 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction829> */
5042 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
5043 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
5046 /* method parser#ReduceAction829#action for (self: Object, Parser) */
5047 void VIRTUAL_parser__ReduceAction829__action(val
* self
, val
* p0
) {
5048 parser__ReduceAction829__action(self
, p0
);
5051 /* method parser#ReduceAction830#action for (self: ReduceAction830, Parser) */
5052 void parser__ReduceAction830__action(val
* self
, val
* p0
) {
5053 val
* var_p
/* var p: Parser */;
5054 val
* var
/* : null */;
5055 val
* var_node_list
/* var node_list: nullable Object */;
5056 val
* var1
/* : nullable Object */;
5057 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5058 val
* var2
/* : nullable Object */;
5059 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5060 val
* var3
/* : nullable Object */;
5061 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5062 val
* var4
/* : nullable Object */;
5063 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5064 val
* var5
/* : nullable Object */;
5065 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5066 val
* var6
/* : nullable Object */;
5067 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5068 val
* var7
/* : nullable Object */;
5069 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5070 val
* var8
/* : nullable Object */;
5071 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5072 val
* var9
/* : nullable Object */;
5073 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5074 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
5075 short int var10
/* : Bool */;
5078 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
5079 short int var11
/* : Bool */;
5082 val
* var_tidnode4
/* var tidnode4: nullable Object */;
5083 short int var14
/* : Bool */;
5086 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
5087 short int var17
/* : Bool */;
5090 val
* var20
/* : ANewExpr */;
5091 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
5092 long var21
/* : Int */;
5093 long var22
/* : Int */;
5096 var_node_list
= var
;
5097 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5098 var_nodearraylist9
= var1
;
5099 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5100 var_nodearraylist8
= var2
;
5101 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5102 var_nodearraylist7
= var3
;
5103 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5104 var_nodearraylist6
= var4
;
5105 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5106 var_nodearraylist5
= var5
;
5107 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5108 var_nodearraylist4
= var6
;
5109 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5110 var_nodearraylist3
= var7
;
5111 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5112 var_nodearraylist2
= var8
;
5113 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5114 var_nodearraylist1
= var9
;
5115 var_tkwnewnode2
= var_nodearraylist1
;
5116 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
5117 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
5118 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
5119 if(var_tkwnewnode2
== NULL
) {
5122 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
5125 var10
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
5129 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28845);
5132 var_ptypenode3
= var_nodearraylist3
;
5133 /* <var_ptypenode3:nullable Object> isa nullable AType */
5134 cltype12
= type_nullable_parser_nodes__AType
.color
;
5135 idtype13
= type_nullable_parser_nodes__AType
.id
;
5136 if(var_ptypenode3
== NULL
) {
5139 if(cltype12
>= var_ptypenode3
->type
->table_size
) {
5142 var11
= var_ptypenode3
->type
->type_table
[cltype12
] == idtype13
;
5146 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28847);
5149 var_tidnode4
= var_nodearraylist8
;
5150 /* <var_tidnode4:nullable Object> isa nullable TId */
5151 cltype15
= type_nullable_parser_nodes__TId
.color
;
5152 idtype16
= type_nullable_parser_nodes__TId
.id
;
5153 if(var_tidnode4
== NULL
) {
5156 if(cltype15
>= var_tidnode4
->type
->table_size
) {
5159 var14
= var_tidnode4
->type
->type_table
[cltype15
] == idtype16
;
5163 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28849);
5166 var_pexprsnode5
= var_nodearraylist9
;
5167 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
5168 cltype18
= type_nullable_parser_nodes__AExprs
.color
;
5169 idtype19
= type_nullable_parser_nodes__AExprs
.id
;
5170 if(var_pexprsnode5
== NULL
) {
5173 if(cltype18
>= var_pexprsnode5
->type
->table_size
) {
5176 var17
= var_pexprsnode5
->type
->type_table
[cltype18
] == idtype19
;
5180 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28851);
5183 var20
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
5184 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ANewExpr__init_anewexpr
]))(var20
, var_tkwnewnode2
, var_ptypenode3
, var_tidnode4
, var_pexprsnode5
) /* init_anewexpr on <var20:ANewExpr>*/;
5185 CHECK_NEW_parser_nodes__ANewExpr(var20
);
5186 var_pexprnode1
= var20
;
5187 var_node_list
= var_pexprnode1
;
5188 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction830> */
5189 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
5190 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
5193 /* method parser#ReduceAction830#action for (self: Object, Parser) */
5194 void VIRTUAL_parser__ReduceAction830__action(val
* self
, val
* p0
) {
5195 parser__ReduceAction830__action(self
, p0
);
5198 /* method parser#ReduceAction832#action for (self: ReduceAction832, Parser) */
5199 void parser__ReduceAction832__action(val
* self
, val
* p0
) {
5200 val
* var_p
/* var p: Parser */;
5201 val
* var
/* : null */;
5202 val
* var_node_list
/* var node_list: nullable Object */;
5203 val
* var1
/* : nullable Object */;
5204 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5205 val
* var2
/* : nullable Object */;
5206 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5207 val
* var3
/* : nullable Object */;
5208 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5209 val
* var4
/* : nullable Object */;
5210 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5211 val
* var5
/* : nullable Object */;
5212 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5213 val
* var6
/* : nullable Object */;
5214 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5215 val
* var7
/* : nullable Object */;
5216 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5217 val
* var8
/* : nullable Object */;
5218 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5219 val
* var9
/* : nullable Object */;
5220 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5221 val
* var_tobranode2
/* var tobranode2: nullable Object */;
5222 short int var10
/* : Bool */;
5225 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5226 short int var11
/* : Bool */;
5229 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
5230 short int var14
/* : Bool */;
5233 val
* var_tcbranode5
/* var tcbranode5: nullable Object */;
5234 short int var17
/* : Bool */;
5237 val
* var20
/* : ACrangeExpr */;
5238 val
* var21
/* : null */;
5239 val
* var_pexprnode1
/* var pexprnode1: nullable ACrangeExpr */;
5240 long var22
/* : Int */;
5241 long var23
/* : Int */;
5244 var_node_list
= var
;
5245 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5246 var_nodearraylist9
= var1
;
5247 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5248 var_nodearraylist8
= var2
;
5249 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5250 var_nodearraylist7
= var3
;
5251 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5252 var_nodearraylist6
= var4
;
5253 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5254 var_nodearraylist5
= var5
;
5255 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5256 var_nodearraylist4
= var6
;
5257 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5258 var_nodearraylist3
= var7
;
5259 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5260 var_nodearraylist2
= var8
;
5261 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5262 var_nodearraylist1
= var9
;
5263 var_tobranode2
= var_nodearraylist1
;
5264 /* <var_tobranode2:nullable Object> isa nullable TObra */
5265 cltype
= type_nullable_parser_nodes__TObra
.color
;
5266 idtype
= type_nullable_parser_nodes__TObra
.id
;
5267 if(var_tobranode2
== NULL
) {
5270 if(cltype
>= var_tobranode2
->type
->table_size
) {
5273 var10
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
5277 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28877);
5280 var_pexprnode3
= var_nodearraylist3
;
5281 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5282 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
5283 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
5284 if(var_pexprnode3
== NULL
) {
5287 if(cltype12
>= var_pexprnode3
->type
->table_size
) {
5290 var11
= var_pexprnode3
->type
->type_table
[cltype12
] == idtype13
;
5294 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28879);
5297 var_pexprnode4
= var_nodearraylist7
;
5298 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
5299 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
5300 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
5301 if(var_pexprnode4
== NULL
) {
5304 if(cltype15
>= var_pexprnode4
->type
->table_size
) {
5307 var14
= var_pexprnode4
->type
->type_table
[cltype15
] == idtype16
;
5311 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28881);
5314 var_tcbranode5
= var_nodearraylist9
;
5315 /* <var_tcbranode5:nullable Object> isa nullable TCbra */
5316 cltype18
= type_nullable_parser_nodes__TCbra
.color
;
5317 idtype19
= type_nullable_parser_nodes__TCbra
.id
;
5318 if(var_tcbranode5
== NULL
) {
5321 if(cltype18
>= var_tcbranode5
->type
->table_size
) {
5324 var17
= var_tcbranode5
->type
->type_table
[cltype18
] == idtype19
;
5328 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28883);
5331 var20
= NEW_parser_nodes__ACrangeExpr(&type_parser_nodes__ACrangeExpr
);
5333 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ACrangeExpr__init_acrangeexpr
]))(var20
, var_tobranode2
, var_pexprnode3
, var_pexprnode4
, var_tcbranode5
, var21
) /* init_acrangeexpr on <var20:ACrangeExpr>*/;
5334 CHECK_NEW_parser_nodes__ACrangeExpr(var20
);
5335 var_pexprnode1
= var20
;
5336 var_node_list
= var_pexprnode1
;
5337 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction832> */
5338 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
5339 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
5342 /* method parser#ReduceAction832#action for (self: Object, Parser) */
5343 void VIRTUAL_parser__ReduceAction832__action(val
* self
, val
* p0
) {
5344 parser__ReduceAction832__action(self
, p0
);
5347 /* method parser#ReduceAction833#action for (self: ReduceAction833, Parser) */
5348 void parser__ReduceAction833__action(val
* self
, val
* p0
) {
5349 val
* var_p
/* var p: Parser */;
5350 val
* var
/* : null */;
5351 val
* var_node_list
/* var node_list: nullable Object */;
5352 val
* var1
/* : nullable Object */;
5353 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5354 val
* var2
/* : nullable Object */;
5355 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5356 val
* var3
/* : nullable Object */;
5357 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5358 val
* var4
/* : nullable Object */;
5359 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5360 val
* var5
/* : nullable Object */;
5361 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5362 val
* var6
/* : nullable Object */;
5363 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5364 val
* var7
/* : nullable Object */;
5365 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5366 val
* var8
/* : nullable Object */;
5367 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5368 val
* var9
/* : nullable Object */;
5369 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5370 val
* var10
/* : nullable Object */;
5371 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5372 val
* var_tobranode2
/* var tobranode2: nullable Object */;
5373 short int var11
/* : Bool */;
5376 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5377 short int var12
/* : Bool */;
5380 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
5381 short int var15
/* : Bool */;
5384 val
* var_tcbranode5
/* var tcbranode5: nullable Object */;
5385 short int var18
/* : Bool */;
5388 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
5389 short int var21
/* : Bool */;
5392 val
* var24
/* : ACrangeExpr */;
5393 val
* var_pexprnode1
/* var pexprnode1: nullable ACrangeExpr */;
5394 long var25
/* : Int */;
5395 long var26
/* : Int */;
5398 var_node_list
= var
;
5399 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5400 var_nodearraylist10
= var1
;
5401 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5402 var_nodearraylist9
= var2
;
5403 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5404 var_nodearraylist8
= var3
;
5405 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5406 var_nodearraylist7
= var4
;
5407 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5408 var_nodearraylist6
= var5
;
5409 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5410 var_nodearraylist5
= var6
;
5411 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5412 var_nodearraylist4
= var7
;
5413 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5414 var_nodearraylist3
= var8
;
5415 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5416 var_nodearraylist2
= var9
;
5417 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5418 var_nodearraylist1
= var10
;
5419 var_tobranode2
= var_nodearraylist1
;
5420 /* <var_tobranode2:nullable Object> isa nullable TObra */
5421 cltype
= type_nullable_parser_nodes__TObra
.color
;
5422 idtype
= type_nullable_parser_nodes__TObra
.id
;
5423 if(var_tobranode2
== NULL
) {
5426 if(cltype
>= var_tobranode2
->type
->table_size
) {
5429 var11
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
5433 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28911);
5436 var_pexprnode3
= var_nodearraylist3
;
5437 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5438 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
5439 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
5440 if(var_pexprnode3
== NULL
) {
5443 if(cltype13
>= var_pexprnode3
->type
->table_size
) {
5446 var12
= var_pexprnode3
->type
->type_table
[cltype13
] == idtype14
;
5450 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28913);
5453 var_pexprnode4
= var_nodearraylist7
;
5454 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
5455 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
5456 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
5457 if(var_pexprnode4
== NULL
) {
5460 if(cltype16
>= var_pexprnode4
->type
->table_size
) {
5463 var15
= var_pexprnode4
->type
->type_table
[cltype16
] == idtype17
;
5467 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28915);
5470 var_tcbranode5
= var_nodearraylist9
;
5471 /* <var_tcbranode5:nullable Object> isa nullable TCbra */
5472 cltype19
= type_nullable_parser_nodes__TCbra
.color
;
5473 idtype20
= type_nullable_parser_nodes__TCbra
.id
;
5474 if(var_tcbranode5
== NULL
) {
5477 if(cltype19
>= var_tcbranode5
->type
->table_size
) {
5480 var18
= var_tcbranode5
->type
->type_table
[cltype19
] == idtype20
;
5484 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28917);
5487 var_pannotationsnode6
= var_nodearraylist10
;
5488 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
5489 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
5490 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
5491 if(var_pannotationsnode6
== NULL
) {
5494 if(cltype22
>= var_pannotationsnode6
->type
->table_size
) {
5497 var21
= var_pannotationsnode6
->type
->type_table
[cltype22
] == idtype23
;
5501 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28919);
5504 var24
= NEW_parser_nodes__ACrangeExpr(&type_parser_nodes__ACrangeExpr
);
5505 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var24
->class->vft
[COLOR_parser_prod__ACrangeExpr__init_acrangeexpr
]))(var24
, var_tobranode2
, var_pexprnode3
, var_pexprnode4
, var_tcbranode5
, var_pannotationsnode6
) /* init_acrangeexpr on <var24:ACrangeExpr>*/;
5506 CHECK_NEW_parser_nodes__ACrangeExpr(var24
);
5507 var_pexprnode1
= var24
;
5508 var_node_list
= var_pexprnode1
;
5509 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction833> */
5510 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
5511 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
5514 /* method parser#ReduceAction833#action for (self: Object, Parser) */
5515 void VIRTUAL_parser__ReduceAction833__action(val
* self
, val
* p0
) {
5516 parser__ReduceAction833__action(self
, p0
);
5519 /* method parser#ReduceAction834#action for (self: ReduceAction834, Parser) */
5520 void parser__ReduceAction834__action(val
* self
, val
* p0
) {
5521 val
* var_p
/* var p: Parser */;
5522 val
* var
/* : null */;
5523 val
* var_node_list
/* var node_list: nullable Object */;
5524 val
* var1
/* : nullable Object */;
5525 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5526 val
* var2
/* : nullable Object */;
5527 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5528 val
* var3
/* : nullable Object */;
5529 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5530 val
* var4
/* : nullable Object */;
5531 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5532 val
* var5
/* : nullable Object */;
5533 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5534 val
* var6
/* : nullable Object */;
5535 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5536 val
* var7
/* : nullable Object */;
5537 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5538 val
* var8
/* : nullable Object */;
5539 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5540 val
* var9
/* : nullable Object */;
5541 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5542 val
* var_tobranode2
/* var tobranode2: nullable Object */;
5543 short int var10
/* : Bool */;
5546 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5547 short int var11
/* : Bool */;
5550 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
5551 short int var14
/* : Bool */;
5554 val
* var_tobranode5
/* var tobranode5: nullable Object */;
5555 short int var17
/* : Bool */;
5558 val
* var20
/* : AOrangeExpr */;
5559 val
* var21
/* : null */;
5560 val
* var_pexprnode1
/* var pexprnode1: nullable AOrangeExpr */;
5561 long var22
/* : Int */;
5562 long var23
/* : Int */;
5565 var_node_list
= var
;
5566 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5567 var_nodearraylist9
= var1
;
5568 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5569 var_nodearraylist8
= var2
;
5570 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5571 var_nodearraylist7
= var3
;
5572 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5573 var_nodearraylist6
= var4
;
5574 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5575 var_nodearraylist5
= var5
;
5576 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5577 var_nodearraylist4
= var6
;
5578 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5579 var_nodearraylist3
= var7
;
5580 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5581 var_nodearraylist2
= var8
;
5582 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5583 var_nodearraylist1
= var9
;
5584 var_tobranode2
= var_nodearraylist1
;
5585 /* <var_tobranode2:nullable Object> isa nullable TObra */
5586 cltype
= type_nullable_parser_nodes__TObra
.color
;
5587 idtype
= type_nullable_parser_nodes__TObra
.id
;
5588 if(var_tobranode2
== NULL
) {
5591 if(cltype
>= var_tobranode2
->type
->table_size
) {
5594 var10
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
5598 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28946);
5601 var_pexprnode3
= var_nodearraylist3
;
5602 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5603 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
5604 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
5605 if(var_pexprnode3
== NULL
) {
5608 if(cltype12
>= var_pexprnode3
->type
->table_size
) {
5611 var11
= var_pexprnode3
->type
->type_table
[cltype12
] == idtype13
;
5615 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28948);
5618 var_pexprnode4
= var_nodearraylist7
;
5619 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
5620 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
5621 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
5622 if(var_pexprnode4
== NULL
) {
5625 if(cltype15
>= var_pexprnode4
->type
->table_size
) {
5628 var14
= var_pexprnode4
->type
->type_table
[cltype15
] == idtype16
;
5632 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28950);
5635 var_tobranode5
= var_nodearraylist9
;
5636 /* <var_tobranode5:nullable Object> isa nullable TObra */
5637 cltype18
= type_nullable_parser_nodes__TObra
.color
;
5638 idtype19
= type_nullable_parser_nodes__TObra
.id
;
5639 if(var_tobranode5
== NULL
) {
5642 if(cltype18
>= var_tobranode5
->type
->table_size
) {
5645 var17
= var_tobranode5
->type
->type_table
[cltype18
] == idtype19
;
5649 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28952);
5652 var20
= NEW_parser_nodes__AOrangeExpr(&type_parser_nodes__AOrangeExpr
);
5654 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__AOrangeExpr__init_aorangeexpr
]))(var20
, var_tobranode2
, var_pexprnode3
, var_pexprnode4
, var_tobranode5
, var21
) /* init_aorangeexpr on <var20:AOrangeExpr>*/;
5655 CHECK_NEW_parser_nodes__AOrangeExpr(var20
);
5656 var_pexprnode1
= var20
;
5657 var_node_list
= var_pexprnode1
;
5658 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction834> */
5659 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
5660 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
5663 /* method parser#ReduceAction834#action for (self: Object, Parser) */
5664 void VIRTUAL_parser__ReduceAction834__action(val
* self
, val
* p0
) {
5665 parser__ReduceAction834__action(self
, p0
);
5668 /* method parser#ReduceAction835#action for (self: ReduceAction835, Parser) */
5669 void parser__ReduceAction835__action(val
* self
, val
* p0
) {
5670 val
* var_p
/* var p: Parser */;
5671 val
* var
/* : null */;
5672 val
* var_node_list
/* var node_list: nullable Object */;
5673 val
* var1
/* : nullable Object */;
5674 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5675 val
* var2
/* : nullable Object */;
5676 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5677 val
* var3
/* : nullable Object */;
5678 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5679 val
* var4
/* : nullable Object */;
5680 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5681 val
* var5
/* : nullable Object */;
5682 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5683 val
* var6
/* : nullable Object */;
5684 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5685 val
* var7
/* : nullable Object */;
5686 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5687 val
* var8
/* : nullable Object */;
5688 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5689 val
* var9
/* : nullable Object */;
5690 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5691 val
* var10
/* : nullable Object */;
5692 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5693 val
* var_tobranode2
/* var tobranode2: nullable Object */;
5694 short int var11
/* : Bool */;
5697 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5698 short int var12
/* : Bool */;
5701 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
5702 short int var15
/* : Bool */;
5705 val
* var_tobranode5
/* var tobranode5: nullable Object */;
5706 short int var18
/* : Bool */;
5709 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
5710 short int var21
/* : Bool */;
5713 val
* var24
/* : AOrangeExpr */;
5714 val
* var_pexprnode1
/* var pexprnode1: nullable AOrangeExpr */;
5715 long var25
/* : Int */;
5716 long var26
/* : Int */;
5719 var_node_list
= var
;
5720 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5721 var_nodearraylist10
= var1
;
5722 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5723 var_nodearraylist9
= var2
;
5724 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5725 var_nodearraylist8
= var3
;
5726 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5727 var_nodearraylist7
= var4
;
5728 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5729 var_nodearraylist6
= var5
;
5730 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5731 var_nodearraylist5
= var6
;
5732 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5733 var_nodearraylist4
= var7
;
5734 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5735 var_nodearraylist3
= var8
;
5736 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5737 var_nodearraylist2
= var9
;
5738 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5739 var_nodearraylist1
= var10
;
5740 var_tobranode2
= var_nodearraylist1
;
5741 /* <var_tobranode2:nullable Object> isa nullable TObra */
5742 cltype
= type_nullable_parser_nodes__TObra
.color
;
5743 idtype
= type_nullable_parser_nodes__TObra
.id
;
5744 if(var_tobranode2
== NULL
) {
5747 if(cltype
>= var_tobranode2
->type
->table_size
) {
5750 var11
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
5754 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28980);
5757 var_pexprnode3
= var_nodearraylist3
;
5758 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5759 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
5760 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
5761 if(var_pexprnode3
== NULL
) {
5764 if(cltype13
>= var_pexprnode3
->type
->table_size
) {
5767 var12
= var_pexprnode3
->type
->type_table
[cltype13
] == idtype14
;
5771 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28982);
5774 var_pexprnode4
= var_nodearraylist7
;
5775 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
5776 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
5777 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
5778 if(var_pexprnode4
== NULL
) {
5781 if(cltype16
>= var_pexprnode4
->type
->table_size
) {
5784 var15
= var_pexprnode4
->type
->type_table
[cltype16
] == idtype17
;
5788 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28984);
5791 var_tobranode5
= var_nodearraylist9
;
5792 /* <var_tobranode5:nullable Object> isa nullable TObra */
5793 cltype19
= type_nullable_parser_nodes__TObra
.color
;
5794 idtype20
= type_nullable_parser_nodes__TObra
.id
;
5795 if(var_tobranode5
== NULL
) {
5798 if(cltype19
>= var_tobranode5
->type
->table_size
) {
5801 var18
= var_tobranode5
->type
->type_table
[cltype19
] == idtype20
;
5805 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28986);
5808 var_pannotationsnode6
= var_nodearraylist10
;
5809 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
5810 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
5811 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
5812 if(var_pannotationsnode6
== NULL
) {
5815 if(cltype22
>= var_pannotationsnode6
->type
->table_size
) {
5818 var21
= var_pannotationsnode6
->type
->type_table
[cltype22
] == idtype23
;
5822 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 28988);
5825 var24
= NEW_parser_nodes__AOrangeExpr(&type_parser_nodes__AOrangeExpr
);
5826 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var24
->class->vft
[COLOR_parser_prod__AOrangeExpr__init_aorangeexpr
]))(var24
, var_tobranode2
, var_pexprnode3
, var_pexprnode4
, var_tobranode5
, var_pannotationsnode6
) /* init_aorangeexpr on <var24:AOrangeExpr>*/;
5827 CHECK_NEW_parser_nodes__AOrangeExpr(var24
);
5828 var_pexprnode1
= var24
;
5829 var_node_list
= var_pexprnode1
;
5830 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction835> */
5831 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
5832 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
5835 /* method parser#ReduceAction835#action for (self: Object, Parser) */
5836 void VIRTUAL_parser__ReduceAction835__action(val
* self
, val
* p0
) {
5837 parser__ReduceAction835__action(self
, p0
);
5840 /* method parser#ReduceAction836#action for (self: ReduceAction836, Parser) */
5841 void parser__ReduceAction836__action(val
* self
, val
* p0
) {
5842 val
* var_p
/* var p: Parser */;
5843 val
* var
/* : null */;
5844 val
* var_node_list
/* var node_list: nullable Object */;
5845 val
* var1
/* : nullable Object */;
5846 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5847 val
* var_pexprsnode2
/* var pexprsnode2: nullable Object */;
5848 short int var2
/* : Bool */;
5851 val
* var3
/* : AArrayExpr */;
5852 val
* var4
/* : null */;
5853 val
* var_pexprnode1
/* var pexprnode1: nullable AArrayExpr */;
5854 long var5
/* : Int */;
5855 long var6
/* : Int */;
5858 var_node_list
= var
;
5859 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5860 var_nodearraylist1
= var1
;
5861 var_pexprsnode2
= var_nodearraylist1
;
5862 /* <var_pexprsnode2:nullable Object> isa nullable AExprs */
5863 cltype
= type_nullable_parser_nodes__AExprs
.color
;
5864 idtype
= type_nullable_parser_nodes__AExprs
.id
;
5865 if(var_pexprsnode2
== NULL
) {
5868 if(cltype
>= var_pexprsnode2
->type
->table_size
) {
5871 var2
= var_pexprsnode2
->type
->type_table
[cltype
] == idtype
;
5875 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29007);
5878 var3
= NEW_parser_nodes__AArrayExpr(&type_parser_nodes__AArrayExpr
);
5880 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AArrayExpr__init_aarrayexpr
]))(var3
, var_pexprsnode2
, var4
) /* init_aarrayexpr on <var3:AArrayExpr>*/;
5881 CHECK_NEW_parser_nodes__AArrayExpr(var3
);
5882 var_pexprnode1
= var3
;
5883 var_node_list
= var_pexprnode1
;
5884 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction836> */
5885 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
5886 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
5889 /* method parser#ReduceAction836#action for (self: Object, Parser) */
5890 void VIRTUAL_parser__ReduceAction836__action(val
* self
, val
* p0
) {
5891 parser__ReduceAction836__action(self
, p0
);
5894 /* method parser#ReduceAction837#action for (self: ReduceAction837, Parser) */
5895 void parser__ReduceAction837__action(val
* self
, val
* p0
) {
5896 val
* var_p
/* var p: Parser */;
5897 val
* var
/* : null */;
5898 val
* var_node_list
/* var node_list: nullable Object */;
5899 val
* var1
/* : nullable Object */;
5900 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5901 val
* var2
/* : nullable Object */;
5902 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5903 val
* var_pexprsnode2
/* var pexprsnode2: nullable Object */;
5904 short int var3
/* : Bool */;
5907 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
5908 short int var4
/* : Bool */;
5911 val
* var7
/* : AArrayExpr */;
5912 val
* var_pexprnode1
/* var pexprnode1: nullable AArrayExpr */;
5913 long var8
/* : Int */;
5914 long var9
/* : Int */;
5917 var_node_list
= var
;
5918 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5919 var_nodearraylist2
= var1
;
5920 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5921 var_nodearraylist1
= var2
;
5922 var_pexprsnode2
= var_nodearraylist1
;
5923 /* <var_pexprsnode2:nullable Object> isa nullable AExprs */
5924 cltype
= type_nullable_parser_nodes__AExprs
.color
;
5925 idtype
= type_nullable_parser_nodes__AExprs
.id
;
5926 if(var_pexprsnode2
== NULL
) {
5929 if(cltype
>= var_pexprsnode2
->type
->table_size
) {
5932 var3
= var_pexprsnode2
->type
->type_table
[cltype
] == idtype
;
5936 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29024);
5939 var_pannotationsnode3
= var_nodearraylist2
;
5940 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
5941 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
5942 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
5943 if(var_pannotationsnode3
== NULL
) {
5946 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
5949 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
5953 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29026);
5956 var7
= NEW_parser_nodes__AArrayExpr(&type_parser_nodes__AArrayExpr
);
5957 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AArrayExpr__init_aarrayexpr
]))(var7
, var_pexprsnode2
, var_pannotationsnode3
) /* init_aarrayexpr on <var7:AArrayExpr>*/;
5958 CHECK_NEW_parser_nodes__AArrayExpr(var7
);
5959 var_pexprnode1
= var7
;
5960 var_node_list
= var_pexprnode1
;
5961 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction837> */
5962 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
5963 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
5966 /* method parser#ReduceAction837#action for (self: Object, Parser) */
5967 void VIRTUAL_parser__ReduceAction837__action(val
* self
, val
* p0
) {
5968 parser__ReduceAction837__action(self
, p0
);
5971 /* method parser#ReduceAction838#action for (self: ReduceAction838, Parser) */
5972 void parser__ReduceAction838__action(val
* self
, val
* p0
) {
5973 val
* var_p
/* var p: Parser */;
5974 val
* var
/* : null */;
5975 val
* var_node_list
/* var node_list: nullable Object */;
5976 val
* var1
/* : nullable Object */;
5977 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5978 val
* var_tkwselfnode2
/* var tkwselfnode2: nullable Object */;
5979 short int var2
/* : Bool */;
5982 val
* var3
/* : ASelfExpr */;
5983 val
* var4
/* : null */;
5984 val
* var_pexprnode1
/* var pexprnode1: nullable ASelfExpr */;
5985 long var5
/* : Int */;
5986 long var6
/* : Int */;
5989 var_node_list
= var
;
5990 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5991 var_nodearraylist1
= var1
;
5992 var_tkwselfnode2
= var_nodearraylist1
;
5993 /* <var_tkwselfnode2:nullable Object> isa nullable TKwself */
5994 cltype
= type_nullable_parser_nodes__TKwself
.color
;
5995 idtype
= type_nullable_parser_nodes__TKwself
.id
;
5996 if(var_tkwselfnode2
== NULL
) {
5999 if(cltype
>= var_tkwselfnode2
->type
->table_size
) {
6002 var2
= var_tkwselfnode2
->type
->type_table
[cltype
] == idtype
;
6006 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29042);
6009 var3
= NEW_parser_nodes__ASelfExpr(&type_parser_nodes__ASelfExpr
);
6011 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASelfExpr__init_aselfexpr
]))(var3
, var_tkwselfnode2
, var4
) /* init_aselfexpr on <var3:ASelfExpr>*/;
6012 CHECK_NEW_parser_nodes__ASelfExpr(var3
);
6013 var_pexprnode1
= var3
;
6014 var_node_list
= var_pexprnode1
;
6015 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction838> */
6016 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6017 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6020 /* method parser#ReduceAction838#action for (self: Object, Parser) */
6021 void VIRTUAL_parser__ReduceAction838__action(val
* self
, val
* p0
) {
6022 parser__ReduceAction838__action(self
, p0
);
6025 /* method parser#ReduceAction839#action for (self: ReduceAction839, Parser) */
6026 void parser__ReduceAction839__action(val
* self
, val
* p0
) {
6027 val
* var_p
/* var p: Parser */;
6028 val
* var
/* : null */;
6029 val
* var_node_list
/* var node_list: nullable Object */;
6030 val
* var1
/* : nullable Object */;
6031 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6032 val
* var2
/* : nullable Object */;
6033 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6034 val
* var_tkwselfnode2
/* var tkwselfnode2: nullable Object */;
6035 short int var3
/* : Bool */;
6038 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6039 short int var4
/* : Bool */;
6042 val
* var7
/* : ASelfExpr */;
6043 val
* var_pexprnode1
/* var pexprnode1: nullable ASelfExpr */;
6044 long var8
/* : Int */;
6045 long var9
/* : Int */;
6048 var_node_list
= var
;
6049 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6050 var_nodearraylist2
= var1
;
6051 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6052 var_nodearraylist1
= var2
;
6053 var_tkwselfnode2
= var_nodearraylist1
;
6054 /* <var_tkwselfnode2:nullable Object> isa nullable TKwself */
6055 cltype
= type_nullable_parser_nodes__TKwself
.color
;
6056 idtype
= type_nullable_parser_nodes__TKwself
.id
;
6057 if(var_tkwselfnode2
== NULL
) {
6060 if(cltype
>= var_tkwselfnode2
->type
->table_size
) {
6063 var3
= var_tkwselfnode2
->type
->type_table
[cltype
] == idtype
;
6067 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29059);
6070 var_pannotationsnode3
= var_nodearraylist2
;
6071 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6072 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6073 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6074 if(var_pannotationsnode3
== NULL
) {
6077 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6080 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
6084 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29061);
6087 var7
= NEW_parser_nodes__ASelfExpr(&type_parser_nodes__ASelfExpr
);
6088 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ASelfExpr__init_aselfexpr
]))(var7
, var_tkwselfnode2
, var_pannotationsnode3
) /* init_aselfexpr on <var7:ASelfExpr>*/;
6089 CHECK_NEW_parser_nodes__ASelfExpr(var7
);
6090 var_pexprnode1
= var7
;
6091 var_node_list
= var_pexprnode1
;
6092 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction839> */
6093 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6094 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6097 /* method parser#ReduceAction839#action for (self: Object, Parser) */
6098 void VIRTUAL_parser__ReduceAction839__action(val
* self
, val
* p0
) {
6099 parser__ReduceAction839__action(self
, p0
);
6102 /* method parser#ReduceAction840#action for (self: ReduceAction840, Parser) */
6103 void parser__ReduceAction840__action(val
* self
, val
* p0
) {
6104 val
* var_p
/* var p: Parser */;
6105 val
* var
/* : null */;
6106 val
* var_node_list
/* var node_list: nullable Object */;
6107 val
* var1
/* : nullable Object */;
6108 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6109 val
* var_tkwtruenode2
/* var tkwtruenode2: nullable Object */;
6110 short int var2
/* : Bool */;
6113 val
* var3
/* : ATrueExpr */;
6114 val
* var4
/* : null */;
6115 val
* var_pexprnode1
/* var pexprnode1: nullable ATrueExpr */;
6116 long var5
/* : Int */;
6117 long var6
/* : Int */;
6120 var_node_list
= var
;
6121 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6122 var_nodearraylist1
= var1
;
6123 var_tkwtruenode2
= var_nodearraylist1
;
6124 /* <var_tkwtruenode2:nullable Object> isa nullable TKwtrue */
6125 cltype
= type_nullable_parser_nodes__TKwtrue
.color
;
6126 idtype
= type_nullable_parser_nodes__TKwtrue
.id
;
6127 if(var_tkwtruenode2
== NULL
) {
6130 if(cltype
>= var_tkwtruenode2
->type
->table_size
) {
6133 var2
= var_tkwtruenode2
->type
->type_table
[cltype
] == idtype
;
6137 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29077);
6140 var3
= NEW_parser_nodes__ATrueExpr(&type_parser_nodes__ATrueExpr
);
6142 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ATrueExpr__init_atrueexpr
]))(var3
, var_tkwtruenode2
, var4
) /* init_atrueexpr on <var3:ATrueExpr>*/;
6143 CHECK_NEW_parser_nodes__ATrueExpr(var3
);
6144 var_pexprnode1
= var3
;
6145 var_node_list
= var_pexprnode1
;
6146 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction840> */
6147 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6148 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6151 /* method parser#ReduceAction840#action for (self: Object, Parser) */
6152 void VIRTUAL_parser__ReduceAction840__action(val
* self
, val
* p0
) {
6153 parser__ReduceAction840__action(self
, p0
);
6156 /* method parser#ReduceAction841#action for (self: ReduceAction841, Parser) */
6157 void parser__ReduceAction841__action(val
* self
, val
* p0
) {
6158 val
* var_p
/* var p: Parser */;
6159 val
* var
/* : null */;
6160 val
* var_node_list
/* var node_list: nullable Object */;
6161 val
* var1
/* : nullable Object */;
6162 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6163 val
* var2
/* : nullable Object */;
6164 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6165 val
* var_tkwtruenode2
/* var tkwtruenode2: nullable Object */;
6166 short int var3
/* : Bool */;
6169 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6170 short int var4
/* : Bool */;
6173 val
* var7
/* : ATrueExpr */;
6174 val
* var_pexprnode1
/* var pexprnode1: nullable ATrueExpr */;
6175 long var8
/* : Int */;
6176 long var9
/* : Int */;
6179 var_node_list
= var
;
6180 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6181 var_nodearraylist2
= var1
;
6182 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6183 var_nodearraylist1
= var2
;
6184 var_tkwtruenode2
= var_nodearraylist1
;
6185 /* <var_tkwtruenode2:nullable Object> isa nullable TKwtrue */
6186 cltype
= type_nullable_parser_nodes__TKwtrue
.color
;
6187 idtype
= type_nullable_parser_nodes__TKwtrue
.id
;
6188 if(var_tkwtruenode2
== NULL
) {
6191 if(cltype
>= var_tkwtruenode2
->type
->table_size
) {
6194 var3
= var_tkwtruenode2
->type
->type_table
[cltype
] == idtype
;
6198 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29094);
6201 var_pannotationsnode3
= var_nodearraylist2
;
6202 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6203 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6204 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6205 if(var_pannotationsnode3
== NULL
) {
6208 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6211 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
6215 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29096);
6218 var7
= NEW_parser_nodes__ATrueExpr(&type_parser_nodes__ATrueExpr
);
6219 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ATrueExpr__init_atrueexpr
]))(var7
, var_tkwtruenode2
, var_pannotationsnode3
) /* init_atrueexpr on <var7:ATrueExpr>*/;
6220 CHECK_NEW_parser_nodes__ATrueExpr(var7
);
6221 var_pexprnode1
= var7
;
6222 var_node_list
= var_pexprnode1
;
6223 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction841> */
6224 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6225 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6228 /* method parser#ReduceAction841#action for (self: Object, Parser) */
6229 void VIRTUAL_parser__ReduceAction841__action(val
* self
, val
* p0
) {
6230 parser__ReduceAction841__action(self
, p0
);
6233 /* method parser#ReduceAction842#action for (self: ReduceAction842, Parser) */
6234 void parser__ReduceAction842__action(val
* self
, val
* p0
) {
6235 val
* var_p
/* var p: Parser */;
6236 val
* var
/* : null */;
6237 val
* var_node_list
/* var node_list: nullable Object */;
6238 val
* var1
/* : nullable Object */;
6239 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6240 val
* var_tkwfalsenode2
/* var tkwfalsenode2: nullable Object */;
6241 short int var2
/* : Bool */;
6244 val
* var3
/* : AFalseExpr */;
6245 val
* var4
/* : null */;
6246 val
* var_pexprnode1
/* var pexprnode1: nullable AFalseExpr */;
6247 long var5
/* : Int */;
6248 long var6
/* : Int */;
6251 var_node_list
= var
;
6252 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6253 var_nodearraylist1
= var1
;
6254 var_tkwfalsenode2
= var_nodearraylist1
;
6255 /* <var_tkwfalsenode2:nullable Object> isa nullable TKwfalse */
6256 cltype
= type_nullable_parser_nodes__TKwfalse
.color
;
6257 idtype
= type_nullable_parser_nodes__TKwfalse
.id
;
6258 if(var_tkwfalsenode2
== NULL
) {
6261 if(cltype
>= var_tkwfalsenode2
->type
->table_size
) {
6264 var2
= var_tkwfalsenode2
->type
->type_table
[cltype
] == idtype
;
6268 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29112);
6271 var3
= NEW_parser_nodes__AFalseExpr(&type_parser_nodes__AFalseExpr
);
6273 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AFalseExpr__init_afalseexpr
]))(var3
, var_tkwfalsenode2
, var4
) /* init_afalseexpr on <var3:AFalseExpr>*/;
6274 CHECK_NEW_parser_nodes__AFalseExpr(var3
);
6275 var_pexprnode1
= var3
;
6276 var_node_list
= var_pexprnode1
;
6277 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction842> */
6278 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6279 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6282 /* method parser#ReduceAction842#action for (self: Object, Parser) */
6283 void VIRTUAL_parser__ReduceAction842__action(val
* self
, val
* p0
) {
6284 parser__ReduceAction842__action(self
, p0
);
6287 /* method parser#ReduceAction843#action for (self: ReduceAction843, Parser) */
6288 void parser__ReduceAction843__action(val
* self
, val
* p0
) {
6289 val
* var_p
/* var p: Parser */;
6290 val
* var
/* : null */;
6291 val
* var_node_list
/* var node_list: nullable Object */;
6292 val
* var1
/* : nullable Object */;
6293 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6294 val
* var2
/* : nullable Object */;
6295 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6296 val
* var_tkwfalsenode2
/* var tkwfalsenode2: nullable Object */;
6297 short int var3
/* : Bool */;
6300 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6301 short int var4
/* : Bool */;
6304 val
* var7
/* : AFalseExpr */;
6305 val
* var_pexprnode1
/* var pexprnode1: nullable AFalseExpr */;
6306 long var8
/* : Int */;
6307 long var9
/* : Int */;
6310 var_node_list
= var
;
6311 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6312 var_nodearraylist2
= var1
;
6313 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6314 var_nodearraylist1
= var2
;
6315 var_tkwfalsenode2
= var_nodearraylist1
;
6316 /* <var_tkwfalsenode2:nullable Object> isa nullable TKwfalse */
6317 cltype
= type_nullable_parser_nodes__TKwfalse
.color
;
6318 idtype
= type_nullable_parser_nodes__TKwfalse
.id
;
6319 if(var_tkwfalsenode2
== NULL
) {
6322 if(cltype
>= var_tkwfalsenode2
->type
->table_size
) {
6325 var3
= var_tkwfalsenode2
->type
->type_table
[cltype
] == idtype
;
6329 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29129);
6332 var_pannotationsnode3
= var_nodearraylist2
;
6333 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6334 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6335 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6336 if(var_pannotationsnode3
== NULL
) {
6339 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6342 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
6346 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29131);
6349 var7
= NEW_parser_nodes__AFalseExpr(&type_parser_nodes__AFalseExpr
);
6350 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AFalseExpr__init_afalseexpr
]))(var7
, var_tkwfalsenode2
, var_pannotationsnode3
) /* init_afalseexpr on <var7:AFalseExpr>*/;
6351 CHECK_NEW_parser_nodes__AFalseExpr(var7
);
6352 var_pexprnode1
= var7
;
6353 var_node_list
= var_pexprnode1
;
6354 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction843> */
6355 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6356 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6359 /* method parser#ReduceAction843#action for (self: Object, Parser) */
6360 void VIRTUAL_parser__ReduceAction843__action(val
* self
, val
* p0
) {
6361 parser__ReduceAction843__action(self
, p0
);
6364 /* method parser#ReduceAction844#action for (self: ReduceAction844, Parser) */
6365 void parser__ReduceAction844__action(val
* self
, val
* p0
) {
6366 val
* var_p
/* var p: Parser */;
6367 val
* var
/* : null */;
6368 val
* var_node_list
/* var node_list: nullable Object */;
6369 val
* var1
/* : nullable Object */;
6370 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6371 val
* var_tkwnullnode2
/* var tkwnullnode2: nullable Object */;
6372 short int var2
/* : Bool */;
6375 val
* var3
/* : ANullExpr */;
6376 val
* var4
/* : null */;
6377 val
* var_pexprnode1
/* var pexprnode1: nullable ANullExpr */;
6378 long var5
/* : Int */;
6379 long var6
/* : Int */;
6382 var_node_list
= var
;
6383 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6384 var_nodearraylist1
= var1
;
6385 var_tkwnullnode2
= var_nodearraylist1
;
6386 /* <var_tkwnullnode2:nullable Object> isa nullable TKwnull */
6387 cltype
= type_nullable_parser_nodes__TKwnull
.color
;
6388 idtype
= type_nullable_parser_nodes__TKwnull
.id
;
6389 if(var_tkwnullnode2
== NULL
) {
6392 if(cltype
>= var_tkwnullnode2
->type
->table_size
) {
6395 var2
= var_tkwnullnode2
->type
->type_table
[cltype
] == idtype
;
6399 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29147);
6402 var3
= NEW_parser_nodes__ANullExpr(&type_parser_nodes__ANullExpr
);
6404 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ANullExpr__init_anullexpr
]))(var3
, var_tkwnullnode2
, var4
) /* init_anullexpr on <var3:ANullExpr>*/;
6405 CHECK_NEW_parser_nodes__ANullExpr(var3
);
6406 var_pexprnode1
= var3
;
6407 var_node_list
= var_pexprnode1
;
6408 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction844> */
6409 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6410 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6413 /* method parser#ReduceAction844#action for (self: Object, Parser) */
6414 void VIRTUAL_parser__ReduceAction844__action(val
* self
, val
* p0
) {
6415 parser__ReduceAction844__action(self
, p0
);
6418 /* method parser#ReduceAction845#action for (self: ReduceAction845, Parser) */
6419 void parser__ReduceAction845__action(val
* self
, val
* p0
) {
6420 val
* var_p
/* var p: Parser */;
6421 val
* var
/* : null */;
6422 val
* var_node_list
/* var node_list: nullable Object */;
6423 val
* var1
/* : nullable Object */;
6424 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6425 val
* var2
/* : nullable Object */;
6426 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6427 val
* var_tkwnullnode2
/* var tkwnullnode2: nullable Object */;
6428 short int var3
/* : Bool */;
6431 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6432 short int var4
/* : Bool */;
6435 val
* var7
/* : ANullExpr */;
6436 val
* var_pexprnode1
/* var pexprnode1: nullable ANullExpr */;
6437 long var8
/* : Int */;
6438 long var9
/* : Int */;
6441 var_node_list
= var
;
6442 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6443 var_nodearraylist2
= var1
;
6444 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6445 var_nodearraylist1
= var2
;
6446 var_tkwnullnode2
= var_nodearraylist1
;
6447 /* <var_tkwnullnode2:nullable Object> isa nullable TKwnull */
6448 cltype
= type_nullable_parser_nodes__TKwnull
.color
;
6449 idtype
= type_nullable_parser_nodes__TKwnull
.id
;
6450 if(var_tkwnullnode2
== NULL
) {
6453 if(cltype
>= var_tkwnullnode2
->type
->table_size
) {
6456 var3
= var_tkwnullnode2
->type
->type_table
[cltype
] == idtype
;
6460 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29164);
6463 var_pannotationsnode3
= var_nodearraylist2
;
6464 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6465 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6466 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6467 if(var_pannotationsnode3
== NULL
) {
6470 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6473 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
6477 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29166);
6480 var7
= NEW_parser_nodes__ANullExpr(&type_parser_nodes__ANullExpr
);
6481 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ANullExpr__init_anullexpr
]))(var7
, var_tkwnullnode2
, var_pannotationsnode3
) /* init_anullexpr on <var7:ANullExpr>*/;
6482 CHECK_NEW_parser_nodes__ANullExpr(var7
);
6483 var_pexprnode1
= var7
;
6484 var_node_list
= var_pexprnode1
;
6485 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction845> */
6486 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6487 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6490 /* method parser#ReduceAction845#action for (self: Object, Parser) */
6491 void VIRTUAL_parser__ReduceAction845__action(val
* self
, val
* p0
) {
6492 parser__ReduceAction845__action(self
, p0
);
6495 /* method parser#ReduceAction846#action for (self: ReduceAction846, Parser) */
6496 void parser__ReduceAction846__action(val
* self
, val
* p0
) {
6497 val
* var_p
/* var p: Parser */;
6498 val
* var
/* : null */;
6499 val
* var_node_list
/* var node_list: nullable Object */;
6500 val
* var1
/* : nullable Object */;
6501 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6502 val
* var_tnumbernode2
/* var tnumbernode2: nullable Object */;
6503 short int var2
/* : Bool */;
6506 val
* var3
/* : AIntExpr */;
6507 val
* var4
/* : null */;
6508 val
* var_pexprnode1
/* var pexprnode1: nullable AIntExpr */;
6509 long var5
/* : Int */;
6510 long var6
/* : Int */;
6513 var_node_list
= var
;
6514 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6515 var_nodearraylist1
= var1
;
6516 var_tnumbernode2
= var_nodearraylist1
;
6517 /* <var_tnumbernode2:nullable Object> isa nullable TNumber */
6518 cltype
= type_nullable_parser_nodes__TNumber
.color
;
6519 idtype
= type_nullable_parser_nodes__TNumber
.id
;
6520 if(var_tnumbernode2
== NULL
) {
6523 if(cltype
>= var_tnumbernode2
->type
->table_size
) {
6526 var2
= var_tnumbernode2
->type
->type_table
[cltype
] == idtype
;
6530 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29182);
6533 var3
= NEW_parser_nodes__AIntExpr(&type_parser_nodes__AIntExpr
);
6535 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AIntExpr__init_aintexpr
]))(var3
, var_tnumbernode2
, var4
) /* init_aintexpr on <var3:AIntExpr>*/;
6536 CHECK_NEW_parser_nodes__AIntExpr(var3
);
6537 var_pexprnode1
= var3
;
6538 var_node_list
= var_pexprnode1
;
6539 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction846> */
6540 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6541 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6544 /* method parser#ReduceAction846#action for (self: Object, Parser) */
6545 void VIRTUAL_parser__ReduceAction846__action(val
* self
, val
* p0
) {
6546 parser__ReduceAction846__action(self
, p0
);
6549 /* method parser#ReduceAction847#action for (self: ReduceAction847, Parser) */
6550 void parser__ReduceAction847__action(val
* self
, val
* p0
) {
6551 val
* var_p
/* var p: Parser */;
6552 val
* var
/* : null */;
6553 val
* var_node_list
/* var node_list: nullable Object */;
6554 val
* var1
/* : nullable Object */;
6555 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6556 val
* var2
/* : nullable Object */;
6557 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6558 val
* var_tnumbernode2
/* var tnumbernode2: nullable Object */;
6559 short int var3
/* : Bool */;
6562 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6563 short int var4
/* : Bool */;
6566 val
* var7
/* : AIntExpr */;
6567 val
* var_pexprnode1
/* var pexprnode1: nullable AIntExpr */;
6568 long var8
/* : Int */;
6569 long var9
/* : Int */;
6572 var_node_list
= var
;
6573 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6574 var_nodearraylist2
= var1
;
6575 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6576 var_nodearraylist1
= var2
;
6577 var_tnumbernode2
= var_nodearraylist1
;
6578 /* <var_tnumbernode2:nullable Object> isa nullable TNumber */
6579 cltype
= type_nullable_parser_nodes__TNumber
.color
;
6580 idtype
= type_nullable_parser_nodes__TNumber
.id
;
6581 if(var_tnumbernode2
== NULL
) {
6584 if(cltype
>= var_tnumbernode2
->type
->table_size
) {
6587 var3
= var_tnumbernode2
->type
->type_table
[cltype
] == idtype
;
6591 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29199);
6594 var_pannotationsnode3
= var_nodearraylist2
;
6595 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6596 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6597 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6598 if(var_pannotationsnode3
== NULL
) {
6601 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6604 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
6608 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29201);
6611 var7
= NEW_parser_nodes__AIntExpr(&type_parser_nodes__AIntExpr
);
6612 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AIntExpr__init_aintexpr
]))(var7
, var_tnumbernode2
, var_pannotationsnode3
) /* init_aintexpr on <var7:AIntExpr>*/;
6613 CHECK_NEW_parser_nodes__AIntExpr(var7
);
6614 var_pexprnode1
= var7
;
6615 var_node_list
= var_pexprnode1
;
6616 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction847> */
6617 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6618 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6621 /* method parser#ReduceAction847#action for (self: Object, Parser) */
6622 void VIRTUAL_parser__ReduceAction847__action(val
* self
, val
* p0
) {
6623 parser__ReduceAction847__action(self
, p0
);
6626 /* method parser#ReduceAction848#action for (self: ReduceAction848, Parser) */
6627 void parser__ReduceAction848__action(val
* self
, val
* p0
) {
6628 val
* var_p
/* var p: Parser */;
6629 val
* var
/* : null */;
6630 val
* var_node_list
/* var node_list: nullable Object */;
6631 val
* var1
/* : nullable Object */;
6632 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6633 val
* var_tfloatnode2
/* var tfloatnode2: nullable Object */;
6634 short int var2
/* : Bool */;
6637 val
* var3
/* : AFloatExpr */;
6638 val
* var4
/* : null */;
6639 val
* var_pexprnode1
/* var pexprnode1: nullable AFloatExpr */;
6640 long var5
/* : Int */;
6641 long var6
/* : Int */;
6644 var_node_list
= var
;
6645 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6646 var_nodearraylist1
= var1
;
6647 var_tfloatnode2
= var_nodearraylist1
;
6648 /* <var_tfloatnode2:nullable Object> isa nullable TFloat */
6649 cltype
= type_nullable_parser_nodes__TFloat
.color
;
6650 idtype
= type_nullable_parser_nodes__TFloat
.id
;
6651 if(var_tfloatnode2
== NULL
) {
6654 if(cltype
>= var_tfloatnode2
->type
->table_size
) {
6657 var2
= var_tfloatnode2
->type
->type_table
[cltype
] == idtype
;
6661 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29217);
6664 var3
= NEW_parser_nodes__AFloatExpr(&type_parser_nodes__AFloatExpr
);
6666 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AFloatExpr__init_afloatexpr
]))(var3
, var_tfloatnode2
, var4
) /* init_afloatexpr on <var3:AFloatExpr>*/;
6667 CHECK_NEW_parser_nodes__AFloatExpr(var3
);
6668 var_pexprnode1
= var3
;
6669 var_node_list
= var_pexprnode1
;
6670 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction848> */
6671 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6672 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6675 /* method parser#ReduceAction848#action for (self: Object, Parser) */
6676 void VIRTUAL_parser__ReduceAction848__action(val
* self
, val
* p0
) {
6677 parser__ReduceAction848__action(self
, p0
);
6680 /* method parser#ReduceAction849#action for (self: ReduceAction849, Parser) */
6681 void parser__ReduceAction849__action(val
* self
, val
* p0
) {
6682 val
* var_p
/* var p: Parser */;
6683 val
* var
/* : null */;
6684 val
* var_node_list
/* var node_list: nullable Object */;
6685 val
* var1
/* : nullable Object */;
6686 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6687 val
* var2
/* : nullable Object */;
6688 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6689 val
* var_tfloatnode2
/* var tfloatnode2: nullable Object */;
6690 short int var3
/* : Bool */;
6693 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6694 short int var4
/* : Bool */;
6697 val
* var7
/* : AFloatExpr */;
6698 val
* var_pexprnode1
/* var pexprnode1: nullable AFloatExpr */;
6699 long var8
/* : Int */;
6700 long var9
/* : Int */;
6703 var_node_list
= var
;
6704 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6705 var_nodearraylist2
= var1
;
6706 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6707 var_nodearraylist1
= var2
;
6708 var_tfloatnode2
= var_nodearraylist1
;
6709 /* <var_tfloatnode2:nullable Object> isa nullable TFloat */
6710 cltype
= type_nullable_parser_nodes__TFloat
.color
;
6711 idtype
= type_nullable_parser_nodes__TFloat
.id
;
6712 if(var_tfloatnode2
== NULL
) {
6715 if(cltype
>= var_tfloatnode2
->type
->table_size
) {
6718 var3
= var_tfloatnode2
->type
->type_table
[cltype
] == idtype
;
6722 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29234);
6725 var_pannotationsnode3
= var_nodearraylist2
;
6726 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6727 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6728 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6729 if(var_pannotationsnode3
== NULL
) {
6732 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6735 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
6739 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29236);
6742 var7
= NEW_parser_nodes__AFloatExpr(&type_parser_nodes__AFloatExpr
);
6743 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AFloatExpr__init_afloatexpr
]))(var7
, var_tfloatnode2
, var_pannotationsnode3
) /* init_afloatexpr on <var7:AFloatExpr>*/;
6744 CHECK_NEW_parser_nodes__AFloatExpr(var7
);
6745 var_pexprnode1
= var7
;
6746 var_node_list
= var_pexprnode1
;
6747 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction849> */
6748 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6749 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6752 /* method parser#ReduceAction849#action for (self: Object, Parser) */
6753 void VIRTUAL_parser__ReduceAction849__action(val
* self
, val
* p0
) {
6754 parser__ReduceAction849__action(self
, p0
);
6757 /* method parser#ReduceAction850#action for (self: ReduceAction850, Parser) */
6758 void parser__ReduceAction850__action(val
* self
, val
* p0
) {
6759 val
* var_p
/* var p: Parser */;
6760 val
* var
/* : null */;
6761 val
* var_node_list
/* var node_list: nullable Object */;
6762 val
* var1
/* : nullable Object */;
6763 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6764 val
* var_tcharnode2
/* var tcharnode2: nullable Object */;
6765 short int var2
/* : Bool */;
6768 val
* var3
/* : ACharExpr */;
6769 val
* var4
/* : null */;
6770 val
* var_pexprnode1
/* var pexprnode1: nullable ACharExpr */;
6771 long var5
/* : Int */;
6772 long var6
/* : Int */;
6775 var_node_list
= var
;
6776 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6777 var_nodearraylist1
= var1
;
6778 var_tcharnode2
= var_nodearraylist1
;
6779 /* <var_tcharnode2:nullable Object> isa nullable TChar */
6780 cltype
= type_nullable_parser_nodes__TChar
.color
;
6781 idtype
= type_nullable_parser_nodes__TChar
.id
;
6782 if(var_tcharnode2
== NULL
) {
6785 if(cltype
>= var_tcharnode2
->type
->table_size
) {
6788 var2
= var_tcharnode2
->type
->type_table
[cltype
] == idtype
;
6792 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29252);
6795 var3
= NEW_parser_nodes__ACharExpr(&type_parser_nodes__ACharExpr
);
6797 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ACharExpr__init_acharexpr
]))(var3
, var_tcharnode2
, var4
) /* init_acharexpr on <var3:ACharExpr>*/;
6798 CHECK_NEW_parser_nodes__ACharExpr(var3
);
6799 var_pexprnode1
= var3
;
6800 var_node_list
= var_pexprnode1
;
6801 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction850> */
6802 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6803 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6806 /* method parser#ReduceAction850#action for (self: Object, Parser) */
6807 void VIRTUAL_parser__ReduceAction850__action(val
* self
, val
* p0
) {
6808 parser__ReduceAction850__action(self
, p0
);
6811 /* method parser#ReduceAction851#action for (self: ReduceAction851, Parser) */
6812 void parser__ReduceAction851__action(val
* self
, val
* p0
) {
6813 val
* var_p
/* var p: Parser */;
6814 val
* var
/* : null */;
6815 val
* var_node_list
/* var node_list: nullable Object */;
6816 val
* var1
/* : nullable Object */;
6817 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6818 val
* var2
/* : nullable Object */;
6819 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6820 val
* var_tcharnode2
/* var tcharnode2: nullable Object */;
6821 short int var3
/* : Bool */;
6824 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6825 short int var4
/* : Bool */;
6828 val
* var7
/* : ACharExpr */;
6829 val
* var_pexprnode1
/* var pexprnode1: nullable ACharExpr */;
6830 long var8
/* : Int */;
6831 long var9
/* : Int */;
6834 var_node_list
= var
;
6835 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6836 var_nodearraylist2
= var1
;
6837 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6838 var_nodearraylist1
= var2
;
6839 var_tcharnode2
= var_nodearraylist1
;
6840 /* <var_tcharnode2:nullable Object> isa nullable TChar */
6841 cltype
= type_nullable_parser_nodes__TChar
.color
;
6842 idtype
= type_nullable_parser_nodes__TChar
.id
;
6843 if(var_tcharnode2
== NULL
) {
6846 if(cltype
>= var_tcharnode2
->type
->table_size
) {
6849 var3
= var_tcharnode2
->type
->type_table
[cltype
] == idtype
;
6853 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29269);
6856 var_pannotationsnode3
= var_nodearraylist2
;
6857 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6858 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6859 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6860 if(var_pannotationsnode3
== NULL
) {
6863 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6866 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
6870 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29271);
6873 var7
= NEW_parser_nodes__ACharExpr(&type_parser_nodes__ACharExpr
);
6874 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ACharExpr__init_acharexpr
]))(var7
, var_tcharnode2
, var_pannotationsnode3
) /* init_acharexpr on <var7:ACharExpr>*/;
6875 CHECK_NEW_parser_nodes__ACharExpr(var7
);
6876 var_pexprnode1
= var7
;
6877 var_node_list
= var_pexprnode1
;
6878 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction851> */
6879 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6880 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6883 /* method parser#ReduceAction851#action for (self: Object, Parser) */
6884 void VIRTUAL_parser__ReduceAction851__action(val
* self
, val
* p0
) {
6885 parser__ReduceAction851__action(self
, p0
);
6888 /* method parser#ReduceAction852#action for (self: ReduceAction852, Parser) */
6889 void parser__ReduceAction852__action(val
* self
, val
* p0
) {
6890 val
* var_p
/* var p: Parser */;
6891 val
* var
/* : null */;
6892 val
* var_node_list
/* var node_list: nullable Object */;
6893 val
* var1
/* : nullable Object */;
6894 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6895 val
* var_tstringnode2
/* var tstringnode2: nullable Object */;
6896 short int var2
/* : Bool */;
6899 val
* var3
/* : AStringExpr */;
6900 val
* var4
/* : null */;
6901 val
* var_pexprnode1
/* var pexprnode1: nullable AStringExpr */;
6902 long var5
/* : Int */;
6903 long var6
/* : Int */;
6906 var_node_list
= var
;
6907 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6908 var_nodearraylist1
= var1
;
6909 var_tstringnode2
= var_nodearraylist1
;
6910 /* <var_tstringnode2:nullable Object> isa nullable TString */
6911 cltype
= type_nullable_parser_nodes__TString
.color
;
6912 idtype
= type_nullable_parser_nodes__TString
.id
;
6913 if(var_tstringnode2
== NULL
) {
6916 if(cltype
>= var_tstringnode2
->type
->table_size
) {
6919 var2
= var_tstringnode2
->type
->type_table
[cltype
] == idtype
;
6923 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29287);
6926 var3
= NEW_parser_nodes__AStringExpr(&type_parser_nodes__AStringExpr
);
6928 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStringExpr__init_astringexpr
]))(var3
, var_tstringnode2
, var4
) /* init_astringexpr on <var3:AStringExpr>*/;
6929 CHECK_NEW_parser_nodes__AStringExpr(var3
);
6930 var_pexprnode1
= var3
;
6931 var_node_list
= var_pexprnode1
;
6932 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction852> */
6933 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6934 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6937 /* method parser#ReduceAction852#action for (self: Object, Parser) */
6938 void VIRTUAL_parser__ReduceAction852__action(val
* self
, val
* p0
) {
6939 parser__ReduceAction852__action(self
, p0
);
6942 /* method parser#ReduceAction853#action for (self: ReduceAction853, Parser) */
6943 void parser__ReduceAction853__action(val
* self
, val
* p0
) {
6944 val
* var_p
/* var p: Parser */;
6945 val
* var
/* : null */;
6946 val
* var_node_list
/* var node_list: nullable Object */;
6947 val
* var1
/* : nullable Object */;
6948 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6949 val
* var2
/* : nullable Object */;
6950 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6951 val
* var_tstringnode2
/* var tstringnode2: nullable Object */;
6952 short int var3
/* : Bool */;
6955 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
6956 short int var4
/* : Bool */;
6959 val
* var7
/* : AStringExpr */;
6960 val
* var_pexprnode1
/* var pexprnode1: nullable AStringExpr */;
6961 long var8
/* : Int */;
6962 long var9
/* : Int */;
6965 var_node_list
= var
;
6966 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6967 var_nodearraylist2
= var1
;
6968 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6969 var_nodearraylist1
= var2
;
6970 var_tstringnode2
= var_nodearraylist1
;
6971 /* <var_tstringnode2:nullable Object> isa nullable TString */
6972 cltype
= type_nullable_parser_nodes__TString
.color
;
6973 idtype
= type_nullable_parser_nodes__TString
.id
;
6974 if(var_tstringnode2
== NULL
) {
6977 if(cltype
>= var_tstringnode2
->type
->table_size
) {
6980 var3
= var_tstringnode2
->type
->type_table
[cltype
] == idtype
;
6984 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29304);
6987 var_pannotationsnode3
= var_nodearraylist2
;
6988 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
6989 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
6990 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
6991 if(var_pannotationsnode3
== NULL
) {
6994 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
6997 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
7001 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29306);
7004 var7
= NEW_parser_nodes__AStringExpr(&type_parser_nodes__AStringExpr
);
7005 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AStringExpr__init_astringexpr
]))(var7
, var_tstringnode2
, var_pannotationsnode3
) /* init_astringexpr on <var7:AStringExpr>*/;
7006 CHECK_NEW_parser_nodes__AStringExpr(var7
);
7007 var_pexprnode1
= var7
;
7008 var_node_list
= var_pexprnode1
;
7009 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction853> */
7010 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
7011 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
7014 /* method parser#ReduceAction853#action for (self: Object, Parser) */
7015 void VIRTUAL_parser__ReduceAction853__action(val
* self
, val
* p0
) {
7016 parser__ReduceAction853__action(self
, p0
);
7019 /* method parser#ReduceAction855#action for (self: ReduceAction855, Parser) */
7020 void parser__ReduceAction855__action(val
* self
, val
* p0
) {
7021 val
* var_p
/* var p: Parser */;
7022 val
* var
/* : null */;
7023 val
* var_node_list
/* var node_list: nullable Object */;
7024 val
* var1
/* : nullable Object */;
7025 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7026 val
* var2
/* : nullable Object */;
7027 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7028 val
* var3
/* : nullable Object */;
7029 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7030 val
* var4
/* : nullable Object */;
7031 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7032 val
* var5
/* : nullable Object */;
7033 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7034 val
* var_toparnode2
/* var toparnode2: nullable Object */;
7035 short int var6
/* : Bool */;
7038 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7039 short int var7
/* : Bool */;
7042 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
7043 short int var10
/* : Bool */;
7046 val
* var13
/* : AParExpr */;
7047 val
* var14
/* : null */;
7048 val
* var_pexprnode1
/* var pexprnode1: nullable AParExpr */;
7049 long var15
/* : Int */;
7050 long var16
/* : Int */;
7053 var_node_list
= var
;
7054 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7055 var_nodearraylist5
= var1
;
7056 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7057 var_nodearraylist4
= var2
;
7058 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7059 var_nodearraylist3
= var3
;
7060 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7061 var_nodearraylist2
= var4
;
7062 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7063 var_nodearraylist1
= var5
;
7064 var_toparnode2
= var_nodearraylist1
;
7065 /* <var_toparnode2:nullable Object> isa nullable TOpar */
7066 cltype
= type_nullable_parser_nodes__TOpar
.color
;
7067 idtype
= type_nullable_parser_nodes__TOpar
.id
;
7068 if(var_toparnode2
== NULL
) {
7071 if(cltype
>= var_toparnode2
->type
->table_size
) {
7074 var6
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
7078 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29326);
7081 var_pexprnode3
= var_nodearraylist3
;
7082 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7083 cltype8
= type_nullable_parser_nodes__AExpr
.color
;
7084 idtype9
= type_nullable_parser_nodes__AExpr
.id
;
7085 if(var_pexprnode3
== NULL
) {
7088 if(cltype8
>= var_pexprnode3
->type
->table_size
) {
7091 var7
= var_pexprnode3
->type
->type_table
[cltype8
] == idtype9
;
7095 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29328);
7098 var_tcparnode4
= var_nodearraylist5
;
7099 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
7100 cltype11
= type_nullable_parser_nodes__TCpar
.color
;
7101 idtype12
= type_nullable_parser_nodes__TCpar
.id
;
7102 if(var_tcparnode4
== NULL
) {
7105 if(cltype11
>= var_tcparnode4
->type
->table_size
) {
7108 var10
= var_tcparnode4
->type
->type_table
[cltype11
] == idtype12
;
7112 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29330);
7115 var13
= NEW_parser_nodes__AParExpr(&type_parser_nodes__AParExpr
);
7117 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AParExpr__init_aparexpr
]))(var13
, var_toparnode2
, var_pexprnode3
, var_tcparnode4
, var14
) /* init_aparexpr on <var13:AParExpr>*/;
7118 CHECK_NEW_parser_nodes__AParExpr(var13
);
7119 var_pexprnode1
= var13
;
7120 var_node_list
= var_pexprnode1
;
7121 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction855> */
7122 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
7123 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
7126 /* method parser#ReduceAction855#action for (self: Object, Parser) */
7127 void VIRTUAL_parser__ReduceAction855__action(val
* self
, val
* p0
) {
7128 parser__ReduceAction855__action(self
, p0
);
7131 /* method parser#ReduceAction856#action for (self: ReduceAction856, Parser) */
7132 void parser__ReduceAction856__action(val
* self
, val
* p0
) {
7133 val
* var_p
/* var p: Parser */;
7134 val
* var
/* : null */;
7135 val
* var_node_list
/* var node_list: nullable Object */;
7136 val
* var1
/* : nullable Object */;
7137 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7138 val
* var2
/* : nullable Object */;
7139 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7140 val
* var3
/* : nullable Object */;
7141 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7142 val
* var4
/* : nullable Object */;
7143 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7144 val
* var5
/* : nullable Object */;
7145 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7146 val
* var6
/* : nullable Object */;
7147 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7148 val
* var_toparnode2
/* var toparnode2: nullable Object */;
7149 short int var7
/* : Bool */;
7152 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7153 short int var8
/* : Bool */;
7156 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
7157 short int var11
/* : Bool */;
7160 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
7161 short int var14
/* : Bool */;
7164 val
* var17
/* : AParExpr */;
7165 val
* var_pexprnode1
/* var pexprnode1: nullable AParExpr */;
7166 long var18
/* : Int */;
7167 long var19
/* : Int */;
7170 var_node_list
= var
;
7171 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7172 var_nodearraylist6
= var1
;
7173 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7174 var_nodearraylist5
= var2
;
7175 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7176 var_nodearraylist4
= var3
;
7177 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7178 var_nodearraylist3
= var4
;
7179 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7180 var_nodearraylist2
= var5
;
7181 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7182 var_nodearraylist1
= var6
;
7183 var_toparnode2
= var_nodearraylist1
;
7184 /* <var_toparnode2:nullable Object> isa nullable TOpar */
7185 cltype
= type_nullable_parser_nodes__TOpar
.color
;
7186 idtype
= type_nullable_parser_nodes__TOpar
.id
;
7187 if(var_toparnode2
== NULL
) {
7190 if(cltype
>= var_toparnode2
->type
->table_size
) {
7193 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
7197 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29353);
7200 var_pexprnode3
= var_nodearraylist3
;
7201 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7202 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
7203 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
7204 if(var_pexprnode3
== NULL
) {
7207 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
7210 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
7214 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29355);
7217 var_tcparnode4
= var_nodearraylist5
;
7218 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
7219 cltype12
= type_nullable_parser_nodes__TCpar
.color
;
7220 idtype13
= type_nullable_parser_nodes__TCpar
.id
;
7221 if(var_tcparnode4
== NULL
) {
7224 if(cltype12
>= var_tcparnode4
->type
->table_size
) {
7227 var11
= var_tcparnode4
->type
->type_table
[cltype12
] == idtype13
;
7231 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29357);
7234 var_pannotationsnode5
= var_nodearraylist6
;
7235 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
7236 cltype15
= type_nullable_parser_nodes__AAnnotations
.color
;
7237 idtype16
= type_nullable_parser_nodes__AAnnotations
.id
;
7238 if(var_pannotationsnode5
== NULL
) {
7241 if(cltype15
>= var_pannotationsnode5
->type
->table_size
) {
7244 var14
= var_pannotationsnode5
->type
->type_table
[cltype15
] == idtype16
;
7248 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29359);
7251 var17
= NEW_parser_nodes__AParExpr(&type_parser_nodes__AParExpr
);
7252 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AParExpr__init_aparexpr
]))(var17
, var_toparnode2
, var_pexprnode3
, var_tcparnode4
, var_pannotationsnode5
) /* init_aparexpr on <var17:AParExpr>*/;
7253 CHECK_NEW_parser_nodes__AParExpr(var17
);
7254 var_pexprnode1
= var17
;
7255 var_node_list
= var_pexprnode1
;
7256 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction856> */
7257 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
7258 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
7261 /* method parser#ReduceAction856#action for (self: Object, Parser) */
7262 void VIRTUAL_parser__ReduceAction856__action(val
* self
, val
* p0
) {
7263 parser__ReduceAction856__action(self
, p0
);
7266 /* method parser#ReduceAction857#action for (self: ReduceAction857, Parser) */
7267 void parser__ReduceAction857__action(val
* self
, val
* p0
) {
7268 val
* var_p
/* var p: Parser */;
7269 val
* var
/* : null */;
7270 val
* var_node_list
/* var node_list: nullable Object */;
7271 val
* var1
/* : nullable Object */;
7272 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
7273 val
* var2
/* : nullable Object */;
7274 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7275 val
* var3
/* : nullable Object */;
7276 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7277 val
* var4
/* : nullable Object */;
7278 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7279 val
* var5
/* : nullable Object */;
7280 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7281 val
* var6
/* : nullable Object */;
7282 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7283 val
* var7
/* : nullable Object */;
7284 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7285 val
* var8
/* : nullable Object */;
7286 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7287 val
* var9
/* : nullable Object */;
7288 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7289 val
* var10
/* : nullable Object */;
7290 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7291 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7292 short int var11
/* : Bool */;
7295 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
7296 short int var12
/* : Bool */;
7299 val
* var_toparnode4
/* var toparnode4: nullable Object */;
7300 short int var15
/* : Bool */;
7303 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
7304 short int var18
/* : Bool */;
7307 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
7308 short int var21
/* : Bool */;
7311 val
* var24
/* : AAsCastExpr */;
7312 val
* var_pexprnode1
/* var pexprnode1: nullable AAsCastExpr */;
7313 long var25
/* : Int */;
7314 long var26
/* : Int */;
7317 var_node_list
= var
;
7318 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7319 var_nodearraylist10
= var1
;
7320 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7321 var_nodearraylist9
= var2
;
7322 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7323 var_nodearraylist8
= var3
;
7324 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7325 var_nodearraylist7
= var4
;
7326 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7327 var_nodearraylist6
= var5
;
7328 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7329 var_nodearraylist5
= var6
;
7330 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7331 var_nodearraylist4
= var7
;
7332 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7333 var_nodearraylist3
= var8
;
7334 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7335 var_nodearraylist2
= var9
;
7336 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7337 var_nodearraylist1
= var10
;
7338 var_pexprnode2
= var_nodearraylist1
;
7339 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7340 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7341 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7342 if(var_pexprnode2
== NULL
) {
7345 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7348 var11
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7352 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29386);
7355 var_tkwasnode3
= var_nodearraylist4
;
7356 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
7357 cltype13
= type_nullable_parser_nodes__TKwas
.color
;
7358 idtype14
= type_nullable_parser_nodes__TKwas
.id
;
7359 if(var_tkwasnode3
== NULL
) {
7362 if(cltype13
>= var_tkwasnode3
->type
->table_size
) {
7365 var12
= var_tkwasnode3
->type
->type_table
[cltype13
] == idtype14
;
7369 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29388);
7372 var_toparnode4
= var_nodearraylist6
;
7373 /* <var_toparnode4:nullable Object> isa nullable TOpar */
7374 cltype16
= type_nullable_parser_nodes__TOpar
.color
;
7375 idtype17
= type_nullable_parser_nodes__TOpar
.id
;
7376 if(var_toparnode4
== NULL
) {
7379 if(cltype16
>= var_toparnode4
->type
->table_size
) {
7382 var15
= var_toparnode4
->type
->type_table
[cltype16
] == idtype17
;
7386 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29390);
7389 var_ptypenode5
= var_nodearraylist8
;
7390 /* <var_ptypenode5:nullable Object> isa nullable AType */
7391 cltype19
= type_nullable_parser_nodes__AType
.color
;
7392 idtype20
= type_nullable_parser_nodes__AType
.id
;
7393 if(var_ptypenode5
== NULL
) {
7396 if(cltype19
>= var_ptypenode5
->type
->table_size
) {
7399 var18
= var_ptypenode5
->type
->type_table
[cltype19
] == idtype20
;
7403 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29392);
7406 var_tcparnode6
= var_nodearraylist10
;
7407 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
7408 cltype22
= type_nullable_parser_nodes__TCpar
.color
;
7409 idtype23
= type_nullable_parser_nodes__TCpar
.id
;
7410 if(var_tcparnode6
== NULL
) {
7413 if(cltype22
>= var_tcparnode6
->type
->table_size
) {
7416 var21
= var_tcparnode6
->type
->type_table
[cltype22
] == idtype23
;
7420 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29394);
7423 var24
= NEW_parser_nodes__AAsCastExpr(&type_parser_nodes__AAsCastExpr
);
7424 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var24
->class->vft
[COLOR_parser_prod__AAsCastExpr__init_aascastexpr
]))(var24
, var_pexprnode2
, var_tkwasnode3
, var_toparnode4
, var_ptypenode5
, var_tcparnode6
) /* init_aascastexpr on <var24:AAsCastExpr>*/;
7425 CHECK_NEW_parser_nodes__AAsCastExpr(var24
);
7426 var_pexprnode1
= var24
;
7427 var_node_list
= var_pexprnode1
;
7428 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction857> */
7429 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
7430 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
7433 /* method parser#ReduceAction857#action for (self: Object, Parser) */
7434 void VIRTUAL_parser__ReduceAction857__action(val
* self
, val
* p0
) {
7435 parser__ReduceAction857__action(self
, p0
);
7438 /* method parser#ReduceAction858#action for (self: ReduceAction858, Parser) */
7439 void parser__ReduceAction858__action(val
* self
, val
* p0
) {
7440 val
* var_p
/* var p: Parser */;
7441 val
* var
/* : null */;
7442 val
* var_node_list
/* var node_list: nullable Object */;
7443 val
* var1
/* : nullable Object */;
7444 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
7445 val
* var2
/* : nullable Object */;
7446 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
7447 val
* var3
/* : nullable Object */;
7448 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
7449 val
* var4
/* : nullable Object */;
7450 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7451 val
* var5
/* : nullable Object */;
7452 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7453 val
* var6
/* : nullable Object */;
7454 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7455 val
* var7
/* : nullable Object */;
7456 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7457 val
* var8
/* : nullable Object */;
7458 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7459 val
* var9
/* : nullable Object */;
7460 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7461 val
* var10
/* : nullable Object */;
7462 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7463 val
* var11
/* : nullable Object */;
7464 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7465 val
* var12
/* : nullable Object */;
7466 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7467 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7468 short int var13
/* : Bool */;
7471 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
7472 short int var14
/* : Bool */;
7475 val
* var_toparnode4
/* var toparnode4: nullable Object */;
7476 short int var17
/* : Bool */;
7479 val
* var_tkwnotnode5
/* var tkwnotnode5: nullable Object */;
7480 short int var20
/* : Bool */;
7483 val
* var_tkwnullnode6
/* var tkwnullnode6: nullable Object */;
7484 short int var23
/* : Bool */;
7487 val
* var_tcparnode7
/* var tcparnode7: nullable Object */;
7488 short int var26
/* : Bool */;
7491 val
* var29
/* : AAsNotnullExpr */;
7492 val
* var_pexprnode1
/* var pexprnode1: nullable AAsNotnullExpr */;
7493 long var30
/* : Int */;
7494 long var31
/* : Int */;
7497 var_node_list
= var
;
7498 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7499 var_nodearraylist12
= var1
;
7500 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7501 var_nodearraylist11
= var2
;
7502 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7503 var_nodearraylist10
= var3
;
7504 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7505 var_nodearraylist9
= var4
;
7506 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7507 var_nodearraylist8
= var5
;
7508 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7509 var_nodearraylist7
= var6
;
7510 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7511 var_nodearraylist6
= var7
;
7512 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7513 var_nodearraylist5
= var8
;
7514 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7515 var_nodearraylist4
= var9
;
7516 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7517 var_nodearraylist3
= var10
;
7518 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7519 var_nodearraylist2
= var11
;
7520 var12
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7521 var_nodearraylist1
= var12
;
7522 var_pexprnode2
= var_nodearraylist1
;
7523 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7524 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7525 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7526 if(var_pexprnode2
== NULL
) {
7529 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7532 var13
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7536 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29424);
7539 var_tkwasnode3
= var_nodearraylist4
;
7540 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
7541 cltype15
= type_nullable_parser_nodes__TKwas
.color
;
7542 idtype16
= type_nullable_parser_nodes__TKwas
.id
;
7543 if(var_tkwasnode3
== NULL
) {
7546 if(cltype15
>= var_tkwasnode3
->type
->table_size
) {
7549 var14
= var_tkwasnode3
->type
->type_table
[cltype15
] == idtype16
;
7553 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29426);
7556 var_toparnode4
= var_nodearraylist6
;
7557 /* <var_toparnode4:nullable Object> isa nullable TOpar */
7558 cltype18
= type_nullable_parser_nodes__TOpar
.color
;
7559 idtype19
= type_nullable_parser_nodes__TOpar
.id
;
7560 if(var_toparnode4
== NULL
) {
7563 if(cltype18
>= var_toparnode4
->type
->table_size
) {
7566 var17
= var_toparnode4
->type
->type_table
[cltype18
] == idtype19
;
7570 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29428);
7573 var_tkwnotnode5
= var_nodearraylist8
;
7574 /* <var_tkwnotnode5:nullable Object> isa nullable TKwnot */
7575 cltype21
= type_nullable_parser_nodes__TKwnot
.color
;
7576 idtype22
= type_nullable_parser_nodes__TKwnot
.id
;
7577 if(var_tkwnotnode5
== NULL
) {
7580 if(cltype21
>= var_tkwnotnode5
->type
->table_size
) {
7583 var20
= var_tkwnotnode5
->type
->type_table
[cltype21
] == idtype22
;
7587 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29430);
7590 var_tkwnullnode6
= var_nodearraylist10
;
7591 /* <var_tkwnullnode6:nullable Object> isa nullable TKwnull */
7592 cltype24
= type_nullable_parser_nodes__TKwnull
.color
;
7593 idtype25
= type_nullable_parser_nodes__TKwnull
.id
;
7594 if(var_tkwnullnode6
== NULL
) {
7597 if(cltype24
>= var_tkwnullnode6
->type
->table_size
) {
7600 var23
= var_tkwnullnode6
->type
->type_table
[cltype24
] == idtype25
;
7604 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29432);
7607 var_tcparnode7
= var_nodearraylist12
;
7608 /* <var_tcparnode7:nullable Object> isa nullable TCpar */
7609 cltype27
= type_nullable_parser_nodes__TCpar
.color
;
7610 idtype28
= type_nullable_parser_nodes__TCpar
.id
;
7611 if(var_tcparnode7
== NULL
) {
7614 if(cltype27
>= var_tcparnode7
->type
->table_size
) {
7617 var26
= var_tcparnode7
->type
->type_table
[cltype27
] == idtype28
;
7621 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29434);
7624 var29
= NEW_parser_nodes__AAsNotnullExpr(&type_parser_nodes__AAsNotnullExpr
);
7625 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var29
->class->vft
[COLOR_parser_prod__AAsNotnullExpr__init_aasnotnullexpr
]))(var29
, var_pexprnode2
, var_tkwasnode3
, var_toparnode4
, var_tkwnotnode5
, var_tkwnullnode6
, var_tcparnode7
) /* init_aasnotnullexpr on <var29:AAsNotnullExpr>*/;
7626 CHECK_NEW_parser_nodes__AAsNotnullExpr(var29
);
7627 var_pexprnode1
= var29
;
7628 var_node_list
= var_pexprnode1
;
7629 var30
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction858> */
7630 var31
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var30
) /* go_to on <var_p:Parser>*/;
7631 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var31
, var_node_list
) /* push on <var_p:Parser>*/;
7634 /* method parser#ReduceAction858#action for (self: Object, Parser) */
7635 void VIRTUAL_parser__ReduceAction858__action(val
* self
, val
* p0
) {
7636 parser__ReduceAction858__action(self
, p0
);
7639 /* method parser#ReduceAction859#action for (self: ReduceAction859, Parser) */
7640 void parser__ReduceAction859__action(val
* self
, val
* p0
) {
7641 val
* var_p
/* var p: Parser */;
7642 val
* var
/* : null */;
7643 val
* var_node_list
/* var node_list: nullable Object */;
7644 val
* var1
/* : nullable Object */;
7645 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7646 val
* var2
/* : nullable Object */;
7647 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7648 val
* var3
/* : Array[Object] */;
7649 val
* var_listnode4
/* var listnode4: Array[Object] */;
7650 val
* var_listnode2
/* var listnode2: nullable Object */;
7651 short int var4
/* : Bool */;
7654 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7655 short int var5
/* : Bool */;
7658 val
* var8
/* : Array[Object] */;
7659 val
* var9
/* : null */;
7660 short int var10
/* : Bool */;
7661 val
* var11
/* : ASuperstringExpr */;
7662 val
* var12
/* : null */;
7663 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
7664 long var13
/* : Int */;
7665 long var14
/* : Int */;
7668 var_node_list
= var
;
7669 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7670 var_nodearraylist2
= var1
;
7671 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7672 var_nodearraylist1
= var2
;
7673 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7674 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7675 CHECK_NEW_array__Array(var3
);
7676 var_listnode4
= var3
;
7677 var_listnode2
= var_nodearraylist1
;
7678 /* <var_listnode2:nullable Object> isa Array[Object] */
7679 cltype
= type_array__Arraykernel__Object
.color
;
7680 idtype
= type_array__Arraykernel__Object
.id
;
7681 if(var_listnode2
== NULL
) {
7684 if(cltype
>= var_listnode2
->type
->table_size
) {
7687 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
7691 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29456);
7694 var_pexprnode3
= var_nodearraylist2
;
7695 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7696 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
7697 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
7698 if(var_pexprnode3
== NULL
) {
7701 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
7704 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
7708 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29458);
7711 var8
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode2
) /* concat on <self:ReduceAction859>*/;
7712 var_listnode4
= var8
;
7714 if (var_pexprnode3
== NULL
) {
7715 var10
= 0; /* is null */
7717 var10
= 1; /* arg is null and recv is not */
7720 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode3
) /* add on <var_listnode4:Array[Object]>*/;
7723 var11
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
7725 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var11
, var_listnode4
, var12
) /* init_asuperstringexpr on <var11:ASuperstringExpr>*/;
7726 CHECK_NEW_parser_nodes__ASuperstringExpr(var11
);
7727 var_pexprnode1
= var11
;
7728 var_node_list
= var_pexprnode1
;
7729 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction859> */
7730 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
7731 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
7734 /* method parser#ReduceAction859#action for (self: Object, Parser) */
7735 void VIRTUAL_parser__ReduceAction859__action(val
* self
, val
* p0
) {
7736 parser__ReduceAction859__action(self
, p0
);
7739 /* method parser#ReduceAction860#action for (self: ReduceAction860, Parser) */
7740 void parser__ReduceAction860__action(val
* self
, val
* p0
) {
7741 val
* var_p
/* var p: Parser */;
7742 val
* var
/* : null */;
7743 val
* var_node_list
/* var node_list: nullable Object */;
7744 val
* var1
/* : nullable Object */;
7745 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7746 val
* var2
/* : nullable Object */;
7747 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7748 val
* var3
/* : nullable Object */;
7749 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7750 val
* var4
/* : Array[Object] */;
7751 val
* var_listnode5
/* var listnode5: Array[Object] */;
7752 val
* var_listnode2
/* var listnode2: nullable Object */;
7753 short int var5
/* : Bool */;
7756 val
* var_listnode3
/* var listnode3: nullable Object */;
7757 short int var6
/* : Bool */;
7760 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7761 short int var9
/* : Bool */;
7764 val
* var12
/* : Array[Object] */;
7765 val
* var13
/* : Array[Object] */;
7766 val
* var14
/* : null */;
7767 short int var15
/* : Bool */;
7768 val
* var16
/* : ASuperstringExpr */;
7769 val
* var17
/* : null */;
7770 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
7771 long var18
/* : Int */;
7772 long var19
/* : Int */;
7775 var_node_list
= var
;
7776 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7777 var_nodearraylist3
= var1
;
7778 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7779 var_nodearraylist2
= var2
;
7780 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7781 var_nodearraylist1
= var3
;
7782 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
7783 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
7784 CHECK_NEW_array__Array(var4
);
7785 var_listnode5
= var4
;
7786 var_listnode2
= var_nodearraylist1
;
7787 /* <var_listnode2:nullable Object> isa Array[Object] */
7788 cltype
= type_array__Arraykernel__Object
.color
;
7789 idtype
= type_array__Arraykernel__Object
.id
;
7790 if(var_listnode2
== NULL
) {
7793 if(cltype
>= var_listnode2
->type
->table_size
) {
7796 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
7800 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29481);
7803 var_listnode3
= var_nodearraylist2
;
7804 /* <var_listnode3:nullable Object> isa Array[Object] */
7805 cltype7
= type_array__Arraykernel__Object
.color
;
7806 idtype8
= type_array__Arraykernel__Object
.id
;
7807 if(var_listnode3
== NULL
) {
7810 if(cltype7
>= var_listnode3
->type
->table_size
) {
7813 var6
= var_listnode3
->type
->type_table
[cltype7
] == idtype8
;
7817 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29483);
7820 var_pexprnode4
= var_nodearraylist3
;
7821 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7822 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
7823 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
7824 if(var_pexprnode4
== NULL
) {
7827 if(cltype10
>= var_pexprnode4
->type
->table_size
) {
7830 var9
= var_pexprnode4
->type
->type_table
[cltype10
] == idtype11
;
7834 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29485);
7837 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode2
) /* concat on <self:ReduceAction860>*/;
7838 var_listnode5
= var12
;
7839 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode3
) /* concat on <self:ReduceAction860>*/;
7840 var_listnode5
= var13
;
7842 if (var_pexprnode4
== NULL
) {
7843 var15
= 0; /* is null */
7845 var15
= 1; /* arg is null and recv is not */
7848 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pexprnode4
) /* add on <var_listnode5:Array[Object]>*/;
7851 var16
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
7853 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var16
, var_listnode5
, var17
) /* init_asuperstringexpr on <var16:ASuperstringExpr>*/;
7854 CHECK_NEW_parser_nodes__ASuperstringExpr(var16
);
7855 var_pexprnode1
= var16
;
7856 var_node_list
= var_pexprnode1
;
7857 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction860> */
7858 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
7859 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
7862 /* method parser#ReduceAction860#action for (self: Object, Parser) */
7863 void VIRTUAL_parser__ReduceAction860__action(val
* self
, val
* p0
) {
7864 parser__ReduceAction860__action(self
, p0
);
7867 /* method parser#ReduceAction861#action for (self: ReduceAction861, Parser) */
7868 void parser__ReduceAction861__action(val
* self
, val
* p0
) {
7869 val
* var_p
/* var p: Parser */;
7870 val
* var
/* : null */;
7871 val
* var_node_list
/* var node_list: nullable Object */;
7872 val
* var1
/* : nullable Object */;
7873 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7874 val
* var2
/* : nullable Object */;
7875 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7876 val
* var3
/* : nullable Object */;
7877 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7878 val
* var4
/* : Array[Object] */;
7879 val
* var_listnode4
/* var listnode4: Array[Object] */;
7880 val
* var_listnode2
/* var listnode2: nullable Object */;
7881 short int var5
/* : Bool */;
7884 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7885 short int var6
/* : Bool */;
7888 val
* var9
/* : Array[Object] */;
7889 val
* var10
/* : null */;
7890 short int var11
/* : Bool */;
7891 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
7892 short int var12
/* : Bool */;
7895 val
* var15
/* : ASuperstringExpr */;
7896 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
7897 long var16
/* : Int */;
7898 long var17
/* : Int */;
7901 var_node_list
= var
;
7902 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7903 var_nodearraylist3
= var1
;
7904 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7905 var_nodearraylist2
= var2
;
7906 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7907 var_nodearraylist1
= var3
;
7908 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
7909 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
7910 CHECK_NEW_array__Array(var4
);
7911 var_listnode4
= var4
;
7912 var_listnode2
= var_nodearraylist1
;
7913 /* <var_listnode2:nullable Object> isa Array[Object] */
7914 cltype
= type_array__Arraykernel__Object
.color
;
7915 idtype
= type_array__Arraykernel__Object
.id
;
7916 if(var_listnode2
== NULL
) {
7919 if(cltype
>= var_listnode2
->type
->table_size
) {
7922 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
7926 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29509);
7929 var_pexprnode3
= var_nodearraylist2
;
7930 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7931 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7932 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7933 if(var_pexprnode3
== NULL
) {
7936 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7939 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7943 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29511);
7946 var9
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode2
) /* concat on <self:ReduceAction861>*/;
7947 var_listnode4
= var9
;
7949 if (var_pexprnode3
== NULL
) {
7950 var11
= 0; /* is null */
7952 var11
= 1; /* arg is null and recv is not */
7955 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode3
) /* add on <var_listnode4:Array[Object]>*/;
7958 var_pannotationsnode5
= var_nodearraylist3
;
7959 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
7960 cltype13
= type_nullable_parser_nodes__AAnnotations
.color
;
7961 idtype14
= type_nullable_parser_nodes__AAnnotations
.id
;
7962 if(var_pannotationsnode5
== NULL
) {
7965 if(cltype13
>= var_pannotationsnode5
->type
->table_size
) {
7968 var12
= var_pannotationsnode5
->type
->type_table
[cltype13
] == idtype14
;
7972 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29517);
7975 var15
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
7976 ((void (*)(val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var15
, var_listnode4
, var_pannotationsnode5
) /* init_asuperstringexpr on <var15:ASuperstringExpr>*/;
7977 CHECK_NEW_parser_nodes__ASuperstringExpr(var15
);
7978 var_pexprnode1
= var15
;
7979 var_node_list
= var_pexprnode1
;
7980 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction861> */
7981 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
7982 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
7985 /* method parser#ReduceAction861#action for (self: Object, Parser) */
7986 void VIRTUAL_parser__ReduceAction861__action(val
* self
, val
* p0
) {
7987 parser__ReduceAction861__action(self
, p0
);
7990 /* method parser#ReduceAction862#action for (self: ReduceAction862, Parser) */
7991 void parser__ReduceAction862__action(val
* self
, val
* p0
) {
7992 val
* var_p
/* var p: Parser */;
7993 val
* var
/* : null */;
7994 val
* var_node_list
/* var node_list: nullable Object */;
7995 val
* var1
/* : nullable Object */;
7996 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7997 val
* var2
/* : nullable Object */;
7998 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7999 val
* var3
/* : nullable Object */;
8000 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8001 val
* var4
/* : nullable Object */;
8002 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8003 val
* var5
/* : Array[Object] */;
8004 val
* var_listnode5
/* var listnode5: Array[Object] */;
8005 val
* var_listnode2
/* var listnode2: nullable Object */;
8006 short int var6
/* : Bool */;
8009 val
* var_listnode3
/* var listnode3: nullable Object */;
8010 short int var7
/* : Bool */;
8013 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8014 short int var10
/* : Bool */;
8017 val
* var13
/* : Array[Object] */;
8018 val
* var14
/* : Array[Object] */;
8019 val
* var15
/* : null */;
8020 short int var16
/* : Bool */;
8021 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
8022 short int var17
/* : Bool */;
8025 val
* var20
/* : ASuperstringExpr */;
8026 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
8027 long var21
/* : Int */;
8028 long var22
/* : Int */;
8031 var_node_list
= var
;
8032 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8033 var_nodearraylist4
= var1
;
8034 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8035 var_nodearraylist3
= var2
;
8036 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8037 var_nodearraylist2
= var3
;
8038 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8039 var_nodearraylist1
= var4
;
8040 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
8041 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
8042 CHECK_NEW_array__Array(var5
);
8043 var_listnode5
= var5
;
8044 var_listnode2
= var_nodearraylist1
;
8045 /* <var_listnode2:nullable Object> isa Array[Object] */
8046 cltype
= type_array__Arraykernel__Object
.color
;
8047 idtype
= type_array__Arraykernel__Object
.id
;
8048 if(var_listnode2
== NULL
) {
8051 if(cltype
>= var_listnode2
->type
->table_size
) {
8054 var6
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
8058 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29537);
8061 var_listnode3
= var_nodearraylist2
;
8062 /* <var_listnode3:nullable Object> isa Array[Object] */
8063 cltype8
= type_array__Arraykernel__Object
.color
;
8064 idtype9
= type_array__Arraykernel__Object
.id
;
8065 if(var_listnode3
== NULL
) {
8068 if(cltype8
>= var_listnode3
->type
->table_size
) {
8071 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
8075 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29539);
8078 var_pexprnode4
= var_nodearraylist3
;
8079 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8080 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
8081 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
8082 if(var_pexprnode4
== NULL
) {
8085 if(cltype11
>= var_pexprnode4
->type
->table_size
) {
8088 var10
= var_pexprnode4
->type
->type_table
[cltype11
] == idtype12
;
8092 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29541);
8095 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode2
) /* concat on <self:ReduceAction862>*/;
8096 var_listnode5
= var13
;
8097 var14
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode3
) /* concat on <self:ReduceAction862>*/;
8098 var_listnode5
= var14
;
8100 if (var_pexprnode4
== NULL
) {
8101 var16
= 0; /* is null */
8103 var16
= 1; /* arg is null and recv is not */
8106 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pexprnode4
) /* add on <var_listnode5:Array[Object]>*/;
8109 var_pannotationsnode6
= var_nodearraylist4
;
8110 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
8111 cltype18
= type_nullable_parser_nodes__AAnnotations
.color
;
8112 idtype19
= type_nullable_parser_nodes__AAnnotations
.id
;
8113 if(var_pannotationsnode6
== NULL
) {
8116 if(cltype18
>= var_pannotationsnode6
->type
->table_size
) {
8119 var17
= var_pannotationsnode6
->type
->type_table
[cltype18
] == idtype19
;
8123 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29548);
8126 var20
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
8127 ((void (*)(val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var20
, var_listnode5
, var_pannotationsnode6
) /* init_asuperstringexpr on <var20:ASuperstringExpr>*/;
8128 CHECK_NEW_parser_nodes__ASuperstringExpr(var20
);
8129 var_pexprnode1
= var20
;
8130 var_node_list
= var_pexprnode1
;
8131 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction862> */
8132 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
8133 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
8136 /* method parser#ReduceAction862#action for (self: Object, Parser) */
8137 void VIRTUAL_parser__ReduceAction862__action(val
* self
, val
* p0
) {
8138 parser__ReduceAction862__action(self
, p0
);
8141 /* method parser#ReduceAction863#action for (self: ReduceAction863, Parser) */
8142 void parser__ReduceAction863__action(val
* self
, val
* p0
) {
8143 val
* var_p
/* var p: Parser */;
8144 val
* var
/* : null */;
8145 val
* var_node_list
/* var node_list: nullable Object */;
8146 val
* var1
/* : nullable Object */;
8147 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8148 val
* var2
/* : nullable Object */;
8149 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8150 val
* var3
/* : nullable Object */;
8151 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8152 val
* var4
/* : nullable Object */;
8153 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8154 val
* var5
/* : Array[Object] */;
8155 val
* var_listnode3
/* var listnode3: Array[Object] */;
8156 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
8157 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8158 val
* var6
/* : null */;
8159 short int var7
/* : Bool */;
8160 val
* var8
/* : null */;
8161 short int var9
/* : Bool */;
8162 long var10
/* : Int */;
8163 long var11
/* : Int */;
8166 var_node_list
= var
;
8167 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8168 var_nodearraylist4
= var1
;
8169 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8170 var_nodearraylist3
= var2
;
8171 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8172 var_nodearraylist2
= var3
;
8173 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8174 var_nodearraylist1
= var4
;
8175 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
8176 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
8177 CHECK_NEW_array__Array(var5
);
8178 var_listnode3
= var5
;
8179 var_pexprnode1
= var_nodearraylist1
;
8180 var_pexprnode2
= var_nodearraylist3
;
8182 if (var_pexprnode1
== NULL
) {
8183 var7
= 0; /* is null */
8185 var7
= 1; /* arg is null and recv is not */
8188 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode1
) /* add on <var_listnode3:Array[Object]>*/;
8192 if (var_pexprnode2
== NULL
) {
8193 var9
= 0; /* is null */
8195 var9
= 1; /* arg is null and recv is not */
8198 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
8201 var_node_list
= var_listnode3
;
8202 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction863> */
8203 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8204 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8207 /* method parser#ReduceAction863#action for (self: Object, Parser) */
8208 void VIRTUAL_parser__ReduceAction863__action(val
* self
, val
* p0
) {
8209 parser__ReduceAction863__action(self
, p0
);
8212 /* method parser#ReduceAction864#action for (self: ReduceAction864, Parser) */
8213 void parser__ReduceAction864__action(val
* self
, val
* p0
) {
8214 val
* var_p
/* var p: Parser */;
8215 val
* var
/* : null */;
8216 val
* var_node_list
/* var node_list: nullable Object */;
8217 val
* var1
/* : nullable Object */;
8218 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8219 val
* var_tstartstringnode2
/* var tstartstringnode2: nullable Object */;
8220 short int var2
/* : Bool */;
8223 val
* var3
/* : AStartStringExpr */;
8224 val
* var_pexprnode1
/* var pexprnode1: nullable AStartStringExpr */;
8225 long var4
/* : Int */;
8226 long var5
/* : Int */;
8229 var_node_list
= var
;
8230 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8231 var_nodearraylist1
= var1
;
8232 var_tstartstringnode2
= var_nodearraylist1
;
8233 /* <var_tstartstringnode2:nullable Object> isa nullable TStartString */
8234 cltype
= type_nullable_parser_nodes__TStartString
.color
;
8235 idtype
= type_nullable_parser_nodes__TStartString
.id
;
8236 if(var_tstartstringnode2
== NULL
) {
8239 if(cltype
>= var_tstartstringnode2
->type
->table_size
) {
8242 var2
= var_tstartstringnode2
->type
->type_table
[cltype
] == idtype
;
8246 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29586);
8249 var3
= NEW_parser_nodes__AStartStringExpr(&type_parser_nodes__AStartStringExpr
);
8250 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStartStringExpr__init_astartstringexpr
]))(var3
, var_tstartstringnode2
) /* init_astartstringexpr on <var3:AStartStringExpr>*/;
8251 CHECK_NEW_parser_nodes__AStartStringExpr(var3
);
8252 var_pexprnode1
= var3
;
8253 var_node_list
= var_pexprnode1
;
8254 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction864> */
8255 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8256 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8259 /* method parser#ReduceAction864#action for (self: Object, Parser) */
8260 void VIRTUAL_parser__ReduceAction864__action(val
* self
, val
* p0
) {
8261 parser__ReduceAction864__action(self
, p0
);
8264 /* method parser#ReduceAction866#action for (self: ReduceAction866, Parser) */
8265 void parser__ReduceAction866__action(val
* self
, val
* p0
) {
8266 val
* var_p
/* var p: Parser */;
8267 val
* var
/* : null */;
8268 val
* var_node_list
/* var node_list: nullable Object */;
8269 val
* var1
/* : nullable Object */;
8270 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8271 val
* var_tmidstringnode2
/* var tmidstringnode2: nullable Object */;
8272 short int var2
/* : Bool */;
8275 val
* var3
/* : AMidStringExpr */;
8276 val
* var_pexprnode1
/* var pexprnode1: nullable AMidStringExpr */;
8277 long var4
/* : Int */;
8278 long var5
/* : Int */;
8281 var_node_list
= var
;
8282 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8283 var_nodearraylist1
= var1
;
8284 var_tmidstringnode2
= var_nodearraylist1
;
8285 /* <var_tmidstringnode2:nullable Object> isa nullable TMidString */
8286 cltype
= type_nullable_parser_nodes__TMidString
.color
;
8287 idtype
= type_nullable_parser_nodes__TMidString
.id
;
8288 if(var_tmidstringnode2
== NULL
) {
8291 if(cltype
>= var_tmidstringnode2
->type
->table_size
) {
8294 var2
= var_tmidstringnode2
->type
->type_table
[cltype
] == idtype
;
8298 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29601);
8301 var3
= NEW_parser_nodes__AMidStringExpr(&type_parser_nodes__AMidStringExpr
);
8302 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AMidStringExpr__init_amidstringexpr
]))(var3
, var_tmidstringnode2
) /* init_amidstringexpr on <var3:AMidStringExpr>*/;
8303 CHECK_NEW_parser_nodes__AMidStringExpr(var3
);
8304 var_pexprnode1
= var3
;
8305 var_node_list
= var_pexprnode1
;
8306 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction866> */
8307 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8308 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8311 /* method parser#ReduceAction866#action for (self: Object, Parser) */
8312 void VIRTUAL_parser__ReduceAction866__action(val
* self
, val
* p0
) {
8313 parser__ReduceAction866__action(self
, p0
);
8316 /* method parser#ReduceAction867#action for (self: ReduceAction867, Parser) */
8317 void parser__ReduceAction867__action(val
* self
, val
* p0
) {
8318 val
* var_p
/* var p: Parser */;
8319 val
* var
/* : null */;
8320 val
* var_node_list
/* var node_list: nullable Object */;
8321 val
* var1
/* : nullable Object */;
8322 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8323 val
* var_tendstringnode2
/* var tendstringnode2: nullable Object */;
8324 short int var2
/* : Bool */;
8327 val
* var3
/* : AEndStringExpr */;
8328 val
* var_pexprnode1
/* var pexprnode1: nullable AEndStringExpr */;
8329 long var4
/* : Int */;
8330 long var5
/* : Int */;
8333 var_node_list
= var
;
8334 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8335 var_nodearraylist1
= var1
;
8336 var_tendstringnode2
= var_nodearraylist1
;
8337 /* <var_tendstringnode2:nullable Object> isa nullable TEndString */
8338 cltype
= type_nullable_parser_nodes__TEndString
.color
;
8339 idtype
= type_nullable_parser_nodes__TEndString
.id
;
8340 if(var_tendstringnode2
== NULL
) {
8343 if(cltype
>= var_tendstringnode2
->type
->table_size
) {
8346 var2
= var_tendstringnode2
->type
->type_table
[cltype
] == idtype
;
8350 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29616);
8353 var3
= NEW_parser_nodes__AEndStringExpr(&type_parser_nodes__AEndStringExpr
);
8354 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AEndStringExpr__init_aendstringexpr
]))(var3
, var_tendstringnode2
) /* init_aendstringexpr on <var3:AEndStringExpr>*/;
8355 CHECK_NEW_parser_nodes__AEndStringExpr(var3
);
8356 var_pexprnode1
= var3
;
8357 var_node_list
= var_pexprnode1
;
8358 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction867> */
8359 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8360 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8363 /* method parser#ReduceAction867#action for (self: Object, Parser) */
8364 void VIRTUAL_parser__ReduceAction867__action(val
* self
, val
* p0
) {
8365 parser__ReduceAction867__action(self
, p0
);
8368 /* method parser#ReduceAction868#action for (self: ReduceAction868, Parser) */
8369 void parser__ReduceAction868__action(val
* self
, val
* p0
) {
8370 val
* var_p
/* var p: Parser */;
8371 val
* var
/* : null */;
8372 val
* var_node_list
/* var node_list: nullable Object */;
8373 val
* var1
/* : nullable Object */;
8374 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8375 val
* var2
/* : nullable Object */;
8376 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8377 val
* var3
/* : Array[Object] */;
8378 val
* var_listnode5
/* var listnode5: Array[Object] */;
8379 val
* var_tatnode2
/* var tatnode2: nullable Object */;
8380 short int var4
/* : Bool */;
8383 val
* var_pannotationnode4
/* var pannotationnode4: nullable Object */;
8384 short int var5
/* : Bool */;
8387 val
* var8
/* : null */;
8388 short int var9
/* : Bool */;
8389 val
* var10
/* : AAnnotations */;
8390 val
* var11
/* : null */;
8391 val
* var12
/* : null */;
8392 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable AAnnotations */;
8393 long var13
/* : Int */;
8394 long var14
/* : Int */;
8397 var_node_list
= var
;
8398 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8399 var_nodearraylist2
= var1
;
8400 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8401 var_nodearraylist1
= var2
;
8402 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
8403 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
8404 CHECK_NEW_array__Array(var3
);
8405 var_listnode5
= var3
;
8406 var_tatnode2
= var_nodearraylist1
;
8407 /* <var_tatnode2:nullable Object> isa nullable TAt */
8408 cltype
= type_nullable_parser_nodes__TAt
.color
;
8409 idtype
= type_nullable_parser_nodes__TAt
.id
;
8410 if(var_tatnode2
== NULL
) {
8413 if(cltype
>= var_tatnode2
->type
->table_size
) {
8416 var4
= var_tatnode2
->type
->type_table
[cltype
] == idtype
;
8420 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29633);
8423 var_pannotationnode4
= var_nodearraylist2
;
8424 /* <var_pannotationnode4:nullable Object> isa nullable AAnnotation */
8425 cltype6
= type_nullable_parser_nodes__AAnnotation
.color
;
8426 idtype7
= type_nullable_parser_nodes__AAnnotation
.id
;
8427 if(var_pannotationnode4
== NULL
) {
8430 if(cltype6
>= var_pannotationnode4
->type
->table_size
) {
8433 var5
= var_pannotationnode4
->type
->type_table
[cltype6
] == idtype7
;
8437 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29635);
8441 if (var_pannotationnode4
== NULL
) {
8442 var9
= 0; /* is null */
8444 var9
= 1; /* arg is null and recv is not */
8447 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pannotationnode4
) /* add on <var_listnode5:Array[Object]>*/;
8450 var10
= NEW_parser_nodes__AAnnotations(&type_parser_nodes__AAnnotations
);
8453 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AAnnotations__init_aannotations
]))(var10
, var_tatnode2
, var11
, var_listnode5
, var12
) /* init_aannotations on <var10:AAnnotations>*/;
8454 CHECK_NEW_parser_nodes__AAnnotations(var10
);
8455 var_pannotationsnode1
= var10
;
8456 var_node_list
= var_pannotationsnode1
;
8457 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction868> */
8458 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
8459 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
8462 /* method parser#ReduceAction868#action for (self: Object, Parser) */
8463 void VIRTUAL_parser__ReduceAction868__action(val
* self
, val
* p0
) {
8464 parser__ReduceAction868__action(self
, p0
);
8467 /* method parser#ReduceAction869#action for (self: ReduceAction869, Parser) */
8468 void parser__ReduceAction869__action(val
* self
, val
* p0
) {
8469 val
* var_p
/* var p: Parser */;
8470 val
* var
/* : null */;
8471 val
* var_node_list
/* var node_list: nullable Object */;
8472 val
* var1
/* : nullable Object */;
8473 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8474 val
* var2
/* : nullable Object */;
8475 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8476 val
* var3
/* : nullable Object */;
8477 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8478 val
* var4
/* : nullable Object */;
8479 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8480 val
* var5
/* : nullable Object */;
8481 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8482 val
* var6
/* : nullable Object */;
8483 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8484 val
* var7
/* : Array[Object] */;
8485 val
* var_listnode5
/* var listnode5: Array[Object] */;
8486 val
* var_tatnode2
/* var tatnode2: nullable Object */;
8487 short int var8
/* : Bool */;
8490 val
* var_toparnode3
/* var toparnode3: nullable Object */;
8491 short int var9
/* : Bool */;
8494 val
* var_listnode4
/* var listnode4: nullable Object */;
8495 short int var12
/* : Bool */;
8498 val
* var15
/* : Array[Object] */;
8499 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
8500 short int var16
/* : Bool */;
8503 val
* var19
/* : AAnnotations */;
8504 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable AAnnotations */;
8505 long var20
/* : Int */;
8506 long var21
/* : Int */;
8509 var_node_list
= var
;
8510 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8511 var_nodearraylist6
= var1
;
8512 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8513 var_nodearraylist5
= var2
;
8514 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8515 var_nodearraylist4
= var3
;
8516 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8517 var_nodearraylist3
= var4
;
8518 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8519 var_nodearraylist2
= var5
;
8520 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8521 var_nodearraylist1
= var6
;
8522 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
8523 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
8524 CHECK_NEW_array__Array(var7
);
8525 var_listnode5
= var7
;
8526 var_tatnode2
= var_nodearraylist1
;
8527 /* <var_tatnode2:nullable Object> isa nullable TAt */
8528 cltype
= type_nullable_parser_nodes__TAt
.color
;
8529 idtype
= type_nullable_parser_nodes__TAt
.id
;
8530 if(var_tatnode2
== NULL
) {
8533 if(cltype
>= var_tatnode2
->type
->table_size
) {
8536 var8
= var_tatnode2
->type
->type_table
[cltype
] == idtype
;
8540 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29662);
8543 var_toparnode3
= var_nodearraylist2
;
8544 /* <var_toparnode3:nullable Object> isa nullable TOpar */
8545 cltype10
= type_nullable_parser_nodes__TOpar
.color
;
8546 idtype11
= type_nullable_parser_nodes__TOpar
.id
;
8547 if(var_toparnode3
== NULL
) {
8550 if(cltype10
>= var_toparnode3
->type
->table_size
) {
8553 var9
= var_toparnode3
->type
->type_table
[cltype10
] == idtype11
;
8557 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29664);
8560 var_listnode4
= var_nodearraylist4
;
8561 /* <var_listnode4:nullable Object> isa Array[Object] */
8562 cltype13
= type_array__Arraykernel__Object
.color
;
8563 idtype14
= type_array__Arraykernel__Object
.id
;
8564 if(var_listnode4
== NULL
) {
8567 if(cltype13
>= var_listnode4
->type
->table_size
) {
8570 var12
= var_listnode4
->type
->type_table
[cltype13
] == idtype14
;
8574 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29666);
8577 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction869>*/;
8578 var_listnode5
= var15
;
8579 var_tcparnode6
= var_nodearraylist6
;
8580 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
8581 cltype17
= type_nullable_parser_nodes__TCpar
.color
;
8582 idtype18
= type_nullable_parser_nodes__TCpar
.id
;
8583 if(var_tcparnode6
== NULL
) {
8586 if(cltype17
>= var_tcparnode6
->type
->table_size
) {
8589 var16
= var_tcparnode6
->type
->type_table
[cltype17
] == idtype18
;
8593 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29669);
8596 var19
= NEW_parser_nodes__AAnnotations(&type_parser_nodes__AAnnotations
);
8597 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__AAnnotations__init_aannotations
]))(var19
, var_tatnode2
, var_toparnode3
, var_listnode5
, var_tcparnode6
) /* init_aannotations on <var19:AAnnotations>*/;
8598 CHECK_NEW_parser_nodes__AAnnotations(var19
);
8599 var_pannotationsnode1
= var19
;
8600 var_node_list
= var_pannotationsnode1
;
8601 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction869> */
8602 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
8603 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
8606 /* method parser#ReduceAction869#action for (self: Object, Parser) */
8607 void VIRTUAL_parser__ReduceAction869__action(val
* self
, val
* p0
) {
8608 parser__ReduceAction869__action(self
, p0
);
8611 /* method parser#ReduceAction870#action for (self: ReduceAction870, Parser) */
8612 void parser__ReduceAction870__action(val
* self
, val
* p0
) {
8613 val
* var_p
/* var p: Parser */;
8614 val
* var
/* : null */;
8615 val
* var_node_list
/* var node_list: nullable Object */;
8616 val
* var1
/* : nullable Object */;
8617 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8618 val
* var2
/* : Array[Object] */;
8619 val
* var_listnode4
/* var listnode4: Array[Object] */;
8620 val
* var_patidnode2
/* var patidnode2: nullable Object */;
8621 short int var3
/* : Bool */;
8624 val
* var4
/* : AAnnotation */;
8625 val
* var5
/* : null */;
8626 val
* var6
/* : null */;
8627 val
* var7
/* : null */;
8628 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
8629 long var8
/* : Int */;
8630 long var9
/* : Int */;
8633 var_node_list
= var
;
8634 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8635 var_nodearraylist1
= var1
;
8636 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
8637 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
8638 CHECK_NEW_array__Array(var2
);
8639 var_listnode4
= var2
;
8640 var_patidnode2
= var_nodearraylist1
;
8641 /* <var_patidnode2:nullable Object> isa nullable AAtid */
8642 cltype
= type_nullable_parser_nodes__AAtid
.color
;
8643 idtype
= type_nullable_parser_nodes__AAtid
.id
;
8644 if(var_patidnode2
== NULL
) {
8647 if(cltype
>= var_patidnode2
->type
->table_size
) {
8650 var3
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
8654 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29688);
8657 var4
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
8661 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var4
, var_patidnode2
, var5
, var_listnode4
, var6
, var7
) /* init_aannotation on <var4:AAnnotation>*/;
8662 CHECK_NEW_parser_nodes__AAnnotation(var4
);
8663 var_pannotationnode1
= var4
;
8664 var_node_list
= var_pannotationnode1
;
8665 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction870> */
8666 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
8667 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
8670 /* method parser#ReduceAction870#action for (self: Object, Parser) */
8671 void VIRTUAL_parser__ReduceAction870__action(val
* self
, val
* p0
) {
8672 parser__ReduceAction870__action(self
, p0
);
8675 /* method parser#ReduceAction871#action for (self: ReduceAction871, Parser) */
8676 void parser__ReduceAction871__action(val
* self
, val
* p0
) {
8677 val
* var_p
/* var p: Parser */;
8678 val
* var
/* : null */;
8679 val
* var_node_list
/* var node_list: nullable Object */;
8680 val
* var1
/* : nullable Object */;
8681 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8682 val
* var2
/* : nullable Object */;
8683 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8684 val
* var3
/* : Array[Object] */;
8685 val
* var_listnode4
/* var listnode4: Array[Object] */;
8686 val
* var_patidnode2
/* var patidnode2: nullable Object */;
8687 short int var4
/* : Bool */;
8690 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
8691 short int var5
/* : Bool */;
8694 val
* var8
/* : AAnnotation */;
8695 val
* var9
/* : null */;
8696 val
* var10
/* : null */;
8697 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
8698 long var11
/* : Int */;
8699 long var12
/* : Int */;
8702 var_node_list
= var
;
8703 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8704 var_nodearraylist2
= var1
;
8705 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8706 var_nodearraylist1
= var2
;
8707 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
8708 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
8709 CHECK_NEW_array__Array(var3
);
8710 var_listnode4
= var3
;
8711 var_patidnode2
= var_nodearraylist1
;
8712 /* <var_patidnode2:nullable Object> isa nullable AAtid */
8713 cltype
= type_nullable_parser_nodes__AAtid
.color
;
8714 idtype
= type_nullable_parser_nodes__AAtid
.id
;
8715 if(var_patidnode2
== NULL
) {
8718 if(cltype
>= var_patidnode2
->type
->table_size
) {
8721 var4
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
8725 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29709);
8728 var_pannotationsnode6
= var_nodearraylist2
;
8729 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
8730 cltype6
= type_nullable_parser_nodes__AAnnotations
.color
;
8731 idtype7
= type_nullable_parser_nodes__AAnnotations
.id
;
8732 if(var_pannotationsnode6
== NULL
) {
8735 if(cltype6
>= var_pannotationsnode6
->type
->table_size
) {
8738 var5
= var_pannotationsnode6
->type
->type_table
[cltype6
] == idtype7
;
8742 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29711);
8745 var8
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
8748 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var8
, var_patidnode2
, var9
, var_listnode4
, var10
, var_pannotationsnode6
) /* init_aannotation on <var8:AAnnotation>*/;
8749 CHECK_NEW_parser_nodes__AAnnotation(var8
);
8750 var_pannotationnode1
= var8
;
8751 var_node_list
= var_pannotationnode1
;
8752 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction871> */
8753 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
8754 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
8757 /* method parser#ReduceAction871#action for (self: Object, Parser) */
8758 void VIRTUAL_parser__ReduceAction871__action(val
* self
, val
* p0
) {
8759 parser__ReduceAction871__action(self
, p0
);
8762 /* method parser#ReduceAction872#action for (self: ReduceAction872, Parser) */
8763 void parser__ReduceAction872__action(val
* self
, val
* p0
) {
8764 val
* var_p
/* var p: Parser */;
8765 val
* var
/* : null */;
8766 val
* var_node_list
/* var node_list: nullable Object */;
8767 val
* var1
/* : nullable Object */;
8768 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8769 val
* var2
/* : nullable Object */;
8770 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8771 val
* var3
/* : nullable Object */;
8772 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8773 val
* var4
/* : nullable Object */;
8774 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8775 val
* var5
/* : nullable Object */;
8776 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8777 val
* var6
/* : nullable Object */;
8778 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8779 val
* var7
/* : Array[Object] */;
8780 val
* var_listnode5
/* var listnode5: Array[Object] */;
8781 val
* var_patidnode2
/* var patidnode2: nullable Object */;
8782 short int var8
/* : Bool */;
8785 val
* var_toparnode3
/* var toparnode3: nullable Object */;
8786 short int var9
/* : Bool */;
8789 val
* var_listnode4
/* var listnode4: nullable Object */;
8790 short int var12
/* : Bool */;
8793 val
* var15
/* : Array[Object] */;
8794 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
8795 short int var16
/* : Bool */;
8798 val
* var19
/* : AAnnotation */;
8799 val
* var20
/* : null */;
8800 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
8801 long var21
/* : Int */;
8802 long var22
/* : Int */;
8805 var_node_list
= var
;
8806 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8807 var_nodearraylist6
= var1
;
8808 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8809 var_nodearraylist5
= var2
;
8810 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8811 var_nodearraylist4
= var3
;
8812 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8813 var_nodearraylist3
= var4
;
8814 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8815 var_nodearraylist2
= var5
;
8816 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8817 var_nodearraylist1
= var6
;
8818 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
8819 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
8820 CHECK_NEW_array__Array(var7
);
8821 var_listnode5
= var7
;
8822 var_patidnode2
= var_nodearraylist1
;
8823 /* <var_patidnode2:nullable Object> isa nullable AAtid */
8824 cltype
= type_nullable_parser_nodes__AAtid
.color
;
8825 idtype
= type_nullable_parser_nodes__AAtid
.id
;
8826 if(var_patidnode2
== NULL
) {
8829 if(cltype
>= var_patidnode2
->type
->table_size
) {
8832 var8
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
8836 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29736);
8839 var_toparnode3
= var_nodearraylist2
;
8840 /* <var_toparnode3:nullable Object> isa nullable TOpar */
8841 cltype10
= type_nullable_parser_nodes__TOpar
.color
;
8842 idtype11
= type_nullable_parser_nodes__TOpar
.id
;
8843 if(var_toparnode3
== NULL
) {
8846 if(cltype10
>= var_toparnode3
->type
->table_size
) {
8849 var9
= var_toparnode3
->type
->type_table
[cltype10
] == idtype11
;
8853 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29738);
8856 var_listnode4
= var_nodearraylist4
;
8857 /* <var_listnode4:nullable Object> isa Array[Object] */
8858 cltype13
= type_array__Arraykernel__Object
.color
;
8859 idtype14
= type_array__Arraykernel__Object
.id
;
8860 if(var_listnode4
== NULL
) {
8863 if(cltype13
>= var_listnode4
->type
->table_size
) {
8866 var12
= var_listnode4
->type
->type_table
[cltype13
] == idtype14
;
8870 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29740);
8873 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction872>*/;
8874 var_listnode5
= var15
;
8875 var_tcparnode6
= var_nodearraylist6
;
8876 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
8877 cltype17
= type_nullable_parser_nodes__TCpar
.color
;
8878 idtype18
= type_nullable_parser_nodes__TCpar
.id
;
8879 if(var_tcparnode6
== NULL
) {
8882 if(cltype17
>= var_tcparnode6
->type
->table_size
) {
8885 var16
= var_tcparnode6
->type
->type_table
[cltype17
] == idtype18
;
8889 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29743);
8892 var19
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
8894 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var19
, var_patidnode2
, var_toparnode3
, var_listnode5
, var_tcparnode6
, var20
) /* init_aannotation on <var19:AAnnotation>*/;
8895 CHECK_NEW_parser_nodes__AAnnotation(var19
);
8896 var_pannotationnode1
= var19
;
8897 var_node_list
= var_pannotationnode1
;
8898 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction872> */
8899 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
8900 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
8903 /* method parser#ReduceAction872#action for (self: Object, Parser) */
8904 void VIRTUAL_parser__ReduceAction872__action(val
* self
, val
* p0
) {
8905 parser__ReduceAction872__action(self
, p0
);
8908 /* method parser#ReduceAction873#action for (self: ReduceAction873, Parser) */
8909 void parser__ReduceAction873__action(val
* self
, val
* p0
) {
8910 val
* var_p
/* var p: Parser */;
8911 val
* var
/* : null */;
8912 val
* var_node_list
/* var node_list: nullable Object */;
8913 val
* var1
/* : nullable Object */;
8914 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8915 val
* var2
/* : nullable Object */;
8916 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8917 val
* var3
/* : nullable Object */;
8918 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8919 val
* var4
/* : nullable Object */;
8920 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8921 val
* var5
/* : nullable Object */;
8922 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8923 val
* var6
/* : nullable Object */;
8924 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8925 val
* var7
/* : nullable Object */;
8926 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8927 val
* var8
/* : Array[Object] */;
8928 val
* var_listnode5
/* var listnode5: Array[Object] */;
8929 val
* var_patidnode2
/* var patidnode2: nullable Object */;
8930 short int var9
/* : Bool */;
8933 val
* var_toparnode3
/* var toparnode3: nullable Object */;
8934 short int var10
/* : Bool */;
8937 val
* var_listnode4
/* var listnode4: nullable Object */;
8938 short int var13
/* : Bool */;
8941 val
* var16
/* : Array[Object] */;
8942 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
8943 short int var17
/* : Bool */;
8946 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
8947 short int var20
/* : Bool */;
8950 val
* var23
/* : AAnnotation */;
8951 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
8952 long var24
/* : Int */;
8953 long var25
/* : Int */;
8956 var_node_list
= var
;
8957 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8958 var_nodearraylist7
= var1
;
8959 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8960 var_nodearraylist6
= var2
;
8961 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8962 var_nodearraylist5
= var3
;
8963 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8964 var_nodearraylist4
= var4
;
8965 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8966 var_nodearraylist3
= var5
;
8967 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8968 var_nodearraylist2
= var6
;
8969 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8970 var_nodearraylist1
= var7
;
8971 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
8972 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
8973 CHECK_NEW_array__Array(var8
);
8974 var_listnode5
= var8
;
8975 var_patidnode2
= var_nodearraylist1
;
8976 /* <var_patidnode2:nullable Object> isa nullable AAtid */
8977 cltype
= type_nullable_parser_nodes__AAtid
.color
;
8978 idtype
= type_nullable_parser_nodes__AAtid
.id
;
8979 if(var_patidnode2
== NULL
) {
8982 if(cltype
>= var_patidnode2
->type
->table_size
) {
8985 var9
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
8989 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29769);
8992 var_toparnode3
= var_nodearraylist2
;
8993 /* <var_toparnode3:nullable Object> isa nullable TOpar */
8994 cltype11
= type_nullable_parser_nodes__TOpar
.color
;
8995 idtype12
= type_nullable_parser_nodes__TOpar
.id
;
8996 if(var_toparnode3
== NULL
) {
8999 if(cltype11
>= var_toparnode3
->type
->table_size
) {
9002 var10
= var_toparnode3
->type
->type_table
[cltype11
] == idtype12
;
9006 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29771);
9009 var_listnode4
= var_nodearraylist4
;
9010 /* <var_listnode4:nullable Object> isa Array[Object] */
9011 cltype14
= type_array__Arraykernel__Object
.color
;
9012 idtype15
= type_array__Arraykernel__Object
.id
;
9013 if(var_listnode4
== NULL
) {
9016 if(cltype14
>= var_listnode4
->type
->table_size
) {
9019 var13
= var_listnode4
->type
->type_table
[cltype14
] == idtype15
;
9023 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29773);
9026 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction873>*/;
9027 var_listnode5
= var16
;
9028 var_tcparnode6
= var_nodearraylist6
;
9029 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
9030 cltype18
= type_nullable_parser_nodes__TCpar
.color
;
9031 idtype19
= type_nullable_parser_nodes__TCpar
.id
;
9032 if(var_tcparnode6
== NULL
) {
9035 if(cltype18
>= var_tcparnode6
->type
->table_size
) {
9038 var17
= var_tcparnode6
->type
->type_table
[cltype18
] == idtype19
;
9042 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29776);
9045 var_pannotationsnode7
= var_nodearraylist7
;
9046 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
9047 cltype21
= type_nullable_parser_nodes__AAnnotations
.color
;
9048 idtype22
= type_nullable_parser_nodes__AAnnotations
.id
;
9049 if(var_pannotationsnode7
== NULL
) {
9052 if(cltype21
>= var_pannotationsnode7
->type
->table_size
) {
9055 var20
= var_pannotationsnode7
->type
->type_table
[cltype21
] == idtype22
;
9059 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29778);
9062 var23
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
9063 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var23
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var23
, var_patidnode2
, var_toparnode3
, var_listnode5
, var_tcparnode6
, var_pannotationsnode7
) /* init_aannotation on <var23:AAnnotation>*/;
9064 CHECK_NEW_parser_nodes__AAnnotation(var23
);
9065 var_pannotationnode1
= var23
;
9066 var_node_list
= var_pannotationnode1
;
9067 var24
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction873> */
9068 var25
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var24
) /* go_to on <var_p:Parser>*/;
9069 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var25
, var_node_list
) /* push on <var_p:Parser>*/;
9072 /* method parser#ReduceAction873#action for (self: Object, Parser) */
9073 void VIRTUAL_parser__ReduceAction873__action(val
* self
, val
* p0
) {
9074 parser__ReduceAction873__action(self
, p0
);
9077 /* method parser#ReduceAction874#action for (self: ReduceAction874, Parser) */
9078 void parser__ReduceAction874__action(val
* self
, val
* p0
) {
9079 val
* var_p
/* var p: Parser */;
9080 val
* var
/* : null */;
9081 val
* var_node_list
/* var node_list: nullable Object */;
9082 val
* var1
/* : nullable Object */;
9083 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9084 val
* var2
/* : Array[Object] */;
9085 val
* var_listnode5
/* var listnode5: Array[Object] */;
9086 val
* var_listnode4
/* var listnode4: nullable Object */;
9087 short int var3
/* : Bool */;
9090 val
* var4
/* : Array[Object] */;
9091 val
* var5
/* : AAnnotations */;
9092 val
* var6
/* : null */;
9093 val
* var7
/* : null */;
9094 val
* var8
/* : null */;
9095 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable AAnnotations */;
9096 long var9
/* : Int */;
9097 long var10
/* : Int */;
9100 var_node_list
= var
;
9101 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9102 var_nodearraylist1
= var1
;
9103 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
9104 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
9105 CHECK_NEW_array__Array(var2
);
9106 var_listnode5
= var2
;
9107 var_listnode4
= var_nodearraylist1
;
9108 /* <var_listnode4:nullable Object> isa Array[Object] */
9109 cltype
= type_array__Arraykernel__Object
.color
;
9110 idtype
= type_array__Arraykernel__Object
.id
;
9111 if(var_listnode4
== NULL
) {
9114 if(cltype
>= var_listnode4
->type
->table_size
) {
9117 var3
= var_listnode4
->type
->type_table
[cltype
] == idtype
;
9121 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29798);
9124 var4
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction874>*/;
9125 var_listnode5
= var4
;
9126 var5
= NEW_parser_nodes__AAnnotations(&type_parser_nodes__AAnnotations
);
9130 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AAnnotations__init_aannotations
]))(var5
, var6
, var7
, var_listnode5
, var8
) /* init_aannotations on <var5:AAnnotations>*/;
9131 CHECK_NEW_parser_nodes__AAnnotations(var5
);
9132 var_pannotationsnode1
= var5
;
9133 var_node_list
= var_pannotationsnode1
;
9134 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction874> */
9135 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
9136 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
9139 /* method parser#ReduceAction874#action for (self: Object, Parser) */
9140 void VIRTUAL_parser__ReduceAction874__action(val
* self
, val
* p0
) {
9141 parser__ReduceAction874__action(self
, p0
);
9144 /* method parser#ReduceAction875#action for (self: ReduceAction875, Parser) */
9145 void parser__ReduceAction875__action(val
* self
, val
* p0
) {
9146 val
* var_p
/* var p: Parser */;
9147 val
* var
/* : null */;
9148 val
* var_node_list
/* var node_list: nullable Object */;
9149 val
* var1
/* : nullable Object */;
9150 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9151 val
* var2
/* : Array[Object] */;
9152 val
* var_listnode2
/* var listnode2: Array[Object] */;
9153 val
* var_pannotationnode1
/* var pannotationnode1: nullable Object */;
9154 val
* var3
/* : null */;
9155 short int var4
/* : Bool */;
9156 long var5
/* : Int */;
9157 long var6
/* : Int */;
9160 var_node_list
= var
;
9161 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9162 var_nodearraylist1
= var1
;
9163 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
9164 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
9165 CHECK_NEW_array__Array(var2
);
9166 var_listnode2
= var2
;
9167 var_pannotationnode1
= var_nodearraylist1
;
9169 if (var_pannotationnode1
== NULL
) {
9170 var4
= 0; /* is null */
9172 var4
= 1; /* arg is null and recv is not */
9175 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_pannotationnode1
) /* add on <var_listnode2:Array[Object]>*/;
9178 var_node_list
= var_listnode2
;
9179 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction875> */
9180 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
9181 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
9184 /* method parser#ReduceAction875#action for (self: Object, Parser) */
9185 void VIRTUAL_parser__ReduceAction875__action(val
* self
, val
* p0
) {
9186 parser__ReduceAction875__action(self
, p0
);
9189 /* method parser#ReduceAction876#action for (self: ReduceAction876, Parser) */
9190 void parser__ReduceAction876__action(val
* self
, val
* p0
) {
9191 val
* var_p
/* var p: Parser */;
9192 val
* var
/* : null */;
9193 val
* var_node_list
/* var node_list: nullable Object */;
9194 val
* var1
/* : nullable Object */;
9195 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9196 val
* var2
/* : nullable Object */;
9197 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9198 val
* var3
/* : Array[Object] */;
9199 val
* var_listnode3
/* var listnode3: Array[Object] */;
9200 val
* var_pannotationnode1
/* var pannotationnode1: nullable Object */;
9201 val
* var_listnode2
/* var listnode2: nullable Object */;
9202 short int var4
/* : Bool */;
9205 val
* var5
/* : null */;
9206 short int var6
/* : Bool */;
9207 val
* var7
/* : Array[Object] */;
9208 long var8
/* : Int */;
9209 long var9
/* : Int */;
9212 var_node_list
= var
;
9213 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9214 var_nodearraylist2
= var1
;
9215 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9216 var_nodearraylist1
= var2
;
9217 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
9218 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
9219 CHECK_NEW_array__Array(var3
);
9220 var_listnode3
= var3
;
9221 var_pannotationnode1
= var_nodearraylist1
;
9222 var_listnode2
= var_nodearraylist2
;
9223 /* <var_listnode2:nullable Object> isa Array[Object] */
9224 cltype
= type_array__Arraykernel__Object
.color
;
9225 idtype
= type_array__Arraykernel__Object
.id
;
9226 if(var_listnode2
== NULL
) {
9229 if(cltype
>= var_listnode2
->type
->table_size
) {
9232 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
9236 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29835);
9240 if (var_pannotationnode1
== NULL
) {
9241 var6
= 0; /* is null */
9243 var6
= 1; /* arg is null and recv is not */
9246 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pannotationnode1
) /* add on <var_listnode3:Array[Object]>*/;
9249 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction876>*/;
9250 var_listnode3
= var7
;
9251 var_node_list
= var_listnode3
;
9252 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction876> */
9253 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
9254 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
9257 /* method parser#ReduceAction876#action for (self: Object, Parser) */
9258 void VIRTUAL_parser__ReduceAction876__action(val
* self
, val
* p0
) {
9259 parser__ReduceAction876__action(self
, p0
);
9262 /* method parser#ReduceAction878#action for (self: ReduceAction878, Parser) */
9263 void parser__ReduceAction878__action(val
* self
, val
* p0
) {
9264 val
* var_p
/* var p: Parser */;
9265 val
* var
/* : null */;
9266 val
* var_node_list
/* var node_list: nullable Object */;
9267 val
* var1
/* : nullable Object */;
9268 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9269 val
* var2
/* : nullable Object */;
9270 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9271 val
* var3
/* : nullable Object */;
9272 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9273 val
* var4
/* : Array[Object] */;
9274 val
* var_listnode4
/* var listnode4: Array[Object] */;
9275 val
* var_patidnode2
/* var patidnode2: nullable Object */;
9276 short int var5
/* : Bool */;
9279 val
* var6
/* : AAnnotation */;
9280 val
* var7
/* : null */;
9281 val
* var8
/* : null */;
9282 val
* var9
/* : null */;
9283 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
9284 long var10
/* : Int */;
9285 long var11
/* : Int */;
9288 var_node_list
= var
;
9289 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9290 var_nodearraylist3
= var1
;
9291 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9292 var_nodearraylist2
= var2
;
9293 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9294 var_nodearraylist1
= var3
;
9295 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
9296 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
9297 CHECK_NEW_array__Array(var4
);
9298 var_listnode4
= var4
;
9299 var_patidnode2
= var_nodearraylist2
;
9300 /* <var_patidnode2:nullable Object> isa nullable AAtid */
9301 cltype
= type_nullable_parser_nodes__AAtid
.color
;
9302 idtype
= type_nullable_parser_nodes__AAtid
.id
;
9303 if(var_patidnode2
== NULL
) {
9306 if(cltype
>= var_patidnode2
->type
->table_size
) {
9309 var5
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
9313 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29854);
9316 var6
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
9320 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var6
, var_patidnode2
, var7
, var_listnode4
, var8
, var9
) /* init_aannotation on <var6:AAnnotation>*/;
9321 CHECK_NEW_parser_nodes__AAnnotation(var6
);
9322 var_pannotationnode1
= var6
;
9323 var_node_list
= var_pannotationnode1
;
9324 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction878> */
9325 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
9326 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
9329 /* method parser#ReduceAction878#action for (self: Object, Parser) */
9330 void VIRTUAL_parser__ReduceAction878__action(val
* self
, val
* p0
) {
9331 parser__ReduceAction878__action(self
, p0
);
9334 /* method parser#ReduceAction879#action for (self: ReduceAction879, Parser) */
9335 void parser__ReduceAction879__action(val
* self
, val
* p0
) {
9336 val
* var_p
/* var p: Parser */;
9337 val
* var
/* : null */;
9338 val
* var_node_list
/* var node_list: nullable Object */;
9339 val
* var1
/* : nullable Object */;
9340 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9341 val
* var2
/* : nullable Object */;
9342 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9343 val
* var3
/* : nullable Object */;
9344 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9345 val
* var4
/* : nullable Object */;
9346 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9347 val
* var5
/* : Array[Object] */;
9348 val
* var_listnode4
/* var listnode4: Array[Object] */;
9349 val
* var_patidnode2
/* var patidnode2: nullable Object */;
9350 short int var6
/* : Bool */;
9353 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
9354 short int var7
/* : Bool */;
9357 val
* var10
/* : AAnnotation */;
9358 val
* var11
/* : null */;
9359 val
* var12
/* : null */;
9360 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
9361 long var13
/* : Int */;
9362 long var14
/* : Int */;
9365 var_node_list
= var
;
9366 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9367 var_nodearraylist4
= var1
;
9368 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9369 var_nodearraylist3
= var2
;
9370 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9371 var_nodearraylist2
= var3
;
9372 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9373 var_nodearraylist1
= var4
;
9374 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
9375 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
9376 CHECK_NEW_array__Array(var5
);
9377 var_listnode4
= var5
;
9378 var_patidnode2
= var_nodearraylist2
;
9379 /* <var_patidnode2:nullable Object> isa nullable AAtid */
9380 cltype
= type_nullable_parser_nodes__AAtid
.color
;
9381 idtype
= type_nullable_parser_nodes__AAtid
.id
;
9382 if(var_patidnode2
== NULL
) {
9385 if(cltype
>= var_patidnode2
->type
->table_size
) {
9388 var6
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
9392 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29877);
9395 var_pannotationsnode6
= var_nodearraylist3
;
9396 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
9397 cltype8
= type_nullable_parser_nodes__AAnnotations
.color
;
9398 idtype9
= type_nullable_parser_nodes__AAnnotations
.id
;
9399 if(var_pannotationsnode6
== NULL
) {
9402 if(cltype8
>= var_pannotationsnode6
->type
->table_size
) {
9405 var7
= var_pannotationsnode6
->type
->type_table
[cltype8
] == idtype9
;
9409 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29879);
9412 var10
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
9415 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var10
, var_patidnode2
, var11
, var_listnode4
, var12
, var_pannotationsnode6
) /* init_aannotation on <var10:AAnnotation>*/;
9416 CHECK_NEW_parser_nodes__AAnnotation(var10
);
9417 var_pannotationnode1
= var10
;
9418 var_node_list
= var_pannotationnode1
;
9419 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction879> */
9420 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
9421 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
9424 /* method parser#ReduceAction879#action for (self: Object, Parser) */
9425 void VIRTUAL_parser__ReduceAction879__action(val
* self
, val
* p0
) {
9426 parser__ReduceAction879__action(self
, p0
);
9429 /* method parser#ReduceAction880#action for (self: ReduceAction880, Parser) */
9430 void parser__ReduceAction880__action(val
* self
, val
* p0
) {
9431 val
* var_p
/* var p: Parser */;
9432 val
* var
/* : null */;
9433 val
* var_node_list
/* var node_list: nullable Object */;
9434 val
* var1
/* : nullable Object */;
9435 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9436 val
* var2
/* : nullable Object */;
9437 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9438 val
* var3
/* : nullable Object */;
9439 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9440 val
* var4
/* : nullable Object */;
9441 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9442 val
* var5
/* : nullable Object */;
9443 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9444 val
* var6
/* : nullable Object */;
9445 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9446 val
* var7
/* : nullable Object */;
9447 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9448 val
* var8
/* : Array[Object] */;
9449 val
* var_listnode5
/* var listnode5: Array[Object] */;
9450 val
* var_patidnode2
/* var patidnode2: nullable Object */;
9451 short int var9
/* : Bool */;
9454 val
* var_toparnode3
/* var toparnode3: nullable Object */;
9455 short int var10
/* : Bool */;
9458 val
* var_listnode4
/* var listnode4: nullable Object */;
9459 short int var13
/* : Bool */;
9462 val
* var16
/* : Array[Object] */;
9463 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
9464 short int var17
/* : Bool */;
9467 val
* var20
/* : AAnnotation */;
9468 val
* var21
/* : null */;
9469 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
9470 long var22
/* : Int */;
9471 long var23
/* : Int */;
9474 var_node_list
= var
;
9475 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9476 var_nodearraylist7
= var1
;
9477 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9478 var_nodearraylist6
= var2
;
9479 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9480 var_nodearraylist5
= var3
;
9481 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9482 var_nodearraylist4
= var4
;
9483 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9484 var_nodearraylist3
= var5
;
9485 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9486 var_nodearraylist2
= var6
;
9487 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9488 var_nodearraylist1
= var7
;
9489 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
9490 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
9491 CHECK_NEW_array__Array(var8
);
9492 var_listnode5
= var8
;
9493 var_patidnode2
= var_nodearraylist2
;
9494 /* <var_patidnode2:nullable Object> isa nullable AAtid */
9495 cltype
= type_nullable_parser_nodes__AAtid
.color
;
9496 idtype
= type_nullable_parser_nodes__AAtid
.id
;
9497 if(var_patidnode2
== NULL
) {
9500 if(cltype
>= var_patidnode2
->type
->table_size
) {
9503 var9
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
9507 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29905);
9510 var_toparnode3
= var_nodearraylist3
;
9511 /* <var_toparnode3:nullable Object> isa nullable TOpar */
9512 cltype11
= type_nullable_parser_nodes__TOpar
.color
;
9513 idtype12
= type_nullable_parser_nodes__TOpar
.id
;
9514 if(var_toparnode3
== NULL
) {
9517 if(cltype11
>= var_toparnode3
->type
->table_size
) {
9520 var10
= var_toparnode3
->type
->type_table
[cltype11
] == idtype12
;
9524 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29907);
9527 var_listnode4
= var_nodearraylist5
;
9528 /* <var_listnode4:nullable Object> isa Array[Object] */
9529 cltype14
= type_array__Arraykernel__Object
.color
;
9530 idtype15
= type_array__Arraykernel__Object
.id
;
9531 if(var_listnode4
== NULL
) {
9534 if(cltype14
>= var_listnode4
->type
->table_size
) {
9537 var13
= var_listnode4
->type
->type_table
[cltype14
] == idtype15
;
9541 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29909);
9544 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction880>*/;
9545 var_listnode5
= var16
;
9546 var_tcparnode6
= var_nodearraylist6
;
9547 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
9548 cltype18
= type_nullable_parser_nodes__TCpar
.color
;
9549 idtype19
= type_nullable_parser_nodes__TCpar
.id
;
9550 if(var_tcparnode6
== NULL
) {
9553 if(cltype18
>= var_tcparnode6
->type
->table_size
) {
9556 var17
= var_tcparnode6
->type
->type_table
[cltype18
] == idtype19
;
9560 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29912);
9563 var20
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
9565 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var20
, var_patidnode2
, var_toparnode3
, var_listnode5
, var_tcparnode6
, var21
) /* init_aannotation on <var20:AAnnotation>*/;
9566 CHECK_NEW_parser_nodes__AAnnotation(var20
);
9567 var_pannotationnode1
= var20
;
9568 var_node_list
= var_pannotationnode1
;
9569 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction880> */
9570 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
9571 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
9574 /* method parser#ReduceAction880#action for (self: Object, Parser) */
9575 void VIRTUAL_parser__ReduceAction880__action(val
* self
, val
* p0
) {
9576 parser__ReduceAction880__action(self
, p0
);
9579 /* method parser#ReduceAction881#action for (self: ReduceAction881, Parser) */
9580 void parser__ReduceAction881__action(val
* self
, val
* p0
) {
9581 val
* var_p
/* var p: Parser */;
9582 val
* var
/* : null */;
9583 val
* var_node_list
/* var node_list: nullable Object */;
9584 val
* var1
/* : nullable Object */;
9585 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
9586 val
* var2
/* : nullable Object */;
9587 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9588 val
* var3
/* : nullable Object */;
9589 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9590 val
* var4
/* : nullable Object */;
9591 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9592 val
* var5
/* : nullable Object */;
9593 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9594 val
* var6
/* : nullable Object */;
9595 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9596 val
* var7
/* : nullable Object */;
9597 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9598 val
* var8
/* : nullable Object */;
9599 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9600 val
* var9
/* : Array[Object] */;
9601 val
* var_listnode5
/* var listnode5: Array[Object] */;
9602 val
* var_patidnode2
/* var patidnode2: nullable Object */;
9603 short int var10
/* : Bool */;
9606 val
* var_toparnode3
/* var toparnode3: nullable Object */;
9607 short int var11
/* : Bool */;
9610 val
* var_listnode4
/* var listnode4: nullable Object */;
9611 short int var14
/* : Bool */;
9614 val
* var17
/* : Array[Object] */;
9615 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
9616 short int var18
/* : Bool */;
9619 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
9620 short int var21
/* : Bool */;
9623 val
* var24
/* : AAnnotation */;
9624 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
9625 long var25
/* : Int */;
9626 long var26
/* : Int */;
9629 var_node_list
= var
;
9630 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9631 var_nodearraylist8
= var1
;
9632 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9633 var_nodearraylist7
= var2
;
9634 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9635 var_nodearraylist6
= var3
;
9636 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9637 var_nodearraylist5
= var4
;
9638 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9639 var_nodearraylist4
= var5
;
9640 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9641 var_nodearraylist3
= var6
;
9642 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9643 var_nodearraylist2
= var7
;
9644 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9645 var_nodearraylist1
= var8
;
9646 var9
= NEW_array__Array(&type_array__Arraykernel__Object
);
9647 ((void (*)(val
*))(var9
->class->vft
[COLOR_array__Array__init
]))(var9
) /* init on <var9:Array[Object]>*/;
9648 CHECK_NEW_array__Array(var9
);
9649 var_listnode5
= var9
;
9650 var_patidnode2
= var_nodearraylist2
;
9651 /* <var_patidnode2:nullable Object> isa nullable AAtid */
9652 cltype
= type_nullable_parser_nodes__AAtid
.color
;
9653 idtype
= type_nullable_parser_nodes__AAtid
.id
;
9654 if(var_patidnode2
== NULL
) {
9657 if(cltype
>= var_patidnode2
->type
->table_size
) {
9660 var10
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
9664 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29939);
9667 var_toparnode3
= var_nodearraylist3
;
9668 /* <var_toparnode3:nullable Object> isa nullable TOpar */
9669 cltype12
= type_nullable_parser_nodes__TOpar
.color
;
9670 idtype13
= type_nullable_parser_nodes__TOpar
.id
;
9671 if(var_toparnode3
== NULL
) {
9674 if(cltype12
>= var_toparnode3
->type
->table_size
) {
9677 var11
= var_toparnode3
->type
->type_table
[cltype12
] == idtype13
;
9681 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29941);
9684 var_listnode4
= var_nodearraylist5
;
9685 /* <var_listnode4:nullable Object> isa Array[Object] */
9686 cltype15
= type_array__Arraykernel__Object
.color
;
9687 idtype16
= type_array__Arraykernel__Object
.id
;
9688 if(var_listnode4
== NULL
) {
9691 if(cltype15
>= var_listnode4
->type
->table_size
) {
9694 var14
= var_listnode4
->type
->type_table
[cltype15
] == idtype16
;
9698 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29943);
9701 var17
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction881>*/;
9702 var_listnode5
= var17
;
9703 var_tcparnode6
= var_nodearraylist6
;
9704 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
9705 cltype19
= type_nullable_parser_nodes__TCpar
.color
;
9706 idtype20
= type_nullable_parser_nodes__TCpar
.id
;
9707 if(var_tcparnode6
== NULL
) {
9710 if(cltype19
>= var_tcparnode6
->type
->table_size
) {
9713 var18
= var_tcparnode6
->type
->type_table
[cltype19
] == idtype20
;
9717 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29946);
9720 var_pannotationsnode7
= var_nodearraylist7
;
9721 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
9722 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
9723 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
9724 if(var_pannotationsnode7
== NULL
) {
9727 if(cltype22
>= var_pannotationsnode7
->type
->table_size
) {
9730 var21
= var_pannotationsnode7
->type
->type_table
[cltype22
] == idtype23
;
9734 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29948);
9737 var24
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
9738 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var24
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var24
, var_patidnode2
, var_toparnode3
, var_listnode5
, var_tcparnode6
, var_pannotationsnode7
) /* init_aannotation on <var24:AAnnotation>*/;
9739 CHECK_NEW_parser_nodes__AAnnotation(var24
);
9740 var_pannotationnode1
= var24
;
9741 var_node_list
= var_pannotationnode1
;
9742 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction881> */
9743 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
9744 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
9747 /* method parser#ReduceAction881#action for (self: Object, Parser) */
9748 void VIRTUAL_parser__ReduceAction881__action(val
* self
, val
* p0
) {
9749 parser__ReduceAction881__action(self
, p0
);
9752 /* method parser#ReduceAction882#action for (self: ReduceAction882, Parser) */
9753 void parser__ReduceAction882__action(val
* self
, val
* p0
) {
9754 val
* var_p
/* var p: Parser */;
9755 val
* var
/* : null */;
9756 val
* var_node_list
/* var node_list: nullable Object */;
9757 val
* var1
/* : nullable Object */;
9758 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9759 val
* var2
/* : nullable Object */;
9760 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9761 val
* var3
/* : nullable Object */;
9762 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9763 val
* var4
/* : nullable Object */;
9764 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9765 val
* var5
/* : Array[Object] */;
9766 val
* var_listnode5
/* var listnode5: Array[Object] */;
9767 val
* var_patidnode2
/* var patidnode2: nullable Object */;
9768 short int var6
/* : Bool */;
9771 val
* var_listnode4
/* var listnode4: nullable Object */;
9772 short int var7
/* : Bool */;
9775 val
* var10
/* : Array[Object] */;
9776 val
* var11
/* : AAnnotation */;
9777 val
* var12
/* : null */;
9778 val
* var13
/* : null */;
9779 val
* var14
/* : null */;
9780 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
9781 long var15
/* : Int */;
9782 long var16
/* : Int */;
9785 var_node_list
= var
;
9786 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9787 var_nodearraylist4
= var1
;
9788 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9789 var_nodearraylist3
= var2
;
9790 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9791 var_nodearraylist2
= var3
;
9792 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9793 var_nodearraylist1
= var4
;
9794 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
9795 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
9796 CHECK_NEW_array__Array(var5
);
9797 var_listnode5
= var5
;
9798 var_patidnode2
= var_nodearraylist2
;
9799 /* <var_patidnode2:nullable Object> isa nullable AAtid */
9800 cltype
= type_nullable_parser_nodes__AAtid
.color
;
9801 idtype
= type_nullable_parser_nodes__AAtid
.id
;
9802 if(var_patidnode2
== NULL
) {
9805 if(cltype
>= var_patidnode2
->type
->table_size
) {
9808 var6
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
9812 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29971);
9815 var_listnode4
= var_nodearraylist3
;
9816 /* <var_listnode4:nullable Object> isa Array[Object] */
9817 cltype8
= type_array__Arraykernel__Object
.color
;
9818 idtype9
= type_array__Arraykernel__Object
.id
;
9819 if(var_listnode4
== NULL
) {
9822 if(cltype8
>= var_listnode4
->type
->table_size
) {
9825 var7
= var_listnode4
->type
->type_table
[cltype8
] == idtype9
;
9829 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 29973);
9832 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction882>*/;
9833 var_listnode5
= var10
;
9834 var11
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
9838 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AAnnotation__init_aannotation
]))(var11
, var_patidnode2
, var12
, var_listnode5
, var13
, var14
) /* init_aannotation on <var11:AAnnotation>*/;
9839 CHECK_NEW_parser_nodes__AAnnotation(var11
);
9840 var_pannotationnode1
= var11
;
9841 var_node_list
= var_pannotationnode1
;
9842 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction882> */
9843 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
9844 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
9847 /* method parser#ReduceAction882#action for (self: Object, Parser) */
9848 void VIRTUAL_parser__ReduceAction882__action(val
* self
, val
* p0
) {
9849 parser__ReduceAction882__action(self
, p0
);
9852 /* method parser#ReduceAction883#action for (self: ReduceAction883, Parser) */
9853 void parser__ReduceAction883__action(val
* self
, val
* p0
) {
9854 val
* var_p
/* var p: Parser */;
9855 val
* var
/* : null */;
9856 val
* var_node_list
/* var node_list: nullable Object */;
9857 val
* var1
/* : nullable Object */;
9858 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9859 val
* var2
/* : nullable Object */;
9860 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9861 val
* var3
/* : nullable Object */;
9862 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9863 val
* var_pannotationnode1
/* var pannotationnode1: nullable Object */;
9864 long var4
/* : Int */;
9865 long var5
/* : Int */;
9868 var_node_list
= var
;
9869 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9870 var_nodearraylist3
= var1
;
9871 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9872 var_nodearraylist2
= var2
;
9873 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9874 var_nodearraylist1
= var3
;
9875 var_pannotationnode1
= var_nodearraylist3
;
9876 var_node_list
= var_pannotationnode1
;
9877 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction883> */
9878 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
9879 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
9882 /* method parser#ReduceAction883#action for (self: Object, Parser) */
9883 void VIRTUAL_parser__ReduceAction883__action(val
* self
, val
* p0
) {
9884 parser__ReduceAction883__action(self
, p0
);
9887 /* method parser#ReduceAction884#action for (self: ReduceAction884, Parser) */
9888 void parser__ReduceAction884__action(val
* self
, val
* p0
) {
9889 val
* var_p
/* var p: Parser */;
9890 val
* var
/* : null */;
9891 val
* var_node_list
/* var node_list: nullable Object */;
9892 val
* var1
/* : nullable Object */;
9893 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9894 val
* var2
/* : Array[Object] */;
9895 val
* var_listnode2
/* var listnode2: Array[Object] */;
9896 val
* var_patargnode1
/* var patargnode1: nullable Object */;
9897 val
* var3
/* : null */;
9898 short int var4
/* : Bool */;
9899 long var5
/* : Int */;
9900 long var6
/* : Int */;
9903 var_node_list
= var
;
9904 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9905 var_nodearraylist1
= var1
;
9906 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
9907 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
9908 CHECK_NEW_array__Array(var2
);
9909 var_listnode2
= var2
;
9910 var_patargnode1
= var_nodearraylist1
;
9912 if (var_patargnode1
== NULL
) {
9913 var4
= 0; /* is null */
9915 var4
= 1; /* arg is null and recv is not */
9918 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_patargnode1
) /* add on <var_listnode2:Array[Object]>*/;
9921 var_node_list
= var_listnode2
;
9922 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction884> */
9923 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
9924 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
9927 /* method parser#ReduceAction884#action for (self: Object, Parser) */
9928 void VIRTUAL_parser__ReduceAction884__action(val
* self
, val
* p0
) {
9929 parser__ReduceAction884__action(self
, p0
);
9932 /* method parser#ReduceAction885#action for (self: ReduceAction885, Parser) */
9933 void parser__ReduceAction885__action(val
* self
, val
* p0
) {
9934 val
* var_p
/* var p: Parser */;
9935 val
* var
/* : null */;
9936 val
* var_node_list
/* var node_list: nullable Object */;
9937 val
* var1
/* : nullable Object */;
9938 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9939 val
* var2
/* : nullable Object */;
9940 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9941 val
* var3
/* : Array[Object] */;
9942 val
* var_listnode3
/* var listnode3: Array[Object] */;
9943 val
* var_patargnode1
/* var patargnode1: nullable Object */;
9944 val
* var_listnode2
/* var listnode2: nullable Object */;
9945 short int var4
/* : Bool */;
9948 val
* var5
/* : null */;
9949 short int var6
/* : Bool */;
9950 val
* var7
/* : Array[Object] */;
9951 long var8
/* : Int */;
9952 long var9
/* : Int */;
9955 var_node_list
= var
;
9956 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9957 var_nodearraylist2
= var1
;
9958 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9959 var_nodearraylist1
= var2
;
9960 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
9961 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
9962 CHECK_NEW_array__Array(var3
);
9963 var_listnode3
= var3
;
9964 var_patargnode1
= var_nodearraylist1
;
9965 var_listnode2
= var_nodearraylist2
;
9966 /* <var_listnode2:nullable Object> isa Array[Object] */
9967 cltype
= type_array__Arraykernel__Object
.color
;
9968 idtype
= type_array__Arraykernel__Object
.id
;
9969 if(var_listnode2
== NULL
) {
9972 if(cltype
>= var_listnode2
->type
->table_size
) {
9975 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
9979 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 30024);
9983 if (var_patargnode1
== NULL
) {
9984 var6
= 0; /* is null */
9986 var6
= 1; /* arg is null and recv is not */
9989 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_patargnode1
) /* add on <var_listnode3:Array[Object]>*/;
9992 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction885>*/;
9993 var_listnode3
= var7
;
9994 var_node_list
= var_listnode3
;
9995 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction885> */
9996 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
9997 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;