1 #include "parser.sep.0.h"
2 /* method parser#ReduceAction727#action for (self: ReduceAction727, Parser) */
3 void parser__ReduceAction727__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_nodearraylist4
/* var nodearraylist4: nullable Object */;
9 val
* var2
/* : nullable Object */;
10 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
11 val
* var3
/* : nullable Object */;
12 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
13 val
* var4
/* : nullable Object */;
14 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
15 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
16 short int var5
/* : Bool */;
19 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
20 short int var6
/* : Bool */;
23 val
* var9
/* : AStarshipExpr */;
24 val
* var_pexprnode1
/* var pexprnode1: nullable AStarshipExpr */;
25 long var10
/* : Int */;
26 long var11
/* : Int */;
30 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
31 var_nodearraylist4
= var1
;
32 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
33 var_nodearraylist3
= var2
;
34 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
35 var_nodearraylist2
= var3
;
36 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
37 var_nodearraylist1
= var4
;
38 var_pexprnode2
= var_nodearraylist1
;
39 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
40 cltype
= type_nullable_parser_nodes__AExpr
.color
;
41 idtype
= type_nullable_parser_nodes__AExpr
.id
;
42 if(var_pexprnode2
== NULL
) {
45 if(cltype
>= var_pexprnode2
->type
->table_size
) {
48 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
52 fprintf(stderr
, "Runtime error: %s", "Assert failed");
53 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26686);
56 var_pexprnode3
= var_nodearraylist4
;
57 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
58 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
59 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
60 if(var_pexprnode3
== NULL
) {
63 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
66 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
70 fprintf(stderr
, "Runtime error: %s", "Assert failed");
71 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26688);
74 var9
= NEW_parser_nodes__AStarshipExpr(&type_parser_nodes__AStarshipExpr
);
75 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AStarshipExpr__init_astarshipexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_astarshipexpr on <var9:AStarshipExpr>*/;
76 CHECK_NEW_parser_nodes__AStarshipExpr(var9
);
77 var_pexprnode1
= var9
;
78 var_node_list
= var_pexprnode1
;
79 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction727> */
80 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
81 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
84 /* method parser#ReduceAction727#action for (self: Object, Parser) */
85 void VIRTUAL_parser__ReduceAction727__action(val
* self
, val
* p0
) {
86 parser__ReduceAction727__action(self
, p0
);
89 /* method parser#ReduceAction728#action for (self: ReduceAction728, Parser) */
90 void parser__ReduceAction728__action(val
* self
, val
* p0
) {
91 val
* var_p
/* var p: Parser */;
92 val
* var
/* : null */;
93 val
* var_node_list
/* var node_list: nullable Object */;
94 val
* var1
/* : nullable Object */;
95 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
96 val
* var2
/* : nullable Object */;
97 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
98 val
* var3
/* : nullable Object */;
99 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
100 val
* var4
/* : nullable Object */;
101 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
102 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
103 short int var5
/* : Bool */;
106 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
107 short int var6
/* : Bool */;
110 val
* var9
/* : AIsaExpr */;
111 val
* var_pexprnode1
/* var pexprnode1: nullable AIsaExpr */;
112 long var10
/* : Int */;
113 long var11
/* : Int */;
117 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
118 var_nodearraylist4
= var1
;
119 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
120 var_nodearraylist3
= var2
;
121 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
122 var_nodearraylist2
= var3
;
123 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
124 var_nodearraylist1
= var4
;
125 var_pexprnode2
= var_nodearraylist1
;
126 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
127 cltype
= type_nullable_parser_nodes__AExpr
.color
;
128 idtype
= type_nullable_parser_nodes__AExpr
.id
;
129 if(var_pexprnode2
== NULL
) {
132 if(cltype
>= var_pexprnode2
->type
->table_size
) {
135 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
139 fprintf(stderr
, "Runtime error: %s", "Assert failed");
140 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26707);
143 var_ptypenode3
= var_nodearraylist4
;
144 /* <var_ptypenode3:nullable Object> isa nullable AType */
145 cltype7
= type_nullable_parser_nodes__AType
.color
;
146 idtype8
= type_nullable_parser_nodes__AType
.id
;
147 if(var_ptypenode3
== NULL
) {
150 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
153 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
157 fprintf(stderr
, "Runtime error: %s", "Assert failed");
158 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26709);
161 var9
= NEW_parser_nodes__AIsaExpr(&type_parser_nodes__AIsaExpr
);
162 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AIsaExpr__init_aisaexpr
]))(var9
, var_pexprnode2
, var_ptypenode3
) /* init_aisaexpr on <var9:AIsaExpr>*/;
163 CHECK_NEW_parser_nodes__AIsaExpr(var9
);
164 var_pexprnode1
= var9
;
165 var_node_list
= var_pexprnode1
;
166 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction728> */
167 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
168 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
171 /* method parser#ReduceAction728#action for (self: Object, Parser) */
172 void VIRTUAL_parser__ReduceAction728__action(val
* self
, val
* p0
) {
173 parser__ReduceAction728__action(self
, p0
);
176 /* method parser#ReduceAction730#action for (self: ReduceAction730, Parser) */
177 void parser__ReduceAction730__action(val
* self
, val
* p0
) {
178 val
* var_p
/* var p: Parser */;
179 val
* var
/* : null */;
180 val
* var_node_list
/* var node_list: nullable Object */;
181 val
* var1
/* : nullable Object */;
182 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
183 val
* var2
/* : nullable Object */;
184 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
185 val
* var3
/* : nullable Object */;
186 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
187 val
* var4
/* : nullable Object */;
188 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
189 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
190 short int var5
/* : Bool */;
193 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
194 short int var6
/* : Bool */;
197 val
* var9
/* : APlusExpr */;
198 val
* var_pexprnode1
/* var pexprnode1: nullable APlusExpr */;
199 long var10
/* : Int */;
200 long var11
/* : Int */;
204 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
205 var_nodearraylist4
= var1
;
206 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
207 var_nodearraylist3
= var2
;
208 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
209 var_nodearraylist2
= var3
;
210 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
211 var_nodearraylist1
= var4
;
212 var_pexprnode2
= var_nodearraylist1
;
213 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
214 cltype
= type_nullable_parser_nodes__AExpr
.color
;
215 idtype
= type_nullable_parser_nodes__AExpr
.id
;
216 if(var_pexprnode2
== NULL
) {
219 if(cltype
>= var_pexprnode2
->type
->table_size
) {
222 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
226 fprintf(stderr
, "Runtime error: %s", "Assert failed");
227 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26728);
230 var_pexprnode3
= var_nodearraylist4
;
231 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
232 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
233 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
234 if(var_pexprnode3
== NULL
) {
237 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
240 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
244 fprintf(stderr
, "Runtime error: %s", "Assert failed");
245 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26730);
248 var9
= NEW_parser_nodes__APlusExpr(&type_parser_nodes__APlusExpr
);
249 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__APlusExpr__init_aplusexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aplusexpr on <var9:APlusExpr>*/;
250 CHECK_NEW_parser_nodes__APlusExpr(var9
);
251 var_pexprnode1
= var9
;
252 var_node_list
= var_pexprnode1
;
253 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction730> */
254 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
255 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
258 /* method parser#ReduceAction730#action for (self: Object, Parser) */
259 void VIRTUAL_parser__ReduceAction730__action(val
* self
, val
* p0
) {
260 parser__ReduceAction730__action(self
, p0
);
263 /* method parser#ReduceAction731#action for (self: ReduceAction731, Parser) */
264 void parser__ReduceAction731__action(val
* self
, val
* p0
) {
265 val
* var_p
/* var p: Parser */;
266 val
* var
/* : null */;
267 val
* var_node_list
/* var node_list: nullable Object */;
268 val
* var1
/* : nullable Object */;
269 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
270 val
* var2
/* : nullable Object */;
271 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
272 val
* var3
/* : nullable Object */;
273 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
274 val
* var4
/* : nullable Object */;
275 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
276 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
277 short int var5
/* : Bool */;
280 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
281 short int var6
/* : Bool */;
284 val
* var9
/* : AMinusExpr */;
285 val
* var_pexprnode1
/* var pexprnode1: nullable AMinusExpr */;
286 long var10
/* : Int */;
287 long var11
/* : Int */;
291 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
292 var_nodearraylist4
= var1
;
293 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
294 var_nodearraylist3
= var2
;
295 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
296 var_nodearraylist2
= var3
;
297 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
298 var_nodearraylist1
= var4
;
299 var_pexprnode2
= var_nodearraylist1
;
300 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
301 cltype
= type_nullable_parser_nodes__AExpr
.color
;
302 idtype
= type_nullable_parser_nodes__AExpr
.id
;
303 if(var_pexprnode2
== NULL
) {
306 if(cltype
>= var_pexprnode2
->type
->table_size
) {
309 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
313 fprintf(stderr
, "Runtime error: %s", "Assert failed");
314 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26749);
317 var_pexprnode3
= var_nodearraylist4
;
318 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
319 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
320 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
321 if(var_pexprnode3
== NULL
) {
324 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
327 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
331 fprintf(stderr
, "Runtime error: %s", "Assert failed");
332 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26751);
335 var9
= NEW_parser_nodes__AMinusExpr(&type_parser_nodes__AMinusExpr
);
336 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AMinusExpr__init_aminusexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aminusexpr on <var9:AMinusExpr>*/;
337 CHECK_NEW_parser_nodes__AMinusExpr(var9
);
338 var_pexprnode1
= var9
;
339 var_node_list
= var_pexprnode1
;
340 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction731> */
341 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
342 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
345 /* method parser#ReduceAction731#action for (self: Object, Parser) */
346 void VIRTUAL_parser__ReduceAction731__action(val
* self
, val
* p0
) {
347 parser__ReduceAction731__action(self
, p0
);
350 /* method parser#ReduceAction733#action for (self: ReduceAction733, Parser) */
351 void parser__ReduceAction733__action(val
* self
, val
* p0
) {
352 val
* var_p
/* var p: Parser */;
353 val
* var
/* : null */;
354 val
* var_node_list
/* var node_list: nullable Object */;
355 val
* var1
/* : nullable Object */;
356 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
357 val
* var2
/* : nullable Object */;
358 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
359 val
* var3
/* : nullable Object */;
360 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
361 val
* var4
/* : nullable Object */;
362 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
363 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
364 short int var5
/* : Bool */;
367 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
368 short int var6
/* : Bool */;
371 val
* var9
/* : AStarExpr */;
372 val
* var_pexprnode1
/* var pexprnode1: nullable AStarExpr */;
373 long var10
/* : Int */;
374 long var11
/* : Int */;
378 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
379 var_nodearraylist4
= var1
;
380 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
381 var_nodearraylist3
= var2
;
382 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
383 var_nodearraylist2
= var3
;
384 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
385 var_nodearraylist1
= var4
;
386 var_pexprnode2
= var_nodearraylist1
;
387 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
388 cltype
= type_nullable_parser_nodes__AExpr
.color
;
389 idtype
= type_nullable_parser_nodes__AExpr
.id
;
390 if(var_pexprnode2
== NULL
) {
393 if(cltype
>= var_pexprnode2
->type
->table_size
) {
396 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
400 fprintf(stderr
, "Runtime error: %s", "Assert failed");
401 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26770);
404 var_pexprnode3
= var_nodearraylist4
;
405 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
406 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
407 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
408 if(var_pexprnode3
== NULL
) {
411 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
414 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
418 fprintf(stderr
, "Runtime error: %s", "Assert failed");
419 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26772);
422 var9
= NEW_parser_nodes__AStarExpr(&type_parser_nodes__AStarExpr
);
423 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AStarExpr__init_astarexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_astarexpr on <var9:AStarExpr>*/;
424 CHECK_NEW_parser_nodes__AStarExpr(var9
);
425 var_pexprnode1
= var9
;
426 var_node_list
= var_pexprnode1
;
427 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction733> */
428 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
429 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
432 /* method parser#ReduceAction733#action for (self: Object, Parser) */
433 void VIRTUAL_parser__ReduceAction733__action(val
* self
, val
* p0
) {
434 parser__ReduceAction733__action(self
, p0
);
437 /* method parser#ReduceAction734#action for (self: ReduceAction734, Parser) */
438 void parser__ReduceAction734__action(val
* self
, val
* p0
) {
439 val
* var_p
/* var p: Parser */;
440 val
* var
/* : null */;
441 val
* var_node_list
/* var node_list: nullable Object */;
442 val
* var1
/* : nullable Object */;
443 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
444 val
* var2
/* : nullable Object */;
445 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
446 val
* var3
/* : nullable Object */;
447 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
448 val
* var4
/* : nullable Object */;
449 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
450 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
451 short int var5
/* : Bool */;
454 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
455 short int var6
/* : Bool */;
458 val
* var9
/* : ASlashExpr */;
459 val
* var_pexprnode1
/* var pexprnode1: nullable ASlashExpr */;
460 long var10
/* : Int */;
461 long var11
/* : Int */;
465 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
466 var_nodearraylist4
= var1
;
467 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
468 var_nodearraylist3
= var2
;
469 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
470 var_nodearraylist2
= var3
;
471 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
472 var_nodearraylist1
= var4
;
473 var_pexprnode2
= var_nodearraylist1
;
474 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
475 cltype
= type_nullable_parser_nodes__AExpr
.color
;
476 idtype
= type_nullable_parser_nodes__AExpr
.id
;
477 if(var_pexprnode2
== NULL
) {
480 if(cltype
>= var_pexprnode2
->type
->table_size
) {
483 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
487 fprintf(stderr
, "Runtime error: %s", "Assert failed");
488 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26791);
491 var_pexprnode3
= var_nodearraylist4
;
492 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
493 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
494 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
495 if(var_pexprnode3
== NULL
) {
498 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
501 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
505 fprintf(stderr
, "Runtime error: %s", "Assert failed");
506 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26793);
509 var9
= NEW_parser_nodes__ASlashExpr(&type_parser_nodes__ASlashExpr
);
510 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ASlashExpr__init_aslashexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aslashexpr on <var9:ASlashExpr>*/;
511 CHECK_NEW_parser_nodes__ASlashExpr(var9
);
512 var_pexprnode1
= var9
;
513 var_node_list
= var_pexprnode1
;
514 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction734> */
515 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
516 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
519 /* method parser#ReduceAction734#action for (self: Object, Parser) */
520 void VIRTUAL_parser__ReduceAction734__action(val
* self
, val
* p0
) {
521 parser__ReduceAction734__action(self
, p0
);
524 /* method parser#ReduceAction735#action for (self: ReduceAction735, Parser) */
525 void parser__ReduceAction735__action(val
* self
, val
* p0
) {
526 val
* var_p
/* var p: Parser */;
527 val
* var
/* : null */;
528 val
* var_node_list
/* var node_list: nullable Object */;
529 val
* var1
/* : nullable Object */;
530 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
531 val
* var2
/* : nullable Object */;
532 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
533 val
* var3
/* : nullable Object */;
534 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
535 val
* var4
/* : nullable Object */;
536 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
537 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
538 short int var5
/* : Bool */;
541 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
542 short int var6
/* : Bool */;
545 val
* var9
/* : APercentExpr */;
546 val
* var_pexprnode1
/* var pexprnode1: nullable APercentExpr */;
547 long var10
/* : Int */;
548 long var11
/* : Int */;
552 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
553 var_nodearraylist4
= var1
;
554 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
555 var_nodearraylist3
= var2
;
556 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
557 var_nodearraylist2
= var3
;
558 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
559 var_nodearraylist1
= var4
;
560 var_pexprnode2
= var_nodearraylist1
;
561 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
562 cltype
= type_nullable_parser_nodes__AExpr
.color
;
563 idtype
= type_nullable_parser_nodes__AExpr
.id
;
564 if(var_pexprnode2
== NULL
) {
567 if(cltype
>= var_pexprnode2
->type
->table_size
) {
570 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
574 fprintf(stderr
, "Runtime error: %s", "Assert failed");
575 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26812);
578 var_pexprnode3
= var_nodearraylist4
;
579 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
580 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
581 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
582 if(var_pexprnode3
== NULL
) {
585 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
588 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
592 fprintf(stderr
, "Runtime error: %s", "Assert failed");
593 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26814);
596 var9
= NEW_parser_nodes__APercentExpr(&type_parser_nodes__APercentExpr
);
597 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__APercentExpr__init_apercentexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_apercentexpr on <var9:APercentExpr>*/;
598 CHECK_NEW_parser_nodes__APercentExpr(var9
);
599 var_pexprnode1
= var9
;
600 var_node_list
= var_pexprnode1
;
601 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction735> */
602 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
603 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
606 /* method parser#ReduceAction735#action for (self: Object, Parser) */
607 void VIRTUAL_parser__ReduceAction735__action(val
* self
, val
* p0
) {
608 parser__ReduceAction735__action(self
, p0
);
611 /* method parser#ReduceAction737#action for (self: ReduceAction737, Parser) */
612 void parser__ReduceAction737__action(val
* self
, val
* p0
) {
613 val
* var_p
/* var p: Parser */;
614 val
* var
/* : null */;
615 val
* var_node_list
/* var node_list: nullable Object */;
616 val
* var1
/* : nullable Object */;
617 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
618 val
* var2
/* : nullable Object */;
619 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
620 val
* var3
/* : nullable Object */;
621 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
622 val
* var_tminusnode2
/* var tminusnode2: nullable Object */;
623 short int var4
/* : Bool */;
626 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
627 short int var5
/* : Bool */;
630 val
* var8
/* : AUminusExpr */;
631 val
* var_pexprnode1
/* var pexprnode1: nullable AUminusExpr */;
632 long var9
/* : Int */;
633 long var10
/* : Int */;
637 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
638 var_nodearraylist3
= var1
;
639 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
640 var_nodearraylist2
= var2
;
641 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
642 var_nodearraylist1
= var3
;
643 var_tminusnode2
= var_nodearraylist1
;
644 /* <var_tminusnode2:nullable Object> isa nullable TMinus */
645 cltype
= type_nullable_parser_nodes__TMinus
.color
;
646 idtype
= type_nullable_parser_nodes__TMinus
.id
;
647 if(var_tminusnode2
== NULL
) {
650 if(cltype
>= var_tminusnode2
->type
->table_size
) {
653 var4
= var_tminusnode2
->type
->type_table
[cltype
] == idtype
;
657 fprintf(stderr
, "Runtime error: %s", "Assert failed");
658 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26832);
661 var_pexprnode3
= var_nodearraylist3
;
662 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
663 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
664 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
665 if(var_pexprnode3
== NULL
) {
668 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
671 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
675 fprintf(stderr
, "Runtime error: %s", "Assert failed");
676 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26834);
679 var8
= NEW_parser_nodes__AUminusExpr(&type_parser_nodes__AUminusExpr
);
680 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AUminusExpr__init_auminusexpr
]))(var8
, var_tminusnode2
, var_pexprnode3
) /* init_auminusexpr on <var8:AUminusExpr>*/;
681 CHECK_NEW_parser_nodes__AUminusExpr(var8
);
682 var_pexprnode1
= var8
;
683 var_node_list
= var_pexprnode1
;
684 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction737> */
685 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
686 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
689 /* method parser#ReduceAction737#action for (self: Object, Parser) */
690 void VIRTUAL_parser__ReduceAction737__action(val
* self
, val
* p0
) {
691 parser__ReduceAction737__action(self
, p0
);
694 /* method parser#ReduceAction738#action for (self: ReduceAction738, Parser) */
695 void parser__ReduceAction738__action(val
* self
, val
* p0
) {
696 val
* var_p
/* var p: Parser */;
697 val
* var
/* : null */;
698 val
* var_node_list
/* var node_list: nullable Object */;
699 val
* var1
/* : nullable Object */;
700 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
701 val
* var2
/* : nullable Object */;
702 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
703 val
* var3
/* : nullable Object */;
704 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
705 val
* var_tkwoncenode2
/* var tkwoncenode2: nullable Object */;
706 short int var4
/* : Bool */;
709 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
710 short int var5
/* : Bool */;
713 val
* var8
/* : AOnceExpr */;
714 val
* var_pexprnode1
/* var pexprnode1: nullable AOnceExpr */;
715 long var9
/* : Int */;
716 long var10
/* : Int */;
720 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
721 var_nodearraylist3
= var1
;
722 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
723 var_nodearraylist2
= var2
;
724 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
725 var_nodearraylist1
= var3
;
726 var_tkwoncenode2
= var_nodearraylist1
;
727 /* <var_tkwoncenode2:nullable Object> isa nullable TKwonce */
728 cltype
= type_nullable_parser_nodes__TKwonce
.color
;
729 idtype
= type_nullable_parser_nodes__TKwonce
.id
;
730 if(var_tkwoncenode2
== NULL
) {
733 if(cltype
>= var_tkwoncenode2
->type
->table_size
) {
736 var4
= var_tkwoncenode2
->type
->type_table
[cltype
] == idtype
;
740 fprintf(stderr
, "Runtime error: %s", "Assert failed");
741 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26852);
744 var_pexprnode3
= var_nodearraylist3
;
745 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
746 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
747 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
748 if(var_pexprnode3
== NULL
) {
751 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
754 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
758 fprintf(stderr
, "Runtime error: %s", "Assert failed");
759 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26854);
762 var8
= NEW_parser_nodes__AOnceExpr(&type_parser_nodes__AOnceExpr
);
763 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AOnceExpr__init_aonceexpr
]))(var8
, var_tkwoncenode2
, var_pexprnode3
) /* init_aonceexpr on <var8:AOnceExpr>*/;
764 CHECK_NEW_parser_nodes__AOnceExpr(var8
);
765 var_pexprnode1
= var8
;
766 var_node_list
= var_pexprnode1
;
767 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction738> */
768 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
769 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
772 /* method parser#ReduceAction738#action for (self: Object, Parser) */
773 void VIRTUAL_parser__ReduceAction738__action(val
* self
, val
* p0
) {
774 parser__ReduceAction738__action(self
, p0
);
777 /* method parser#ReduceAction740#action for (self: ReduceAction740, Parser) */
778 void parser__ReduceAction740__action(val
* self
, val
* p0
) {
779 val
* var_p
/* var p: Parser */;
780 val
* var
/* : null */;
781 val
* var_node_list
/* var node_list: nullable Object */;
782 val
* var1
/* : nullable Object */;
783 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
784 val
* var2
/* : nullable Object */;
785 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
786 val
* var3
/* : nullable Object */;
787 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
788 val
* var4
/* : nullable Object */;
789 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
790 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
791 short int var5
/* : Bool */;
794 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
795 short int var6
/* : Bool */;
798 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
799 short int var9
/* : Bool */;
802 val
* var12
/* : ANewExpr */;
803 val
* var13
/* : null */;
804 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
805 long var14
/* : Int */;
806 long var15
/* : Int */;
810 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
811 var_nodearraylist4
= var1
;
812 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
813 var_nodearraylist3
= var2
;
814 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
815 var_nodearraylist2
= var3
;
816 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
817 var_nodearraylist1
= var4
;
818 var_tkwnewnode2
= var_nodearraylist1
;
819 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
820 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
821 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
822 if(var_tkwnewnode2
== NULL
) {
825 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
828 var5
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
832 fprintf(stderr
, "Runtime error: %s", "Assert failed");
833 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26873);
836 var_ptypenode3
= var_nodearraylist3
;
837 /* <var_ptypenode3:nullable Object> isa nullable AType */
838 cltype7
= type_nullable_parser_nodes__AType
.color
;
839 idtype8
= type_nullable_parser_nodes__AType
.id
;
840 if(var_ptypenode3
== NULL
) {
843 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
846 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
850 fprintf(stderr
, "Runtime error: %s", "Assert failed");
851 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26875);
854 var_pexprsnode5
= var_nodearraylist4
;
855 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
856 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
857 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
858 if(var_pexprsnode5
== NULL
) {
861 if(cltype10
>= var_pexprsnode5
->type
->table_size
) {
864 var9
= var_pexprsnode5
->type
->type_table
[cltype10
] == idtype11
;
868 fprintf(stderr
, "Runtime error: %s", "Assert failed");
869 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26877);
872 var12
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
874 ((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>*/;
875 CHECK_NEW_parser_nodes__ANewExpr(var12
);
876 var_pexprnode1
= var12
;
877 var_node_list
= var_pexprnode1
;
878 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction740> */
879 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
880 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
883 /* method parser#ReduceAction740#action for (self: Object, Parser) */
884 void VIRTUAL_parser__ReduceAction740__action(val
* self
, val
* p0
) {
885 parser__ReduceAction740__action(self
, p0
);
888 /* method parser#ReduceAction741#action for (self: ReduceAction741, Parser) */
889 void parser__ReduceAction741__action(val
* self
, val
* p0
) {
890 val
* var_p
/* var p: Parser */;
891 val
* var
/* : null */;
892 val
* var_node_list
/* var node_list: nullable Object */;
893 val
* var1
/* : nullable Object */;
894 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
895 val
* var2
/* : nullable Object */;
896 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
897 val
* var3
/* : nullable Object */;
898 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
899 val
* var4
/* : nullable Object */;
900 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
901 val
* var5
/* : nullable Object */;
902 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
903 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
904 short int var6
/* : Bool */;
907 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
908 short int var7
/* : Bool */;
911 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
912 short int var10
/* : Bool */;
915 val
* var13
/* : AIssetAttrExpr */;
916 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
917 long var14
/* : Int */;
918 long var15
/* : Int */;
922 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
923 var_nodearraylist5
= var1
;
924 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
925 var_nodearraylist4
= var2
;
926 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
927 var_nodearraylist3
= var3
;
928 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
929 var_nodearraylist2
= var4
;
930 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
931 var_nodearraylist1
= var5
;
932 var_tkwissetnode2
= var_nodearraylist1
;
933 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
934 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
935 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
936 if(var_tkwissetnode2
== NULL
) {
939 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
942 var6
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
946 fprintf(stderr
, "Runtime error: %s", "Assert failed");
947 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26899);
950 var_pexprnode3
= var_nodearraylist2
;
951 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
952 cltype8
= type_nullable_parser_nodes__AExpr
.color
;
953 idtype9
= type_nullable_parser_nodes__AExpr
.id
;
954 if(var_pexprnode3
== NULL
) {
957 if(cltype8
>= var_pexprnode3
->type
->table_size
) {
960 var7
= var_pexprnode3
->type
->type_table
[cltype8
] == idtype9
;
964 fprintf(stderr
, "Runtime error: %s", "Assert failed");
965 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26901);
968 var_tattridnode4
= var_nodearraylist5
;
969 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
970 cltype11
= type_nullable_parser_nodes__TAttrid
.color
;
971 idtype12
= type_nullable_parser_nodes__TAttrid
.id
;
972 if(var_tattridnode4
== NULL
) {
975 if(cltype11
>= var_tattridnode4
->type
->table_size
) {
978 var10
= var_tattridnode4
->type
->type_table
[cltype11
] == idtype12
;
982 fprintf(stderr
, "Runtime error: %s", "Assert failed");
983 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26903);
986 var13
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
987 ((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>*/;
988 CHECK_NEW_parser_nodes__AIssetAttrExpr(var13
);
989 var_pexprnode1
= var13
;
990 var_node_list
= var_pexprnode1
;
991 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction741> */
992 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
993 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
996 /* method parser#ReduceAction741#action for (self: Object, Parser) */
997 void VIRTUAL_parser__ReduceAction741__action(val
* self
, val
* p0
) {
998 parser__ReduceAction741__action(self
, p0
);
1001 /* method parser#ReduceAction742#action for (self: ReduceAction742, Parser) */
1002 void parser__ReduceAction742__action(val
* self
, val
* p0
) {
1003 val
* var_p
/* var p: Parser */;
1004 val
* var
/* : null */;
1005 val
* var_node_list
/* var node_list: nullable Object */;
1006 val
* var1
/* : nullable Object */;
1007 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1008 val
* var2
/* : nullable Object */;
1009 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1010 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
1011 short int var3
/* : Bool */;
1014 val
* var4
/* : AImplicitSelfExpr */;
1015 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
1016 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
1017 short int var5
/* : Bool */;
1020 val
* var8
/* : AIssetAttrExpr */;
1021 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
1022 long var9
/* : Int */;
1023 long var10
/* : Int */;
1026 var_node_list
= var
;
1027 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1028 var_nodearraylist2
= var1
;
1029 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1030 var_nodearraylist1
= var2
;
1031 var_tkwissetnode2
= var_nodearraylist1
;
1032 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
1033 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
1034 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
1035 if(var_tkwissetnode2
== NULL
) {
1038 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
1041 var3
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
1045 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1046 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26921);
1049 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1050 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
1051 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
1052 var_pexprnode3
= var4
;
1053 var_tattridnode4
= var_nodearraylist2
;
1054 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
1055 cltype6
= type_nullable_parser_nodes__TAttrid
.color
;
1056 idtype7
= type_nullable_parser_nodes__TAttrid
.id
;
1057 if(var_tattridnode4
== NULL
) {
1060 if(cltype6
>= var_tattridnode4
->type
->table_size
) {
1063 var5
= var_tattridnode4
->type
->type_table
[cltype6
] == idtype7
;
1067 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1068 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26924);
1071 var8
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
1072 ((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>*/;
1073 CHECK_NEW_parser_nodes__AIssetAttrExpr(var8
);
1074 var_pexprnode1
= var8
;
1075 var_node_list
= var_pexprnode1
;
1076 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction742> */
1077 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
1078 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
1081 /* method parser#ReduceAction742#action for (self: Object, Parser) */
1082 void VIRTUAL_parser__ReduceAction742__action(val
* self
, val
* p0
) {
1083 parser__ReduceAction742__action(self
, p0
);
1086 /* method parser#ReduceAction743#action for (self: ReduceAction743, Parser) */
1087 void parser__ReduceAction743__action(val
* self
, val
* p0
) {
1088 val
* var_p
/* var p: Parser */;
1089 val
* var
/* : null */;
1090 val
* var_node_list
/* var node_list: nullable Object */;
1091 val
* var1
/* : nullable Object */;
1092 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1093 val
* var2
/* : nullable Object */;
1094 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1095 val
* var3
/* : nullable Object */;
1096 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1097 val
* var4
/* : nullable Object */;
1098 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1099 val
* var5
/* : nullable Object */;
1100 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1101 val
* var6
/* : nullable Object */;
1102 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1103 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
1104 short int var7
/* : Bool */;
1107 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1108 short int var8
/* : Bool */;
1111 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
1112 short int var11
/* : Bool */;
1115 val
* var14
/* : AIssetAttrExpr */;
1116 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
1117 long var15
/* : Int */;
1118 long var16
/* : Int */;
1121 var_node_list
= var
;
1122 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1123 var_nodearraylist6
= var1
;
1124 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1125 var_nodearraylist5
= var2
;
1126 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1127 var_nodearraylist4
= var3
;
1128 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1129 var_nodearraylist3
= var4
;
1130 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1131 var_nodearraylist2
= var5
;
1132 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1133 var_nodearraylist1
= var6
;
1134 var_tkwissetnode2
= var_nodearraylist1
;
1135 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
1136 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
1137 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
1138 if(var_tkwissetnode2
== NULL
) {
1141 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
1144 var7
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
1148 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1149 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26946);
1152 var_pexprnode3
= var_nodearraylist2
;
1153 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1154 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
1155 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
1156 if(var_pexprnode3
== NULL
) {
1159 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
1162 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
1166 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1167 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26948);
1170 var_tattridnode4
= var_nodearraylist6
;
1171 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
1172 cltype12
= type_nullable_parser_nodes__TAttrid
.color
;
1173 idtype13
= type_nullable_parser_nodes__TAttrid
.id
;
1174 if(var_tattridnode4
== NULL
) {
1177 if(cltype12
>= var_tattridnode4
->type
->table_size
) {
1180 var11
= var_tattridnode4
->type
->type_table
[cltype12
] == idtype13
;
1184 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1185 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26950);
1188 var14
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
1189 ((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>*/;
1190 CHECK_NEW_parser_nodes__AIssetAttrExpr(var14
);
1191 var_pexprnode1
= var14
;
1192 var_node_list
= var_pexprnode1
;
1193 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction743> */
1194 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
1195 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
1198 /* method parser#ReduceAction743#action for (self: Object, Parser) */
1199 void VIRTUAL_parser__ReduceAction743__action(val
* self
, val
* p0
) {
1200 parser__ReduceAction743__action(self
, p0
);
1203 /* method parser#ReduceAction744#action for (self: ReduceAction744, Parser) */
1204 void parser__ReduceAction744__action(val
* self
, val
* p0
) {
1205 val
* var_p
/* var p: Parser */;
1206 val
* var
/* : null */;
1207 val
* var_node_list
/* var node_list: nullable Object */;
1208 val
* var1
/* : nullable Object */;
1209 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1210 val
* var2
/* : nullable Object */;
1211 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1212 val
* var3
/* : nullable Object */;
1213 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1214 val
* var4
/* : nullable Object */;
1215 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1216 val
* var5
/* : nullable Object */;
1217 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1218 val
* var6
/* : nullable Object */;
1219 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1220 val
* var7
/* : nullable Object */;
1221 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1222 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
1223 short int var8
/* : Bool */;
1226 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
1227 short int var9
/* : Bool */;
1230 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
1231 short int var12
/* : Bool */;
1234 val
* var15
/* : AIssetAttrExpr */;
1235 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
1236 long var16
/* : Int */;
1237 long var17
/* : Int */;
1240 var_node_list
= var
;
1241 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1242 var_nodearraylist7
= var1
;
1243 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1244 var_nodearraylist6
= var2
;
1245 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1246 var_nodearraylist5
= var3
;
1247 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1248 var_nodearraylist4
= var4
;
1249 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1250 var_nodearraylist3
= var5
;
1251 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1252 var_nodearraylist2
= var6
;
1253 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1254 var_nodearraylist1
= var7
;
1255 var_tkwissetnode2
= var_nodearraylist1
;
1256 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
1257 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
1258 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
1259 if(var_tkwissetnode2
== NULL
) {
1262 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
1265 var8
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
1269 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1270 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26973);
1273 var_pexprnode3
= var_nodearraylist2
;
1274 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
1275 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
1276 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
1277 if(var_pexprnode3
== NULL
) {
1280 if(cltype10
>= var_pexprnode3
->type
->table_size
) {
1283 var9
= var_pexprnode3
->type
->type_table
[cltype10
] == idtype11
;
1287 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1288 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26975);
1291 var_tattridnode4
= var_nodearraylist7
;
1292 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
1293 cltype13
= type_nullable_parser_nodes__TAttrid
.color
;
1294 idtype14
= type_nullable_parser_nodes__TAttrid
.id
;
1295 if(var_tattridnode4
== NULL
) {
1298 if(cltype13
>= var_tattridnode4
->type
->table_size
) {
1301 var12
= var_tattridnode4
->type
->type_table
[cltype13
] == idtype14
;
1305 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1306 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26977);
1309 var15
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
1310 ((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>*/;
1311 CHECK_NEW_parser_nodes__AIssetAttrExpr(var15
);
1312 var_pexprnode1
= var15
;
1313 var_node_list
= var_pexprnode1
;
1314 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction744> */
1315 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
1316 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
1319 /* method parser#ReduceAction744#action for (self: Object, Parser) */
1320 void VIRTUAL_parser__ReduceAction744__action(val
* self
, val
* p0
) {
1321 parser__ReduceAction744__action(self
, p0
);
1324 /* method parser#ReduceAction746#action for (self: ReduceAction746, Parser) */
1325 void parser__ReduceAction746__action(val
* self
, val
* p0
) {
1326 val
* var_p
/* var p: Parser */;
1327 val
* var
/* : null */;
1328 val
* var_node_list
/* var node_list: nullable Object */;
1329 val
* var1
/* : nullable Object */;
1330 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1331 val
* var2
/* : nullable Object */;
1332 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1333 val
* var3
/* : nullable Object */;
1334 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1335 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
1336 short int var4
/* : Bool */;
1339 val
* var5
/* : AImplicitSelfExpr */;
1340 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
1341 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
1342 short int var6
/* : Bool */;
1345 val
* var9
/* : AIssetAttrExpr */;
1346 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
1347 long var10
/* : Int */;
1348 long var11
/* : Int */;
1351 var_node_list
= var
;
1352 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1353 var_nodearraylist3
= var1
;
1354 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1355 var_nodearraylist2
= var2
;
1356 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1357 var_nodearraylist1
= var3
;
1358 var_tkwissetnode2
= var_nodearraylist1
;
1359 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
1360 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
1361 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
1362 if(var_tkwissetnode2
== NULL
) {
1365 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
1368 var4
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
1372 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1373 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26996);
1376 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1377 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
1378 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
1379 var_pexprnode3
= var5
;
1380 var_tattridnode4
= var_nodearraylist3
;
1381 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
1382 cltype7
= type_nullable_parser_nodes__TAttrid
.color
;
1383 idtype8
= type_nullable_parser_nodes__TAttrid
.id
;
1384 if(var_tattridnode4
== NULL
) {
1387 if(cltype7
>= var_tattridnode4
->type
->table_size
) {
1390 var6
= var_tattridnode4
->type
->type_table
[cltype7
] == idtype8
;
1394 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1395 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26999);
1398 var9
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
1399 ((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>*/;
1400 CHECK_NEW_parser_nodes__AIssetAttrExpr(var9
);
1401 var_pexprnode1
= var9
;
1402 var_node_list
= var_pexprnode1
;
1403 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction746> */
1404 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
1405 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
1408 /* method parser#ReduceAction746#action for (self: Object, Parser) */
1409 void VIRTUAL_parser__ReduceAction746__action(val
* self
, val
* p0
) {
1410 parser__ReduceAction746__action(self
, p0
);
1413 /* method parser#ReduceAction747#action for (self: ReduceAction747, Parser) */
1414 void parser__ReduceAction747__action(val
* self
, val
* p0
) {
1415 val
* var_p
/* var p: Parser */;
1416 val
* var
/* : null */;
1417 val
* var_node_list
/* var node_list: nullable Object */;
1418 val
* var1
/* : nullable Object */;
1419 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1420 val
* var2
/* : nullable Object */;
1421 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1422 val
* var3
/* : nullable Object */;
1423 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1424 val
* var4
/* : nullable Object */;
1425 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1426 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
1427 short int var5
/* : Bool */;
1430 val
* var6
/* : AImplicitSelfExpr */;
1431 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
1432 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
1433 short int var7
/* : Bool */;
1436 val
* var10
/* : AIssetAttrExpr */;
1437 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
1438 long var11
/* : Int */;
1439 long var12
/* : Int */;
1442 var_node_list
= var
;
1443 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1444 var_nodearraylist4
= var1
;
1445 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1446 var_nodearraylist3
= var2
;
1447 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1448 var_nodearraylist2
= var3
;
1449 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1450 var_nodearraylist1
= var4
;
1451 var_tkwissetnode2
= var_nodearraylist1
;
1452 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
1453 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
1454 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
1455 if(var_tkwissetnode2
== NULL
) {
1458 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
1461 var5
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
1465 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1466 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27019);
1469 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1470 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
1471 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
1472 var_pexprnode3
= var6
;
1473 var_tattridnode4
= var_nodearraylist4
;
1474 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
1475 cltype8
= type_nullable_parser_nodes__TAttrid
.color
;
1476 idtype9
= type_nullable_parser_nodes__TAttrid
.id
;
1477 if(var_tattridnode4
== NULL
) {
1480 if(cltype8
>= var_tattridnode4
->type
->table_size
) {
1483 var7
= var_tattridnode4
->type
->type_table
[cltype8
] == idtype9
;
1487 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1488 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27022);
1491 var10
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
1492 ((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>*/;
1493 CHECK_NEW_parser_nodes__AIssetAttrExpr(var10
);
1494 var_pexprnode1
= var10
;
1495 var_node_list
= var_pexprnode1
;
1496 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction747> */
1497 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
1498 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
1501 /* method parser#ReduceAction747#action for (self: Object, Parser) */
1502 void VIRTUAL_parser__ReduceAction747__action(val
* self
, val
* p0
) {
1503 parser__ReduceAction747__action(self
, p0
);
1506 /* method parser#ReduceAction749#action for (self: ReduceAction749, Parser) */
1507 void parser__ReduceAction749__action(val
* self
, val
* p0
) {
1508 val
* var_p
/* var p: Parser */;
1509 val
* var
/* : null */;
1510 val
* var_node_list
/* var node_list: nullable Object */;
1511 val
* var1
/* : nullable Object */;
1512 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1513 val
* var2
/* : nullable Object */;
1514 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1515 val
* var3
/* : nullable Object */;
1516 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1517 val
* var4
/* : nullable Object */;
1518 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1519 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1520 short int var5
/* : Bool */;
1523 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
1524 short int var6
/* : Bool */;
1527 val
* var9
/* : AAttrExpr */;
1528 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
1529 long var10
/* : Int */;
1530 long var11
/* : Int */;
1533 var_node_list
= var
;
1534 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1535 var_nodearraylist4
= var1
;
1536 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1537 var_nodearraylist3
= var2
;
1538 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1539 var_nodearraylist2
= var3
;
1540 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1541 var_nodearraylist1
= var4
;
1542 var_pexprnode2
= var_nodearraylist1
;
1543 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1544 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1545 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1546 if(var_pexprnode2
== NULL
) {
1549 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1552 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1556 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1557 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27042);
1560 var_tattridnode3
= var_nodearraylist4
;
1561 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
1562 cltype7
= type_nullable_parser_nodes__TAttrid
.color
;
1563 idtype8
= type_nullable_parser_nodes__TAttrid
.id
;
1564 if(var_tattridnode3
== NULL
) {
1567 if(cltype7
>= var_tattridnode3
->type
->table_size
) {
1570 var6
= var_tattridnode3
->type
->type_table
[cltype7
] == idtype8
;
1574 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1575 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27044);
1578 var9
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
1579 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var9
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var9:AAttrExpr>*/;
1580 CHECK_NEW_parser_nodes__AAttrExpr(var9
);
1581 var_pexprnode1
= var9
;
1582 var_node_list
= var_pexprnode1
;
1583 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction749> */
1584 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
1585 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
1588 /* method parser#ReduceAction749#action for (self: Object, Parser) */
1589 void VIRTUAL_parser__ReduceAction749__action(val
* self
, val
* p0
) {
1590 parser__ReduceAction749__action(self
, p0
);
1593 /* method parser#ReduceAction750#action for (self: ReduceAction750, Parser) */
1594 void parser__ReduceAction750__action(val
* self
, val
* p0
) {
1595 val
* var_p
/* var p: Parser */;
1596 val
* var
/* : null */;
1597 val
* var_node_list
/* var node_list: nullable Object */;
1598 val
* var1
/* : nullable Object */;
1599 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1600 val
* var2
/* : AImplicitSelfExpr */;
1601 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1602 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
1603 short int var3
/* : Bool */;
1606 val
* var4
/* : AAttrExpr */;
1607 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
1608 long var5
/* : Int */;
1609 long var6
/* : Int */;
1612 var_node_list
= var
;
1613 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1614 var_nodearraylist1
= var1
;
1615 var2
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1616 ((void (*)(val
*))(var2
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var2
) /* init_aimplicitselfexpr on <var2:AImplicitSelfExpr>*/;
1617 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var2
);
1618 var_pexprnode2
= var2
;
1619 var_tattridnode3
= var_nodearraylist1
;
1620 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
1621 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
1622 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
1623 if(var_tattridnode3
== NULL
) {
1626 if(cltype
>= var_tattridnode3
->type
->table_size
) {
1629 var3
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
1633 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1634 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27061);
1637 var4
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
1638 ((void (*)(val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var4
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var4:AAttrExpr>*/;
1639 CHECK_NEW_parser_nodes__AAttrExpr(var4
);
1640 var_pexprnode1
= var4
;
1641 var_node_list
= var_pexprnode1
;
1642 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction750> */
1643 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
1644 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
1647 /* method parser#ReduceAction750#action for (self: Object, Parser) */
1648 void VIRTUAL_parser__ReduceAction750__action(val
* self
, val
* p0
) {
1649 parser__ReduceAction750__action(self
, p0
);
1652 /* method parser#ReduceAction751#action for (self: ReduceAction751, Parser) */
1653 void parser__ReduceAction751__action(val
* self
, val
* p0
) {
1654 val
* var_p
/* var p: Parser */;
1655 val
* var
/* : null */;
1656 val
* var_node_list
/* var node_list: nullable Object */;
1657 val
* var1
/* : nullable Object */;
1658 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1659 val
* var2
/* : nullable Object */;
1660 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1661 val
* var3
/* : nullable Object */;
1662 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1663 val
* var4
/* : nullable Object */;
1664 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1665 val
* var5
/* : nullable Object */;
1666 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1667 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1668 short int var6
/* : Bool */;
1671 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
1672 short int var7
/* : Bool */;
1675 val
* var10
/* : AAttrExpr */;
1676 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
1677 long var11
/* : Int */;
1678 long var12
/* : Int */;
1681 var_node_list
= var
;
1682 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1683 var_nodearraylist5
= var1
;
1684 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1685 var_nodearraylist4
= var2
;
1686 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1687 var_nodearraylist3
= var3
;
1688 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1689 var_nodearraylist2
= var4
;
1690 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1691 var_nodearraylist1
= var5
;
1692 var_pexprnode2
= var_nodearraylist1
;
1693 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1694 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1695 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1696 if(var_pexprnode2
== NULL
) {
1699 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1702 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1706 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1707 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27081);
1710 var_tattridnode3
= var_nodearraylist5
;
1711 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
1712 cltype8
= type_nullable_parser_nodes__TAttrid
.color
;
1713 idtype9
= type_nullable_parser_nodes__TAttrid
.id
;
1714 if(var_tattridnode3
== NULL
) {
1717 if(cltype8
>= var_tattridnode3
->type
->table_size
) {
1720 var7
= var_tattridnode3
->type
->type_table
[cltype8
] == idtype9
;
1724 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1725 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27083);
1728 var10
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
1729 ((void (*)(val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var10
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var10:AAttrExpr>*/;
1730 CHECK_NEW_parser_nodes__AAttrExpr(var10
);
1731 var_pexprnode1
= var10
;
1732 var_node_list
= var_pexprnode1
;
1733 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction751> */
1734 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
1735 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
1738 /* method parser#ReduceAction751#action for (self: Object, Parser) */
1739 void VIRTUAL_parser__ReduceAction751__action(val
* self
, val
* p0
) {
1740 parser__ReduceAction751__action(self
, p0
);
1743 /* method parser#ReduceAction752#action for (self: ReduceAction752, Parser) */
1744 void parser__ReduceAction752__action(val
* self
, val
* p0
) {
1745 val
* var_p
/* var p: Parser */;
1746 val
* var
/* : null */;
1747 val
* var_node_list
/* var node_list: nullable Object */;
1748 val
* var1
/* : nullable Object */;
1749 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1750 val
* var2
/* : nullable Object */;
1751 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1752 val
* var3
/* : nullable Object */;
1753 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1754 val
* var4
/* : nullable Object */;
1755 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1756 val
* var5
/* : nullable Object */;
1757 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1758 val
* var6
/* : nullable Object */;
1759 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1760 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1761 short int var7
/* : Bool */;
1764 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
1765 short int var8
/* : Bool */;
1768 val
* var11
/* : AAttrExpr */;
1769 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
1770 long var12
/* : Int */;
1771 long var13
/* : 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_nodearraylist6
= var1
;
1777 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1778 var_nodearraylist5
= var2
;
1779 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1780 var_nodearraylist4
= var3
;
1781 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1782 var_nodearraylist3
= var4
;
1783 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1784 var_nodearraylist2
= var5
;
1785 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1786 var_nodearraylist1
= var6
;
1787 var_pexprnode2
= var_nodearraylist1
;
1788 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1789 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1790 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1791 if(var_pexprnode2
== NULL
) {
1794 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1797 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1801 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1802 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27104);
1805 var_tattridnode3
= var_nodearraylist6
;
1806 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
1807 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
1808 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
1809 if(var_tattridnode3
== NULL
) {
1812 if(cltype9
>= var_tattridnode3
->type
->table_size
) {
1815 var8
= var_tattridnode3
->type
->type_table
[cltype9
] == idtype10
;
1819 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1820 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27106);
1823 var11
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
1824 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var11
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var11:AAttrExpr>*/;
1825 CHECK_NEW_parser_nodes__AAttrExpr(var11
);
1826 var_pexprnode1
= var11
;
1827 var_node_list
= var_pexprnode1
;
1828 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction752> */
1829 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
1830 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
1833 /* method parser#ReduceAction752#action for (self: Object, Parser) */
1834 void VIRTUAL_parser__ReduceAction752__action(val
* self
, val
* p0
) {
1835 parser__ReduceAction752__action(self
, p0
);
1838 /* method parser#ReduceAction754#action for (self: ReduceAction754, Parser) */
1839 void parser__ReduceAction754__action(val
* self
, val
* p0
) {
1840 val
* var_p
/* var p: Parser */;
1841 val
* var
/* : null */;
1842 val
* var_node_list
/* var node_list: nullable Object */;
1843 val
* var1
/* : nullable Object */;
1844 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1845 val
* var2
/* : nullable Object */;
1846 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1847 val
* var3
/* : AImplicitSelfExpr */;
1848 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1849 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
1850 short int var4
/* : Bool */;
1853 val
* var5
/* : AAttrExpr */;
1854 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
1855 long var6
/* : Int */;
1856 long var7
/* : Int */;
1859 var_node_list
= var
;
1860 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1861 var_nodearraylist2
= var1
;
1862 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1863 var_nodearraylist1
= var2
;
1864 var3
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1865 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var3
) /* init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/;
1866 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var3
);
1867 var_pexprnode2
= var3
;
1868 var_tattridnode3
= var_nodearraylist2
;
1869 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
1870 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
1871 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
1872 if(var_tattridnode3
== NULL
) {
1875 if(cltype
>= var_tattridnode3
->type
->table_size
) {
1878 var4
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
1882 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1883 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27124);
1886 var5
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
1887 ((void (*)(val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var5
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var5:AAttrExpr>*/;
1888 CHECK_NEW_parser_nodes__AAttrExpr(var5
);
1889 var_pexprnode1
= var5
;
1890 var_node_list
= var_pexprnode1
;
1891 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction754> */
1892 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
1893 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
1896 /* method parser#ReduceAction754#action for (self: Object, Parser) */
1897 void VIRTUAL_parser__ReduceAction754__action(val
* self
, val
* p0
) {
1898 parser__ReduceAction754__action(self
, p0
);
1901 /* method parser#ReduceAction755#action for (self: ReduceAction755, Parser) */
1902 void parser__ReduceAction755__action(val
* self
, val
* p0
) {
1903 val
* var_p
/* var p: Parser */;
1904 val
* var
/* : null */;
1905 val
* var_node_list
/* var node_list: nullable Object */;
1906 val
* var1
/* : nullable Object */;
1907 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1908 val
* var2
/* : nullable Object */;
1909 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1910 val
* var3
/* : nullable Object */;
1911 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1912 val
* var4
/* : AImplicitSelfExpr */;
1913 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1914 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
1915 short int var5
/* : Bool */;
1918 val
* var6
/* : AAttrExpr */;
1919 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
1920 long var7
/* : Int */;
1921 long var8
/* : Int */;
1924 var_node_list
= var
;
1925 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1926 var_nodearraylist3
= var1
;
1927 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1928 var_nodearraylist2
= var2
;
1929 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1930 var_nodearraylist1
= var3
;
1931 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1932 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
1933 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
1934 var_pexprnode2
= var4
;
1935 var_tattridnode3
= var_nodearraylist3
;
1936 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
1937 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
1938 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
1939 if(var_tattridnode3
== NULL
) {
1942 if(cltype
>= var_tattridnode3
->type
->table_size
) {
1945 var5
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
1949 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1950 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27143);
1953 var6
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
1954 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var6
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var6:AAttrExpr>*/;
1955 CHECK_NEW_parser_nodes__AAttrExpr(var6
);
1956 var_pexprnode1
= var6
;
1957 var_node_list
= var_pexprnode1
;
1958 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction755> */
1959 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
1960 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
1963 /* method parser#ReduceAction755#action for (self: Object, Parser) */
1964 void VIRTUAL_parser__ReduceAction755__action(val
* self
, val
* p0
) {
1965 parser__ReduceAction755__action(self
, p0
);
1968 /* method parser#ReduceAction771#action for (self: ReduceAction771, Parser) */
1969 void parser__ReduceAction771__action(val
* self
, val
* p0
) {
1970 val
* var_p
/* var p: Parser */;
1971 val
* var
/* : null */;
1972 val
* var_node_list
/* var node_list: nullable Object */;
1973 val
* var1
/* : nullable Object */;
1974 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1975 val
* var2
/* : nullable Object */;
1976 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1977 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1978 short int var3
/* : Bool */;
1981 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
1982 short int var4
/* : Bool */;
1985 val
* var7
/* : ABraExpr */;
1986 val
* var_pexprnode1
/* var pexprnode1: nullable ABraExpr */;
1987 long var8
/* : Int */;
1988 long var9
/* : Int */;
1991 var_node_list
= var
;
1992 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1993 var_nodearraylist2
= var1
;
1994 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1995 var_nodearraylist1
= var2
;
1996 var_pexprnode2
= var_nodearraylist1
;
1997 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1998 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1999 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2000 if(var_pexprnode2
== NULL
) {
2003 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2006 var3
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2010 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2011 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27160);
2014 var_pexprsnode3
= var_nodearraylist2
;
2015 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
2016 cltype5
= type_nullable_parser_nodes__AExprs
.color
;
2017 idtype6
= type_nullable_parser_nodes__AExprs
.id
;
2018 if(var_pexprsnode3
== NULL
) {
2021 if(cltype5
>= var_pexprsnode3
->type
->table_size
) {
2024 var4
= var_pexprsnode3
->type
->type_table
[cltype5
] == idtype6
;
2028 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2029 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27162);
2032 var7
= NEW_parser_nodes__ABraExpr(&type_parser_nodes__ABraExpr
);
2033 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABraExpr__init_abraexpr
]))(var7
, var_pexprnode2
, var_pexprsnode3
) /* init_abraexpr on <var7:ABraExpr>*/;
2034 CHECK_NEW_parser_nodes__ABraExpr(var7
);
2035 var_pexprnode1
= var7
;
2036 var_node_list
= var_pexprnode1
;
2037 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction771> */
2038 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
2039 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
2042 /* method parser#ReduceAction771#action for (self: Object, Parser) */
2043 void VIRTUAL_parser__ReduceAction771__action(val
* self
, val
* p0
) {
2044 parser__ReduceAction771__action(self
, p0
);
2047 /* method parser#ReduceAction772#action for (self: ReduceAction772, Parser) */
2048 void parser__ReduceAction772__action(val
* self
, val
* p0
) {
2049 val
* var_p
/* var p: Parser */;
2050 val
* var
/* : null */;
2051 val
* var_node_list
/* var node_list: nullable Object */;
2052 val
* var1
/* : nullable Object */;
2053 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2054 val
* var2
/* : nullable Object */;
2055 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2056 val
* var3
/* : nullable Object */;
2057 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2058 val
* var4
/* : nullable Object */;
2059 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2060 val
* var5
/* : nullable Object */;
2061 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2062 val
* var6
/* : nullable Object */;
2063 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2064 val
* var7
/* : nullable Object */;
2065 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2066 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
2067 short int var8
/* : Bool */;
2070 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2071 short int var9
/* : Bool */;
2074 val
* var_tidnode4
/* var tidnode4: nullable Object */;
2075 short int var12
/* : Bool */;
2078 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
2079 short int var15
/* : Bool */;
2082 val
* var18
/* : ANewExpr */;
2083 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
2084 long var19
/* : Int */;
2085 long var20
/* : Int */;
2088 var_node_list
= var
;
2089 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2090 var_nodearraylist7
= var1
;
2091 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2092 var_nodearraylist6
= var2
;
2093 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2094 var_nodearraylist5
= var3
;
2095 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2096 var_nodearraylist4
= var4
;
2097 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2098 var_nodearraylist3
= var5
;
2099 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2100 var_nodearraylist2
= var6
;
2101 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2102 var_nodearraylist1
= var7
;
2103 var_tkwnewnode2
= var_nodearraylist1
;
2104 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
2105 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
2106 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
2107 if(var_tkwnewnode2
== NULL
) {
2110 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
2113 var8
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
2117 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2118 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27184);
2121 var_ptypenode3
= var_nodearraylist3
;
2122 /* <var_ptypenode3:nullable Object> isa nullable AType */
2123 cltype10
= type_nullable_parser_nodes__AType
.color
;
2124 idtype11
= type_nullable_parser_nodes__AType
.id
;
2125 if(var_ptypenode3
== NULL
) {
2128 if(cltype10
>= var_ptypenode3
->type
->table_size
) {
2131 var9
= var_ptypenode3
->type
->type_table
[cltype10
] == idtype11
;
2135 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2136 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27186);
2139 var_tidnode4
= var_nodearraylist6
;
2140 /* <var_tidnode4:nullable Object> isa nullable TId */
2141 cltype13
= type_nullable_parser_nodes__TId
.color
;
2142 idtype14
= type_nullable_parser_nodes__TId
.id
;
2143 if(var_tidnode4
== NULL
) {
2146 if(cltype13
>= var_tidnode4
->type
->table_size
) {
2149 var12
= var_tidnode4
->type
->type_table
[cltype13
] == idtype14
;
2153 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2154 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27188);
2157 var_pexprsnode5
= var_nodearraylist7
;
2158 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
2159 cltype16
= type_nullable_parser_nodes__AExprs
.color
;
2160 idtype17
= type_nullable_parser_nodes__AExprs
.id
;
2161 if(var_pexprsnode5
== NULL
) {
2164 if(cltype16
>= var_pexprsnode5
->type
->table_size
) {
2167 var15
= var_pexprsnode5
->type
->type_table
[cltype16
] == idtype17
;
2171 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2172 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27190);
2175 var18
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
2176 ((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>*/;
2177 CHECK_NEW_parser_nodes__ANewExpr(var18
);
2178 var_pexprnode1
= var18
;
2179 var_node_list
= var_pexprnode1
;
2180 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction772> */
2181 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
2182 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
2185 /* method parser#ReduceAction772#action for (self: Object, Parser) */
2186 void VIRTUAL_parser__ReduceAction772__action(val
* self
, val
* p0
) {
2187 parser__ReduceAction772__action(self
, p0
);
2190 /* method parser#ReduceAction773#action for (self: ReduceAction773, Parser) */
2191 void parser__ReduceAction773__action(val
* self
, val
* p0
) {
2192 val
* var_p
/* var p: Parser */;
2193 val
* var
/* : null */;
2194 val
* var_node_list
/* var node_list: nullable Object */;
2195 val
* var1
/* : nullable Object */;
2196 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2197 val
* var2
/* : nullable Object */;
2198 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2199 val
* var3
/* : nullable Object */;
2200 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2201 val
* var4
/* : nullable Object */;
2202 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2203 val
* var5
/* : nullable Object */;
2204 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2205 val
* var6
/* : nullable Object */;
2206 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2207 val
* var7
/* : nullable Object */;
2208 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2209 val
* var8
/* : nullable Object */;
2210 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2211 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
2212 short int var9
/* : Bool */;
2215 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2216 short int var10
/* : Bool */;
2219 val
* var_tidnode4
/* var tidnode4: nullable Object */;
2220 short int var13
/* : Bool */;
2223 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
2224 short int var16
/* : Bool */;
2227 val
* var19
/* : ANewExpr */;
2228 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
2229 long var20
/* : Int */;
2230 long var21
/* : Int */;
2233 var_node_list
= var
;
2234 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2235 var_nodearraylist8
= var1
;
2236 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2237 var_nodearraylist7
= var2
;
2238 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2239 var_nodearraylist6
= var3
;
2240 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2241 var_nodearraylist5
= var4
;
2242 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2243 var_nodearraylist4
= var5
;
2244 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2245 var_nodearraylist3
= var6
;
2246 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2247 var_nodearraylist2
= var7
;
2248 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2249 var_nodearraylist1
= var8
;
2250 var_tkwnewnode2
= var_nodearraylist1
;
2251 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
2252 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
2253 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
2254 if(var_tkwnewnode2
== NULL
) {
2257 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
2260 var9
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
2264 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2265 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27215);
2268 var_ptypenode3
= var_nodearraylist3
;
2269 /* <var_ptypenode3:nullable Object> isa nullable AType */
2270 cltype11
= type_nullable_parser_nodes__AType
.color
;
2271 idtype12
= type_nullable_parser_nodes__AType
.id
;
2272 if(var_ptypenode3
== NULL
) {
2275 if(cltype11
>= var_ptypenode3
->type
->table_size
) {
2278 var10
= var_ptypenode3
->type
->type_table
[cltype11
] == idtype12
;
2282 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2283 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27217);
2286 var_tidnode4
= var_nodearraylist7
;
2287 /* <var_tidnode4:nullable Object> isa nullable TId */
2288 cltype14
= type_nullable_parser_nodes__TId
.color
;
2289 idtype15
= type_nullable_parser_nodes__TId
.id
;
2290 if(var_tidnode4
== NULL
) {
2293 if(cltype14
>= var_tidnode4
->type
->table_size
) {
2296 var13
= var_tidnode4
->type
->type_table
[cltype14
] == idtype15
;
2300 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2301 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27219);
2304 var_pexprsnode5
= var_nodearraylist8
;
2305 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
2306 cltype17
= type_nullable_parser_nodes__AExprs
.color
;
2307 idtype18
= type_nullable_parser_nodes__AExprs
.id
;
2308 if(var_pexprsnode5
== NULL
) {
2311 if(cltype17
>= var_pexprsnode5
->type
->table_size
) {
2314 var16
= var_pexprsnode5
->type
->type_table
[cltype17
] == idtype18
;
2318 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2319 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27221);
2322 var19
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
2323 ((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>*/;
2324 CHECK_NEW_parser_nodes__ANewExpr(var19
);
2325 var_pexprnode1
= var19
;
2326 var_node_list
= var_pexprnode1
;
2327 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction773> */
2328 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
2329 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
2332 /* method parser#ReduceAction773#action for (self: Object, Parser) */
2333 void VIRTUAL_parser__ReduceAction773__action(val
* self
, val
* p0
) {
2334 parser__ReduceAction773__action(self
, p0
);
2337 /* method parser#ReduceAction774#action for (self: ReduceAction774, Parser) */
2338 void parser__ReduceAction774__action(val
* self
, val
* p0
) {
2339 val
* var_p
/* var p: Parser */;
2340 val
* var
/* : null */;
2341 val
* var_node_list
/* var node_list: nullable Object */;
2342 val
* var1
/* : nullable Object */;
2343 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2344 val
* var2
/* : nullable Object */;
2345 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2346 val
* var3
/* : nullable Object */;
2347 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2348 val
* var4
/* : nullable Object */;
2349 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2350 val
* var5
/* : nullable Object */;
2351 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2352 val
* var6
/* : nullable Object */;
2353 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2354 val
* var7
/* : nullable Object */;
2355 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2356 val
* var8
/* : nullable Object */;
2357 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2358 val
* var9
/* : nullable Object */;
2359 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2360 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
2361 short int var10
/* : Bool */;
2364 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2365 short int var11
/* : Bool */;
2368 val
* var_tidnode4
/* var tidnode4: nullable Object */;
2369 short int var14
/* : Bool */;
2372 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
2373 short int var17
/* : Bool */;
2376 val
* var20
/* : ANewExpr */;
2377 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
2378 long var21
/* : Int */;
2379 long var22
/* : Int */;
2382 var_node_list
= var
;
2383 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2384 var_nodearraylist9
= var1
;
2385 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2386 var_nodearraylist8
= var2
;
2387 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2388 var_nodearraylist7
= var3
;
2389 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2390 var_nodearraylist6
= var4
;
2391 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2392 var_nodearraylist5
= var5
;
2393 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2394 var_nodearraylist4
= var6
;
2395 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2396 var_nodearraylist3
= var7
;
2397 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2398 var_nodearraylist2
= var8
;
2399 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2400 var_nodearraylist1
= var9
;
2401 var_tkwnewnode2
= var_nodearraylist1
;
2402 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
2403 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
2404 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
2405 if(var_tkwnewnode2
== NULL
) {
2408 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
2411 var10
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
2415 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2416 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27247);
2419 var_ptypenode3
= var_nodearraylist3
;
2420 /* <var_ptypenode3:nullable Object> isa nullable AType */
2421 cltype12
= type_nullable_parser_nodes__AType
.color
;
2422 idtype13
= type_nullable_parser_nodes__AType
.id
;
2423 if(var_ptypenode3
== NULL
) {
2426 if(cltype12
>= var_ptypenode3
->type
->table_size
) {
2429 var11
= var_ptypenode3
->type
->type_table
[cltype12
] == idtype13
;
2433 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2434 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27249);
2437 var_tidnode4
= var_nodearraylist8
;
2438 /* <var_tidnode4:nullable Object> isa nullable TId */
2439 cltype15
= type_nullable_parser_nodes__TId
.color
;
2440 idtype16
= type_nullable_parser_nodes__TId
.id
;
2441 if(var_tidnode4
== NULL
) {
2444 if(cltype15
>= var_tidnode4
->type
->table_size
) {
2447 var14
= var_tidnode4
->type
->type_table
[cltype15
] == idtype16
;
2451 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2452 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27251);
2455 var_pexprsnode5
= var_nodearraylist9
;
2456 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
2457 cltype18
= type_nullable_parser_nodes__AExprs
.color
;
2458 idtype19
= type_nullable_parser_nodes__AExprs
.id
;
2459 if(var_pexprsnode5
== NULL
) {
2462 if(cltype18
>= var_pexprsnode5
->type
->table_size
) {
2465 var17
= var_pexprsnode5
->type
->type_table
[cltype18
] == idtype19
;
2469 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2470 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27253);
2473 var20
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
2474 ((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>*/;
2475 CHECK_NEW_parser_nodes__ANewExpr(var20
);
2476 var_pexprnode1
= var20
;
2477 var_node_list
= var_pexprnode1
;
2478 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction774> */
2479 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
2480 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
2483 /* method parser#ReduceAction774#action for (self: Object, Parser) */
2484 void VIRTUAL_parser__ReduceAction774__action(val
* self
, val
* p0
) {
2485 parser__ReduceAction774__action(self
, p0
);
2488 /* method parser#ReduceAction776#action for (self: ReduceAction776, Parser) */
2489 void parser__ReduceAction776__action(val
* self
, val
* p0
) {
2490 val
* var_p
/* var p: Parser */;
2491 val
* var
/* : null */;
2492 val
* var_node_list
/* var node_list: nullable Object */;
2493 val
* var1
/* : nullable Object */;
2494 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2495 val
* var2
/* : nullable Object */;
2496 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2497 val
* var3
/* : nullable Object */;
2498 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2499 val
* var4
/* : nullable Object */;
2500 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2501 val
* var5
/* : nullable Object */;
2502 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2503 val
* var6
/* : nullable Object */;
2504 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2505 val
* var7
/* : nullable Object */;
2506 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2507 val
* var8
/* : nullable Object */;
2508 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2509 val
* var9
/* : nullable Object */;
2510 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2511 val
* var_tobranode2
/* var tobranode2: nullable Object */;
2512 short int var10
/* : Bool */;
2515 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2516 short int var11
/* : Bool */;
2519 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
2520 short int var14
/* : Bool */;
2523 val
* var_tcbranode5
/* var tcbranode5: nullable Object */;
2524 short int var17
/* : Bool */;
2527 val
* var20
/* : ACrangeExpr */;
2528 val
* var21
/* : null */;
2529 val
* var_pexprnode1
/* var pexprnode1: nullable ACrangeExpr */;
2530 long var22
/* : Int */;
2531 long var23
/* : Int */;
2534 var_node_list
= var
;
2535 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2536 var_nodearraylist9
= var1
;
2537 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2538 var_nodearraylist8
= var2
;
2539 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2540 var_nodearraylist7
= var3
;
2541 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2542 var_nodearraylist6
= var4
;
2543 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2544 var_nodearraylist5
= var5
;
2545 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2546 var_nodearraylist4
= var6
;
2547 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2548 var_nodearraylist3
= var7
;
2549 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2550 var_nodearraylist2
= var8
;
2551 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2552 var_nodearraylist1
= var9
;
2553 var_tobranode2
= var_nodearraylist1
;
2554 /* <var_tobranode2:nullable Object> isa nullable TObra */
2555 cltype
= type_nullable_parser_nodes__TObra
.color
;
2556 idtype
= type_nullable_parser_nodes__TObra
.id
;
2557 if(var_tobranode2
== NULL
) {
2560 if(cltype
>= var_tobranode2
->type
->table_size
) {
2563 var10
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
2567 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2568 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27279);
2571 var_pexprnode3
= var_nodearraylist3
;
2572 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2573 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
2574 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
2575 if(var_pexprnode3
== NULL
) {
2578 if(cltype12
>= var_pexprnode3
->type
->table_size
) {
2581 var11
= var_pexprnode3
->type
->type_table
[cltype12
] == idtype13
;
2585 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2586 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27281);
2589 var_pexprnode4
= var_nodearraylist7
;
2590 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
2591 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
2592 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
2593 if(var_pexprnode4
== NULL
) {
2596 if(cltype15
>= var_pexprnode4
->type
->table_size
) {
2599 var14
= var_pexprnode4
->type
->type_table
[cltype15
] == idtype16
;
2603 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2604 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27283);
2607 var_tcbranode5
= var_nodearraylist9
;
2608 /* <var_tcbranode5:nullable Object> isa nullable TCbra */
2609 cltype18
= type_nullable_parser_nodes__TCbra
.color
;
2610 idtype19
= type_nullable_parser_nodes__TCbra
.id
;
2611 if(var_tcbranode5
== NULL
) {
2614 if(cltype18
>= var_tcbranode5
->type
->table_size
) {
2617 var17
= var_tcbranode5
->type
->type_table
[cltype18
] == idtype19
;
2621 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2622 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27285);
2625 var20
= NEW_parser_nodes__ACrangeExpr(&type_parser_nodes__ACrangeExpr
);
2627 ((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>*/;
2628 CHECK_NEW_parser_nodes__ACrangeExpr(var20
);
2629 var_pexprnode1
= var20
;
2630 var_node_list
= var_pexprnode1
;
2631 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction776> */
2632 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
2633 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
2636 /* method parser#ReduceAction776#action for (self: Object, Parser) */
2637 void VIRTUAL_parser__ReduceAction776__action(val
* self
, val
* p0
) {
2638 parser__ReduceAction776__action(self
, p0
);
2641 /* method parser#ReduceAction777#action for (self: ReduceAction777, Parser) */
2642 void parser__ReduceAction777__action(val
* self
, val
* p0
) {
2643 val
* var_p
/* var p: Parser */;
2644 val
* var
/* : null */;
2645 val
* var_node_list
/* var node_list: nullable Object */;
2646 val
* var1
/* : nullable Object */;
2647 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
2648 val
* var2
/* : nullable Object */;
2649 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2650 val
* var3
/* : nullable Object */;
2651 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2652 val
* var4
/* : nullable Object */;
2653 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2654 val
* var5
/* : nullable Object */;
2655 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2656 val
* var6
/* : nullable Object */;
2657 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2658 val
* var7
/* : nullable Object */;
2659 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2660 val
* var8
/* : nullable Object */;
2661 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2662 val
* var9
/* : nullable Object */;
2663 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2664 val
* var10
/* : nullable Object */;
2665 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2666 val
* var_tobranode2
/* var tobranode2: nullable Object */;
2667 short int var11
/* : Bool */;
2670 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2671 short int var12
/* : Bool */;
2674 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
2675 short int var15
/* : Bool */;
2678 val
* var_tcbranode5
/* var tcbranode5: nullable Object */;
2679 short int var18
/* : Bool */;
2682 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
2683 short int var21
/* : Bool */;
2686 val
* var24
/* : ACrangeExpr */;
2687 val
* var_pexprnode1
/* var pexprnode1: nullable ACrangeExpr */;
2688 long var25
/* : Int */;
2689 long var26
/* : Int */;
2692 var_node_list
= var
;
2693 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2694 var_nodearraylist10
= var1
;
2695 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2696 var_nodearraylist9
= var2
;
2697 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2698 var_nodearraylist8
= var3
;
2699 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2700 var_nodearraylist7
= var4
;
2701 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2702 var_nodearraylist6
= var5
;
2703 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2704 var_nodearraylist5
= var6
;
2705 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2706 var_nodearraylist4
= var7
;
2707 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2708 var_nodearraylist3
= var8
;
2709 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2710 var_nodearraylist2
= var9
;
2711 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2712 var_nodearraylist1
= var10
;
2713 var_tobranode2
= var_nodearraylist1
;
2714 /* <var_tobranode2:nullable Object> isa nullable TObra */
2715 cltype
= type_nullable_parser_nodes__TObra
.color
;
2716 idtype
= type_nullable_parser_nodes__TObra
.id
;
2717 if(var_tobranode2
== NULL
) {
2720 if(cltype
>= var_tobranode2
->type
->table_size
) {
2723 var11
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
2727 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2728 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27313);
2731 var_pexprnode3
= var_nodearraylist3
;
2732 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2733 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
2734 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
2735 if(var_pexprnode3
== NULL
) {
2738 if(cltype13
>= var_pexprnode3
->type
->table_size
) {
2741 var12
= var_pexprnode3
->type
->type_table
[cltype13
] == idtype14
;
2745 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2746 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27315);
2749 var_pexprnode4
= var_nodearraylist7
;
2750 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
2751 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
2752 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
2753 if(var_pexprnode4
== NULL
) {
2756 if(cltype16
>= var_pexprnode4
->type
->table_size
) {
2759 var15
= var_pexprnode4
->type
->type_table
[cltype16
] == idtype17
;
2763 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2764 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27317);
2767 var_tcbranode5
= var_nodearraylist9
;
2768 /* <var_tcbranode5:nullable Object> isa nullable TCbra */
2769 cltype19
= type_nullable_parser_nodes__TCbra
.color
;
2770 idtype20
= type_nullable_parser_nodes__TCbra
.id
;
2771 if(var_tcbranode5
== NULL
) {
2774 if(cltype19
>= var_tcbranode5
->type
->table_size
) {
2777 var18
= var_tcbranode5
->type
->type_table
[cltype19
] == idtype20
;
2781 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2782 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27319);
2785 var_pannotationsnode6
= var_nodearraylist10
;
2786 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
2787 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
2788 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
2789 if(var_pannotationsnode6
== NULL
) {
2792 if(cltype22
>= var_pannotationsnode6
->type
->table_size
) {
2795 var21
= var_pannotationsnode6
->type
->type_table
[cltype22
] == idtype23
;
2799 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2800 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27321);
2803 var24
= NEW_parser_nodes__ACrangeExpr(&type_parser_nodes__ACrangeExpr
);
2804 ((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>*/;
2805 CHECK_NEW_parser_nodes__ACrangeExpr(var24
);
2806 var_pexprnode1
= var24
;
2807 var_node_list
= var_pexprnode1
;
2808 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction777> */
2809 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
2810 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
2813 /* method parser#ReduceAction777#action for (self: Object, Parser) */
2814 void VIRTUAL_parser__ReduceAction777__action(val
* self
, val
* p0
) {
2815 parser__ReduceAction777__action(self
, p0
);
2818 /* method parser#ReduceAction778#action for (self: ReduceAction778, Parser) */
2819 void parser__ReduceAction778__action(val
* self
, val
* p0
) {
2820 val
* var_p
/* var p: Parser */;
2821 val
* var
/* : null */;
2822 val
* var_node_list
/* var node_list: nullable Object */;
2823 val
* var1
/* : nullable Object */;
2824 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2825 val
* var2
/* : nullable Object */;
2826 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2827 val
* var3
/* : nullable Object */;
2828 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2829 val
* var4
/* : nullable Object */;
2830 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2831 val
* var5
/* : nullable Object */;
2832 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2833 val
* var6
/* : nullable Object */;
2834 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2835 val
* var7
/* : nullable Object */;
2836 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2837 val
* var8
/* : nullable Object */;
2838 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2839 val
* var9
/* : nullable Object */;
2840 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2841 val
* var_tobranode2
/* var tobranode2: nullable Object */;
2842 short int var10
/* : Bool */;
2845 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
2846 short int var11
/* : Bool */;
2849 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
2850 short int var14
/* : Bool */;
2853 val
* var_tobranode5
/* var tobranode5: nullable Object */;
2854 short int var17
/* : Bool */;
2857 val
* var20
/* : AOrangeExpr */;
2858 val
* var21
/* : null */;
2859 val
* var_pexprnode1
/* var pexprnode1: nullable AOrangeExpr */;
2860 long var22
/* : Int */;
2861 long var23
/* : Int */;
2864 var_node_list
= var
;
2865 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2866 var_nodearraylist9
= var1
;
2867 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2868 var_nodearraylist8
= var2
;
2869 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2870 var_nodearraylist7
= var3
;
2871 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2872 var_nodearraylist6
= var4
;
2873 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2874 var_nodearraylist5
= var5
;
2875 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2876 var_nodearraylist4
= var6
;
2877 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2878 var_nodearraylist3
= var7
;
2879 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2880 var_nodearraylist2
= var8
;
2881 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2882 var_nodearraylist1
= var9
;
2883 var_tobranode2
= var_nodearraylist1
;
2884 /* <var_tobranode2:nullable Object> isa nullable TObra */
2885 cltype
= type_nullable_parser_nodes__TObra
.color
;
2886 idtype
= type_nullable_parser_nodes__TObra
.id
;
2887 if(var_tobranode2
== NULL
) {
2890 if(cltype
>= var_tobranode2
->type
->table_size
) {
2893 var10
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
2897 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2898 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27348);
2901 var_pexprnode3
= var_nodearraylist3
;
2902 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
2903 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
2904 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
2905 if(var_pexprnode3
== NULL
) {
2908 if(cltype12
>= var_pexprnode3
->type
->table_size
) {
2911 var11
= var_pexprnode3
->type
->type_table
[cltype12
] == idtype13
;
2915 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2916 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27350);
2919 var_pexprnode4
= var_nodearraylist7
;
2920 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
2921 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
2922 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
2923 if(var_pexprnode4
== NULL
) {
2926 if(cltype15
>= var_pexprnode4
->type
->table_size
) {
2929 var14
= var_pexprnode4
->type
->type_table
[cltype15
] == idtype16
;
2933 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2934 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27352);
2937 var_tobranode5
= var_nodearraylist9
;
2938 /* <var_tobranode5:nullable Object> isa nullable TObra */
2939 cltype18
= type_nullable_parser_nodes__TObra
.color
;
2940 idtype19
= type_nullable_parser_nodes__TObra
.id
;
2941 if(var_tobranode5
== NULL
) {
2944 if(cltype18
>= var_tobranode5
->type
->table_size
) {
2947 var17
= var_tobranode5
->type
->type_table
[cltype18
] == idtype19
;
2951 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2952 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27354);
2955 var20
= NEW_parser_nodes__AOrangeExpr(&type_parser_nodes__AOrangeExpr
);
2957 ((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>*/;
2958 CHECK_NEW_parser_nodes__AOrangeExpr(var20
);
2959 var_pexprnode1
= var20
;
2960 var_node_list
= var_pexprnode1
;
2961 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction778> */
2962 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
2963 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
2966 /* method parser#ReduceAction778#action for (self: Object, Parser) */
2967 void VIRTUAL_parser__ReduceAction778__action(val
* self
, val
* p0
) {
2968 parser__ReduceAction778__action(self
, p0
);
2971 /* method parser#ReduceAction779#action for (self: ReduceAction779, Parser) */
2972 void parser__ReduceAction779__action(val
* self
, val
* p0
) {
2973 val
* var_p
/* var p: Parser */;
2974 val
* var
/* : null */;
2975 val
* var_node_list
/* var node_list: nullable Object */;
2976 val
* var1
/* : nullable Object */;
2977 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
2978 val
* var2
/* : nullable Object */;
2979 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2980 val
* var3
/* : nullable Object */;
2981 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2982 val
* var4
/* : nullable Object */;
2983 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2984 val
* var5
/* : nullable Object */;
2985 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2986 val
* var6
/* : nullable Object */;
2987 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2988 val
* var7
/* : nullable Object */;
2989 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2990 val
* var8
/* : nullable Object */;
2991 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2992 val
* var9
/* : nullable Object */;
2993 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2994 val
* var10
/* : nullable Object */;
2995 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2996 val
* var_tobranode2
/* var tobranode2: nullable Object */;
2997 short int var11
/* : Bool */;
3000 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3001 short int var12
/* : Bool */;
3004 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
3005 short int var15
/* : Bool */;
3008 val
* var_tobranode5
/* var tobranode5: nullable Object */;
3009 short int var18
/* : Bool */;
3012 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
3013 short int var21
/* : Bool */;
3016 val
* var24
/* : AOrangeExpr */;
3017 val
* var_pexprnode1
/* var pexprnode1: nullable AOrangeExpr */;
3018 long var25
/* : Int */;
3019 long var26
/* : Int */;
3022 var_node_list
= var
;
3023 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3024 var_nodearraylist10
= var1
;
3025 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3026 var_nodearraylist9
= var2
;
3027 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3028 var_nodearraylist8
= var3
;
3029 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3030 var_nodearraylist7
= var4
;
3031 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3032 var_nodearraylist6
= var5
;
3033 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3034 var_nodearraylist5
= var6
;
3035 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3036 var_nodearraylist4
= var7
;
3037 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3038 var_nodearraylist3
= var8
;
3039 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3040 var_nodearraylist2
= var9
;
3041 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3042 var_nodearraylist1
= var10
;
3043 var_tobranode2
= var_nodearraylist1
;
3044 /* <var_tobranode2:nullable Object> isa nullable TObra */
3045 cltype
= type_nullable_parser_nodes__TObra
.color
;
3046 idtype
= type_nullable_parser_nodes__TObra
.id
;
3047 if(var_tobranode2
== NULL
) {
3050 if(cltype
>= var_tobranode2
->type
->table_size
) {
3053 var11
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
3057 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3058 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27382);
3061 var_pexprnode3
= var_nodearraylist3
;
3062 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3063 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
3064 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
3065 if(var_pexprnode3
== NULL
) {
3068 if(cltype13
>= var_pexprnode3
->type
->table_size
) {
3071 var12
= var_pexprnode3
->type
->type_table
[cltype13
] == idtype14
;
3075 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3076 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27384);
3079 var_pexprnode4
= var_nodearraylist7
;
3080 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
3081 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
3082 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
3083 if(var_pexprnode4
== NULL
) {
3086 if(cltype16
>= var_pexprnode4
->type
->table_size
) {
3089 var15
= var_pexprnode4
->type
->type_table
[cltype16
] == idtype17
;
3093 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3094 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27386);
3097 var_tobranode5
= var_nodearraylist9
;
3098 /* <var_tobranode5:nullable Object> isa nullable TObra */
3099 cltype19
= type_nullable_parser_nodes__TObra
.color
;
3100 idtype20
= type_nullable_parser_nodes__TObra
.id
;
3101 if(var_tobranode5
== NULL
) {
3104 if(cltype19
>= var_tobranode5
->type
->table_size
) {
3107 var18
= var_tobranode5
->type
->type_table
[cltype19
] == idtype20
;
3111 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3112 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27388);
3115 var_pannotationsnode6
= var_nodearraylist10
;
3116 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
3117 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
3118 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
3119 if(var_pannotationsnode6
== NULL
) {
3122 if(cltype22
>= var_pannotationsnode6
->type
->table_size
) {
3125 var21
= var_pannotationsnode6
->type
->type_table
[cltype22
] == idtype23
;
3129 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3130 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27390);
3133 var24
= NEW_parser_nodes__AOrangeExpr(&type_parser_nodes__AOrangeExpr
);
3134 ((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>*/;
3135 CHECK_NEW_parser_nodes__AOrangeExpr(var24
);
3136 var_pexprnode1
= var24
;
3137 var_node_list
= var_pexprnode1
;
3138 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction779> */
3139 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
3140 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
3143 /* method parser#ReduceAction779#action for (self: Object, Parser) */
3144 void VIRTUAL_parser__ReduceAction779__action(val
* self
, val
* p0
) {
3145 parser__ReduceAction779__action(self
, p0
);
3148 /* method parser#ReduceAction780#action for (self: ReduceAction780, Parser) */
3149 void parser__ReduceAction780__action(val
* self
, val
* p0
) {
3150 val
* var_p
/* var p: Parser */;
3151 val
* var
/* : null */;
3152 val
* var_node_list
/* var node_list: nullable Object */;
3153 val
* var1
/* : nullable Object */;
3154 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3155 val
* var_pexprsnode2
/* var pexprsnode2: nullable Object */;
3156 short int var2
/* : Bool */;
3159 val
* var3
/* : AArrayExpr */;
3160 val
* var4
/* : null */;
3161 val
* var_pexprnode1
/* var pexprnode1: nullable AArrayExpr */;
3162 long var5
/* : Int */;
3163 long var6
/* : Int */;
3166 var_node_list
= var
;
3167 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3168 var_nodearraylist1
= var1
;
3169 var_pexprsnode2
= var_nodearraylist1
;
3170 /* <var_pexprsnode2:nullable Object> isa nullable AExprs */
3171 cltype
= type_nullable_parser_nodes__AExprs
.color
;
3172 idtype
= type_nullable_parser_nodes__AExprs
.id
;
3173 if(var_pexprsnode2
== NULL
) {
3176 if(cltype
>= var_pexprsnode2
->type
->table_size
) {
3179 var2
= var_pexprsnode2
->type
->type_table
[cltype
] == idtype
;
3183 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3184 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27409);
3187 var3
= NEW_parser_nodes__AArrayExpr(&type_parser_nodes__AArrayExpr
);
3189 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AArrayExpr__init_aarrayexpr
]))(var3
, var_pexprsnode2
, var4
) /* init_aarrayexpr on <var3:AArrayExpr>*/;
3190 CHECK_NEW_parser_nodes__AArrayExpr(var3
);
3191 var_pexprnode1
= var3
;
3192 var_node_list
= var_pexprnode1
;
3193 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction780> */
3194 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3195 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3198 /* method parser#ReduceAction780#action for (self: Object, Parser) */
3199 void VIRTUAL_parser__ReduceAction780__action(val
* self
, val
* p0
) {
3200 parser__ReduceAction780__action(self
, p0
);
3203 /* method parser#ReduceAction781#action for (self: ReduceAction781, Parser) */
3204 void parser__ReduceAction781__action(val
* self
, val
* p0
) {
3205 val
* var_p
/* var p: Parser */;
3206 val
* var
/* : null */;
3207 val
* var_node_list
/* var node_list: nullable Object */;
3208 val
* var1
/* : nullable Object */;
3209 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3210 val
* var2
/* : nullable Object */;
3211 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3212 val
* var_pexprsnode2
/* var pexprsnode2: nullable Object */;
3213 short int var3
/* : Bool */;
3216 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
3217 short int var4
/* : Bool */;
3220 val
* var7
/* : AArrayExpr */;
3221 val
* var_pexprnode1
/* var pexprnode1: nullable AArrayExpr */;
3222 long var8
/* : Int */;
3223 long var9
/* : Int */;
3226 var_node_list
= var
;
3227 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3228 var_nodearraylist2
= var1
;
3229 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3230 var_nodearraylist1
= var2
;
3231 var_pexprsnode2
= var_nodearraylist1
;
3232 /* <var_pexprsnode2:nullable Object> isa nullable AExprs */
3233 cltype
= type_nullable_parser_nodes__AExprs
.color
;
3234 idtype
= type_nullable_parser_nodes__AExprs
.id
;
3235 if(var_pexprsnode2
== NULL
) {
3238 if(cltype
>= var_pexprsnode2
->type
->table_size
) {
3241 var3
= var_pexprsnode2
->type
->type_table
[cltype
] == idtype
;
3245 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3246 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27426);
3249 var_pannotationsnode3
= var_nodearraylist2
;
3250 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
3251 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
3252 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
3253 if(var_pannotationsnode3
== NULL
) {
3256 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
3259 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
3263 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3264 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27428);
3267 var7
= NEW_parser_nodes__AArrayExpr(&type_parser_nodes__AArrayExpr
);
3268 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AArrayExpr__init_aarrayexpr
]))(var7
, var_pexprsnode2
, var_pannotationsnode3
) /* init_aarrayexpr on <var7:AArrayExpr>*/;
3269 CHECK_NEW_parser_nodes__AArrayExpr(var7
);
3270 var_pexprnode1
= var7
;
3271 var_node_list
= var_pexprnode1
;
3272 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction781> */
3273 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3274 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3277 /* method parser#ReduceAction781#action for (self: Object, Parser) */
3278 void VIRTUAL_parser__ReduceAction781__action(val
* self
, val
* p0
) {
3279 parser__ReduceAction781__action(self
, p0
);
3282 /* method parser#ReduceAction782#action for (self: ReduceAction782, Parser) */
3283 void parser__ReduceAction782__action(val
* self
, val
* p0
) {
3284 val
* var_p
/* var p: Parser */;
3285 val
* var
/* : null */;
3286 val
* var_node_list
/* var node_list: nullable Object */;
3287 val
* var1
/* : nullable Object */;
3288 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3289 val
* var_tkwselfnode2
/* var tkwselfnode2: nullable Object */;
3290 short int var2
/* : Bool */;
3293 val
* var3
/* : ASelfExpr */;
3294 val
* var4
/* : null */;
3295 val
* var_pexprnode1
/* var pexprnode1: nullable ASelfExpr */;
3296 long var5
/* : Int */;
3297 long var6
/* : Int */;
3300 var_node_list
= var
;
3301 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3302 var_nodearraylist1
= var1
;
3303 var_tkwselfnode2
= var_nodearraylist1
;
3304 /* <var_tkwselfnode2:nullable Object> isa nullable TKwself */
3305 cltype
= type_nullable_parser_nodes__TKwself
.color
;
3306 idtype
= type_nullable_parser_nodes__TKwself
.id
;
3307 if(var_tkwselfnode2
== NULL
) {
3310 if(cltype
>= var_tkwselfnode2
->type
->table_size
) {
3313 var2
= var_tkwselfnode2
->type
->type_table
[cltype
] == idtype
;
3317 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3318 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27444);
3321 var3
= NEW_parser_nodes__ASelfExpr(&type_parser_nodes__ASelfExpr
);
3323 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASelfExpr__init_aselfexpr
]))(var3
, var_tkwselfnode2
, var4
) /* init_aselfexpr on <var3:ASelfExpr>*/;
3324 CHECK_NEW_parser_nodes__ASelfExpr(var3
);
3325 var_pexprnode1
= var3
;
3326 var_node_list
= var_pexprnode1
;
3327 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction782> */
3328 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3329 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3332 /* method parser#ReduceAction782#action for (self: Object, Parser) */
3333 void VIRTUAL_parser__ReduceAction782__action(val
* self
, val
* p0
) {
3334 parser__ReduceAction782__action(self
, p0
);
3337 /* method parser#ReduceAction783#action for (self: ReduceAction783, Parser) */
3338 void parser__ReduceAction783__action(val
* self
, val
* p0
) {
3339 val
* var_p
/* var p: Parser */;
3340 val
* var
/* : null */;
3341 val
* var_node_list
/* var node_list: nullable Object */;
3342 val
* var1
/* : nullable Object */;
3343 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3344 val
* var2
/* : nullable Object */;
3345 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3346 val
* var_tkwselfnode2
/* var tkwselfnode2: nullable Object */;
3347 short int var3
/* : Bool */;
3350 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
3351 short int var4
/* : Bool */;
3354 val
* var7
/* : ASelfExpr */;
3355 val
* var_pexprnode1
/* var pexprnode1: nullable ASelfExpr */;
3356 long var8
/* : Int */;
3357 long var9
/* : Int */;
3360 var_node_list
= var
;
3361 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3362 var_nodearraylist2
= var1
;
3363 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3364 var_nodearraylist1
= var2
;
3365 var_tkwselfnode2
= var_nodearraylist1
;
3366 /* <var_tkwselfnode2:nullable Object> isa nullable TKwself */
3367 cltype
= type_nullable_parser_nodes__TKwself
.color
;
3368 idtype
= type_nullable_parser_nodes__TKwself
.id
;
3369 if(var_tkwselfnode2
== NULL
) {
3372 if(cltype
>= var_tkwselfnode2
->type
->table_size
) {
3375 var3
= var_tkwselfnode2
->type
->type_table
[cltype
] == idtype
;
3379 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3380 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27461);
3383 var_pannotationsnode3
= var_nodearraylist2
;
3384 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
3385 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
3386 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
3387 if(var_pannotationsnode3
== NULL
) {
3390 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
3393 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
3397 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3398 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27463);
3401 var7
= NEW_parser_nodes__ASelfExpr(&type_parser_nodes__ASelfExpr
);
3402 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ASelfExpr__init_aselfexpr
]))(var7
, var_tkwselfnode2
, var_pannotationsnode3
) /* init_aselfexpr on <var7:ASelfExpr>*/;
3403 CHECK_NEW_parser_nodes__ASelfExpr(var7
);
3404 var_pexprnode1
= var7
;
3405 var_node_list
= var_pexprnode1
;
3406 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction783> */
3407 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3408 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3411 /* method parser#ReduceAction783#action for (self: Object, Parser) */
3412 void VIRTUAL_parser__ReduceAction783__action(val
* self
, val
* p0
) {
3413 parser__ReduceAction783__action(self
, p0
);
3416 /* method parser#ReduceAction784#action for (self: ReduceAction784, Parser) */
3417 void parser__ReduceAction784__action(val
* self
, val
* p0
) {
3418 val
* var_p
/* var p: Parser */;
3419 val
* var
/* : null */;
3420 val
* var_node_list
/* var node_list: nullable Object */;
3421 val
* var1
/* : nullable Object */;
3422 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3423 val
* var_tkwtruenode2
/* var tkwtruenode2: nullable Object */;
3424 short int var2
/* : Bool */;
3427 val
* var3
/* : ATrueExpr */;
3428 val
* var4
/* : null */;
3429 val
* var_pexprnode1
/* var pexprnode1: nullable ATrueExpr */;
3430 long var5
/* : Int */;
3431 long var6
/* : Int */;
3434 var_node_list
= var
;
3435 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3436 var_nodearraylist1
= var1
;
3437 var_tkwtruenode2
= var_nodearraylist1
;
3438 /* <var_tkwtruenode2:nullable Object> isa nullable TKwtrue */
3439 cltype
= type_nullable_parser_nodes__TKwtrue
.color
;
3440 idtype
= type_nullable_parser_nodes__TKwtrue
.id
;
3441 if(var_tkwtruenode2
== NULL
) {
3444 if(cltype
>= var_tkwtruenode2
->type
->table_size
) {
3447 var2
= var_tkwtruenode2
->type
->type_table
[cltype
] == idtype
;
3451 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3452 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27479);
3455 var3
= NEW_parser_nodes__ATrueExpr(&type_parser_nodes__ATrueExpr
);
3457 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ATrueExpr__init_atrueexpr
]))(var3
, var_tkwtruenode2
, var4
) /* init_atrueexpr on <var3:ATrueExpr>*/;
3458 CHECK_NEW_parser_nodes__ATrueExpr(var3
);
3459 var_pexprnode1
= var3
;
3460 var_node_list
= var_pexprnode1
;
3461 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction784> */
3462 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3463 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3466 /* method parser#ReduceAction784#action for (self: Object, Parser) */
3467 void VIRTUAL_parser__ReduceAction784__action(val
* self
, val
* p0
) {
3468 parser__ReduceAction784__action(self
, p0
);
3471 /* method parser#ReduceAction785#action for (self: ReduceAction785, Parser) */
3472 void parser__ReduceAction785__action(val
* self
, val
* p0
) {
3473 val
* var_p
/* var p: Parser */;
3474 val
* var
/* : null */;
3475 val
* var_node_list
/* var node_list: nullable Object */;
3476 val
* var1
/* : nullable Object */;
3477 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3478 val
* var2
/* : nullable Object */;
3479 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3480 val
* var_tkwtruenode2
/* var tkwtruenode2: nullable Object */;
3481 short int var3
/* : Bool */;
3484 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
3485 short int var4
/* : Bool */;
3488 val
* var7
/* : ATrueExpr */;
3489 val
* var_pexprnode1
/* var pexprnode1: nullable ATrueExpr */;
3490 long var8
/* : Int */;
3491 long var9
/* : Int */;
3494 var_node_list
= var
;
3495 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3496 var_nodearraylist2
= var1
;
3497 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3498 var_nodearraylist1
= var2
;
3499 var_tkwtruenode2
= var_nodearraylist1
;
3500 /* <var_tkwtruenode2:nullable Object> isa nullable TKwtrue */
3501 cltype
= type_nullable_parser_nodes__TKwtrue
.color
;
3502 idtype
= type_nullable_parser_nodes__TKwtrue
.id
;
3503 if(var_tkwtruenode2
== NULL
) {
3506 if(cltype
>= var_tkwtruenode2
->type
->table_size
) {
3509 var3
= var_tkwtruenode2
->type
->type_table
[cltype
] == idtype
;
3513 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3514 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27496);
3517 var_pannotationsnode3
= var_nodearraylist2
;
3518 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
3519 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
3520 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
3521 if(var_pannotationsnode3
== NULL
) {
3524 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
3527 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
3531 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3532 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27498);
3535 var7
= NEW_parser_nodes__ATrueExpr(&type_parser_nodes__ATrueExpr
);
3536 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ATrueExpr__init_atrueexpr
]))(var7
, var_tkwtruenode2
, var_pannotationsnode3
) /* init_atrueexpr on <var7:ATrueExpr>*/;
3537 CHECK_NEW_parser_nodes__ATrueExpr(var7
);
3538 var_pexprnode1
= var7
;
3539 var_node_list
= var_pexprnode1
;
3540 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction785> */
3541 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3542 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3545 /* method parser#ReduceAction785#action for (self: Object, Parser) */
3546 void VIRTUAL_parser__ReduceAction785__action(val
* self
, val
* p0
) {
3547 parser__ReduceAction785__action(self
, p0
);
3550 /* method parser#ReduceAction786#action for (self: ReduceAction786, Parser) */
3551 void parser__ReduceAction786__action(val
* self
, val
* p0
) {
3552 val
* var_p
/* var p: Parser */;
3553 val
* var
/* : null */;
3554 val
* var_node_list
/* var node_list: nullable Object */;
3555 val
* var1
/* : nullable Object */;
3556 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3557 val
* var_tkwfalsenode2
/* var tkwfalsenode2: nullable Object */;
3558 short int var2
/* : Bool */;
3561 val
* var3
/* : AFalseExpr */;
3562 val
* var4
/* : null */;
3563 val
* var_pexprnode1
/* var pexprnode1: nullable AFalseExpr */;
3564 long var5
/* : Int */;
3565 long var6
/* : Int */;
3568 var_node_list
= var
;
3569 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3570 var_nodearraylist1
= var1
;
3571 var_tkwfalsenode2
= var_nodearraylist1
;
3572 /* <var_tkwfalsenode2:nullable Object> isa nullable TKwfalse */
3573 cltype
= type_nullable_parser_nodes__TKwfalse
.color
;
3574 idtype
= type_nullable_parser_nodes__TKwfalse
.id
;
3575 if(var_tkwfalsenode2
== NULL
) {
3578 if(cltype
>= var_tkwfalsenode2
->type
->table_size
) {
3581 var2
= var_tkwfalsenode2
->type
->type_table
[cltype
] == idtype
;
3585 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3586 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27514);
3589 var3
= NEW_parser_nodes__AFalseExpr(&type_parser_nodes__AFalseExpr
);
3591 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AFalseExpr__init_afalseexpr
]))(var3
, var_tkwfalsenode2
, var4
) /* init_afalseexpr on <var3:AFalseExpr>*/;
3592 CHECK_NEW_parser_nodes__AFalseExpr(var3
);
3593 var_pexprnode1
= var3
;
3594 var_node_list
= var_pexprnode1
;
3595 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction786> */
3596 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3597 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3600 /* method parser#ReduceAction786#action for (self: Object, Parser) */
3601 void VIRTUAL_parser__ReduceAction786__action(val
* self
, val
* p0
) {
3602 parser__ReduceAction786__action(self
, p0
);
3605 /* method parser#ReduceAction787#action for (self: ReduceAction787, Parser) */
3606 void parser__ReduceAction787__action(val
* self
, val
* p0
) {
3607 val
* var_p
/* var p: Parser */;
3608 val
* var
/* : null */;
3609 val
* var_node_list
/* var node_list: nullable Object */;
3610 val
* var1
/* : nullable Object */;
3611 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3612 val
* var2
/* : nullable Object */;
3613 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3614 val
* var_tkwfalsenode2
/* var tkwfalsenode2: nullable Object */;
3615 short int var3
/* : Bool */;
3618 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
3619 short int var4
/* : Bool */;
3622 val
* var7
/* : AFalseExpr */;
3623 val
* var_pexprnode1
/* var pexprnode1: nullable AFalseExpr */;
3624 long var8
/* : Int */;
3625 long var9
/* : Int */;
3628 var_node_list
= var
;
3629 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3630 var_nodearraylist2
= var1
;
3631 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3632 var_nodearraylist1
= var2
;
3633 var_tkwfalsenode2
= var_nodearraylist1
;
3634 /* <var_tkwfalsenode2:nullable Object> isa nullable TKwfalse */
3635 cltype
= type_nullable_parser_nodes__TKwfalse
.color
;
3636 idtype
= type_nullable_parser_nodes__TKwfalse
.id
;
3637 if(var_tkwfalsenode2
== NULL
) {
3640 if(cltype
>= var_tkwfalsenode2
->type
->table_size
) {
3643 var3
= var_tkwfalsenode2
->type
->type_table
[cltype
] == idtype
;
3647 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3648 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27531);
3651 var_pannotationsnode3
= var_nodearraylist2
;
3652 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
3653 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
3654 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
3655 if(var_pannotationsnode3
== NULL
) {
3658 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
3661 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
3665 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3666 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27533);
3669 var7
= NEW_parser_nodes__AFalseExpr(&type_parser_nodes__AFalseExpr
);
3670 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AFalseExpr__init_afalseexpr
]))(var7
, var_tkwfalsenode2
, var_pannotationsnode3
) /* init_afalseexpr on <var7:AFalseExpr>*/;
3671 CHECK_NEW_parser_nodes__AFalseExpr(var7
);
3672 var_pexprnode1
= var7
;
3673 var_node_list
= var_pexprnode1
;
3674 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction787> */
3675 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3676 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3679 /* method parser#ReduceAction787#action for (self: Object, Parser) */
3680 void VIRTUAL_parser__ReduceAction787__action(val
* self
, val
* p0
) {
3681 parser__ReduceAction787__action(self
, p0
);
3684 /* method parser#ReduceAction788#action for (self: ReduceAction788, Parser) */
3685 void parser__ReduceAction788__action(val
* self
, val
* p0
) {
3686 val
* var_p
/* var p: Parser */;
3687 val
* var
/* : null */;
3688 val
* var_node_list
/* var node_list: nullable Object */;
3689 val
* var1
/* : nullable Object */;
3690 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3691 val
* var_tkwnullnode2
/* var tkwnullnode2: nullable Object */;
3692 short int var2
/* : Bool */;
3695 val
* var3
/* : ANullExpr */;
3696 val
* var4
/* : null */;
3697 val
* var_pexprnode1
/* var pexprnode1: nullable ANullExpr */;
3698 long var5
/* : Int */;
3699 long var6
/* : Int */;
3702 var_node_list
= var
;
3703 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3704 var_nodearraylist1
= var1
;
3705 var_tkwnullnode2
= var_nodearraylist1
;
3706 /* <var_tkwnullnode2:nullable Object> isa nullable TKwnull */
3707 cltype
= type_nullable_parser_nodes__TKwnull
.color
;
3708 idtype
= type_nullable_parser_nodes__TKwnull
.id
;
3709 if(var_tkwnullnode2
== NULL
) {
3712 if(cltype
>= var_tkwnullnode2
->type
->table_size
) {
3715 var2
= var_tkwnullnode2
->type
->type_table
[cltype
] == idtype
;
3719 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3720 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27549);
3723 var3
= NEW_parser_nodes__ANullExpr(&type_parser_nodes__ANullExpr
);
3725 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ANullExpr__init_anullexpr
]))(var3
, var_tkwnullnode2
, var4
) /* init_anullexpr on <var3:ANullExpr>*/;
3726 CHECK_NEW_parser_nodes__ANullExpr(var3
);
3727 var_pexprnode1
= var3
;
3728 var_node_list
= var_pexprnode1
;
3729 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction788> */
3730 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3731 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3734 /* method parser#ReduceAction788#action for (self: Object, Parser) */
3735 void VIRTUAL_parser__ReduceAction788__action(val
* self
, val
* p0
) {
3736 parser__ReduceAction788__action(self
, p0
);
3739 /* method parser#ReduceAction789#action for (self: ReduceAction789, Parser) */
3740 void parser__ReduceAction789__action(val
* self
, val
* p0
) {
3741 val
* var_p
/* var p: Parser */;
3742 val
* var
/* : null */;
3743 val
* var_node_list
/* var node_list: nullable Object */;
3744 val
* var1
/* : nullable Object */;
3745 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3746 val
* var2
/* : nullable Object */;
3747 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3748 val
* var_tkwnullnode2
/* var tkwnullnode2: nullable Object */;
3749 short int var3
/* : Bool */;
3752 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
3753 short int var4
/* : Bool */;
3756 val
* var7
/* : ANullExpr */;
3757 val
* var_pexprnode1
/* var pexprnode1: nullable ANullExpr */;
3758 long var8
/* : Int */;
3759 long var9
/* : Int */;
3762 var_node_list
= var
;
3763 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3764 var_nodearraylist2
= var1
;
3765 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3766 var_nodearraylist1
= var2
;
3767 var_tkwnullnode2
= var_nodearraylist1
;
3768 /* <var_tkwnullnode2:nullable Object> isa nullable TKwnull */
3769 cltype
= type_nullable_parser_nodes__TKwnull
.color
;
3770 idtype
= type_nullable_parser_nodes__TKwnull
.id
;
3771 if(var_tkwnullnode2
== NULL
) {
3774 if(cltype
>= var_tkwnullnode2
->type
->table_size
) {
3777 var3
= var_tkwnullnode2
->type
->type_table
[cltype
] == idtype
;
3781 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3782 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27566);
3785 var_pannotationsnode3
= var_nodearraylist2
;
3786 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
3787 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
3788 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
3789 if(var_pannotationsnode3
== NULL
) {
3792 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
3795 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
3799 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3800 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27568);
3803 var7
= NEW_parser_nodes__ANullExpr(&type_parser_nodes__ANullExpr
);
3804 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ANullExpr__init_anullexpr
]))(var7
, var_tkwnullnode2
, var_pannotationsnode3
) /* init_anullexpr on <var7:ANullExpr>*/;
3805 CHECK_NEW_parser_nodes__ANullExpr(var7
);
3806 var_pexprnode1
= var7
;
3807 var_node_list
= var_pexprnode1
;
3808 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction789> */
3809 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3810 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3813 /* method parser#ReduceAction789#action for (self: Object, Parser) */
3814 void VIRTUAL_parser__ReduceAction789__action(val
* self
, val
* p0
) {
3815 parser__ReduceAction789__action(self
, p0
);
3818 /* method parser#ReduceAction790#action for (self: ReduceAction790, Parser) */
3819 void parser__ReduceAction790__action(val
* self
, val
* p0
) {
3820 val
* var_p
/* var p: Parser */;
3821 val
* var
/* : null */;
3822 val
* var_node_list
/* var node_list: nullable Object */;
3823 val
* var1
/* : nullable Object */;
3824 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3825 val
* var_tnumbernode2
/* var tnumbernode2: nullable Object */;
3826 short int var2
/* : Bool */;
3829 val
* var3
/* : AIntExpr */;
3830 val
* var4
/* : null */;
3831 val
* var_pexprnode1
/* var pexprnode1: nullable AIntExpr */;
3832 long var5
/* : Int */;
3833 long var6
/* : Int */;
3836 var_node_list
= var
;
3837 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3838 var_nodearraylist1
= var1
;
3839 var_tnumbernode2
= var_nodearraylist1
;
3840 /* <var_tnumbernode2:nullable Object> isa nullable TNumber */
3841 cltype
= type_nullable_parser_nodes__TNumber
.color
;
3842 idtype
= type_nullable_parser_nodes__TNumber
.id
;
3843 if(var_tnumbernode2
== NULL
) {
3846 if(cltype
>= var_tnumbernode2
->type
->table_size
) {
3849 var2
= var_tnumbernode2
->type
->type_table
[cltype
] == idtype
;
3853 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3854 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27584);
3857 var3
= NEW_parser_nodes__AIntExpr(&type_parser_nodes__AIntExpr
);
3859 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AIntExpr__init_aintexpr
]))(var3
, var_tnumbernode2
, var4
) /* init_aintexpr on <var3:AIntExpr>*/;
3860 CHECK_NEW_parser_nodes__AIntExpr(var3
);
3861 var_pexprnode1
= var3
;
3862 var_node_list
= var_pexprnode1
;
3863 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction790> */
3864 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3865 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3868 /* method parser#ReduceAction790#action for (self: Object, Parser) */
3869 void VIRTUAL_parser__ReduceAction790__action(val
* self
, val
* p0
) {
3870 parser__ReduceAction790__action(self
, p0
);
3873 /* method parser#ReduceAction791#action for (self: ReduceAction791, Parser) */
3874 void parser__ReduceAction791__action(val
* self
, val
* p0
) {
3875 val
* var_p
/* var p: Parser */;
3876 val
* var
/* : null */;
3877 val
* var_node_list
/* var node_list: nullable Object */;
3878 val
* var1
/* : nullable Object */;
3879 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3880 val
* var2
/* : nullable Object */;
3881 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3882 val
* var_tnumbernode2
/* var tnumbernode2: nullable Object */;
3883 short int var3
/* : Bool */;
3886 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
3887 short int var4
/* : Bool */;
3890 val
* var7
/* : AIntExpr */;
3891 val
* var_pexprnode1
/* var pexprnode1: nullable AIntExpr */;
3892 long var8
/* : Int */;
3893 long var9
/* : Int */;
3896 var_node_list
= var
;
3897 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3898 var_nodearraylist2
= var1
;
3899 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3900 var_nodearraylist1
= var2
;
3901 var_tnumbernode2
= var_nodearraylist1
;
3902 /* <var_tnumbernode2:nullable Object> isa nullable TNumber */
3903 cltype
= type_nullable_parser_nodes__TNumber
.color
;
3904 idtype
= type_nullable_parser_nodes__TNumber
.id
;
3905 if(var_tnumbernode2
== NULL
) {
3908 if(cltype
>= var_tnumbernode2
->type
->table_size
) {
3911 var3
= var_tnumbernode2
->type
->type_table
[cltype
] == idtype
;
3915 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3916 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27601);
3919 var_pannotationsnode3
= var_nodearraylist2
;
3920 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
3921 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
3922 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
3923 if(var_pannotationsnode3
== NULL
) {
3926 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
3929 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
3933 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3934 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27603);
3937 var7
= NEW_parser_nodes__AIntExpr(&type_parser_nodes__AIntExpr
);
3938 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AIntExpr__init_aintexpr
]))(var7
, var_tnumbernode2
, var_pannotationsnode3
) /* init_aintexpr on <var7:AIntExpr>*/;
3939 CHECK_NEW_parser_nodes__AIntExpr(var7
);
3940 var_pexprnode1
= var7
;
3941 var_node_list
= var_pexprnode1
;
3942 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction791> */
3943 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3944 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3947 /* method parser#ReduceAction791#action for (self: Object, Parser) */
3948 void VIRTUAL_parser__ReduceAction791__action(val
* self
, val
* p0
) {
3949 parser__ReduceAction791__action(self
, p0
);
3952 /* method parser#ReduceAction792#action for (self: ReduceAction792, Parser) */
3953 void parser__ReduceAction792__action(val
* self
, val
* p0
) {
3954 val
* var_p
/* var p: Parser */;
3955 val
* var
/* : null */;
3956 val
* var_node_list
/* var node_list: nullable Object */;
3957 val
* var1
/* : nullable Object */;
3958 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3959 val
* var_tfloatnode2
/* var tfloatnode2: nullable Object */;
3960 short int var2
/* : Bool */;
3963 val
* var3
/* : AFloatExpr */;
3964 val
* var4
/* : null */;
3965 val
* var_pexprnode1
/* var pexprnode1: nullable AFloatExpr */;
3966 long var5
/* : Int */;
3967 long var6
/* : Int */;
3970 var_node_list
= var
;
3971 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3972 var_nodearraylist1
= var1
;
3973 var_tfloatnode2
= var_nodearraylist1
;
3974 /* <var_tfloatnode2:nullable Object> isa nullable TFloat */
3975 cltype
= type_nullable_parser_nodes__TFloat
.color
;
3976 idtype
= type_nullable_parser_nodes__TFloat
.id
;
3977 if(var_tfloatnode2
== NULL
) {
3980 if(cltype
>= var_tfloatnode2
->type
->table_size
) {
3983 var2
= var_tfloatnode2
->type
->type_table
[cltype
] == idtype
;
3987 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3988 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27619);
3991 var3
= NEW_parser_nodes__AFloatExpr(&type_parser_nodes__AFloatExpr
);
3993 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AFloatExpr__init_afloatexpr
]))(var3
, var_tfloatnode2
, var4
) /* init_afloatexpr on <var3:AFloatExpr>*/;
3994 CHECK_NEW_parser_nodes__AFloatExpr(var3
);
3995 var_pexprnode1
= var3
;
3996 var_node_list
= var_pexprnode1
;
3997 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction792> */
3998 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3999 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
4002 /* method parser#ReduceAction792#action for (self: Object, Parser) */
4003 void VIRTUAL_parser__ReduceAction792__action(val
* self
, val
* p0
) {
4004 parser__ReduceAction792__action(self
, p0
);
4007 /* method parser#ReduceAction793#action for (self: ReduceAction793, Parser) */
4008 void parser__ReduceAction793__action(val
* self
, val
* p0
) {
4009 val
* var_p
/* var p: Parser */;
4010 val
* var
/* : null */;
4011 val
* var_node_list
/* var node_list: nullable Object */;
4012 val
* var1
/* : nullable Object */;
4013 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4014 val
* var2
/* : nullable Object */;
4015 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4016 val
* var_tfloatnode2
/* var tfloatnode2: nullable Object */;
4017 short int var3
/* : Bool */;
4020 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
4021 short int var4
/* : Bool */;
4024 val
* var7
/* : AFloatExpr */;
4025 val
* var_pexprnode1
/* var pexprnode1: nullable AFloatExpr */;
4026 long var8
/* : Int */;
4027 long var9
/* : Int */;
4030 var_node_list
= var
;
4031 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4032 var_nodearraylist2
= var1
;
4033 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4034 var_nodearraylist1
= var2
;
4035 var_tfloatnode2
= var_nodearraylist1
;
4036 /* <var_tfloatnode2:nullable Object> isa nullable TFloat */
4037 cltype
= type_nullable_parser_nodes__TFloat
.color
;
4038 idtype
= type_nullable_parser_nodes__TFloat
.id
;
4039 if(var_tfloatnode2
== NULL
) {
4042 if(cltype
>= var_tfloatnode2
->type
->table_size
) {
4045 var3
= var_tfloatnode2
->type
->type_table
[cltype
] == idtype
;
4049 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4050 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27636);
4053 var_pannotationsnode3
= var_nodearraylist2
;
4054 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
4055 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
4056 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
4057 if(var_pannotationsnode3
== NULL
) {
4060 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
4063 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
4067 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4068 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27638);
4071 var7
= NEW_parser_nodes__AFloatExpr(&type_parser_nodes__AFloatExpr
);
4072 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AFloatExpr__init_afloatexpr
]))(var7
, var_tfloatnode2
, var_pannotationsnode3
) /* init_afloatexpr on <var7:AFloatExpr>*/;
4073 CHECK_NEW_parser_nodes__AFloatExpr(var7
);
4074 var_pexprnode1
= var7
;
4075 var_node_list
= var_pexprnode1
;
4076 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction793> */
4077 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
4078 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
4081 /* method parser#ReduceAction793#action for (self: Object, Parser) */
4082 void VIRTUAL_parser__ReduceAction793__action(val
* self
, val
* p0
) {
4083 parser__ReduceAction793__action(self
, p0
);
4086 /* method parser#ReduceAction794#action for (self: ReduceAction794, Parser) */
4087 void parser__ReduceAction794__action(val
* self
, val
* p0
) {
4088 val
* var_p
/* var p: Parser */;
4089 val
* var
/* : null */;
4090 val
* var_node_list
/* var node_list: nullable Object */;
4091 val
* var1
/* : nullable Object */;
4092 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4093 val
* var_tcharnode2
/* var tcharnode2: nullable Object */;
4094 short int var2
/* : Bool */;
4097 val
* var3
/* : ACharExpr */;
4098 val
* var4
/* : null */;
4099 val
* var_pexprnode1
/* var pexprnode1: nullable ACharExpr */;
4100 long var5
/* : Int */;
4101 long var6
/* : Int */;
4104 var_node_list
= var
;
4105 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4106 var_nodearraylist1
= var1
;
4107 var_tcharnode2
= var_nodearraylist1
;
4108 /* <var_tcharnode2:nullable Object> isa nullable TChar */
4109 cltype
= type_nullable_parser_nodes__TChar
.color
;
4110 idtype
= type_nullable_parser_nodes__TChar
.id
;
4111 if(var_tcharnode2
== NULL
) {
4114 if(cltype
>= var_tcharnode2
->type
->table_size
) {
4117 var2
= var_tcharnode2
->type
->type_table
[cltype
] == idtype
;
4121 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4122 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27654);
4125 var3
= NEW_parser_nodes__ACharExpr(&type_parser_nodes__ACharExpr
);
4127 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ACharExpr__init_acharexpr
]))(var3
, var_tcharnode2
, var4
) /* init_acharexpr on <var3:ACharExpr>*/;
4128 CHECK_NEW_parser_nodes__ACharExpr(var3
);
4129 var_pexprnode1
= var3
;
4130 var_node_list
= var_pexprnode1
;
4131 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction794> */
4132 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
4133 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
4136 /* method parser#ReduceAction794#action for (self: Object, Parser) */
4137 void VIRTUAL_parser__ReduceAction794__action(val
* self
, val
* p0
) {
4138 parser__ReduceAction794__action(self
, p0
);
4141 /* method parser#ReduceAction795#action for (self: ReduceAction795, Parser) */
4142 void parser__ReduceAction795__action(val
* self
, val
* p0
) {
4143 val
* var_p
/* var p: Parser */;
4144 val
* var
/* : null */;
4145 val
* var_node_list
/* var node_list: nullable Object */;
4146 val
* var1
/* : nullable Object */;
4147 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4148 val
* var2
/* : nullable Object */;
4149 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4150 val
* var_tcharnode2
/* var tcharnode2: nullable Object */;
4151 short int var3
/* : Bool */;
4154 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
4155 short int var4
/* : Bool */;
4158 val
* var7
/* : ACharExpr */;
4159 val
* var_pexprnode1
/* var pexprnode1: nullable ACharExpr */;
4160 long var8
/* : Int */;
4161 long var9
/* : Int */;
4164 var_node_list
= var
;
4165 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4166 var_nodearraylist2
= var1
;
4167 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4168 var_nodearraylist1
= var2
;
4169 var_tcharnode2
= var_nodearraylist1
;
4170 /* <var_tcharnode2:nullable Object> isa nullable TChar */
4171 cltype
= type_nullable_parser_nodes__TChar
.color
;
4172 idtype
= type_nullable_parser_nodes__TChar
.id
;
4173 if(var_tcharnode2
== NULL
) {
4176 if(cltype
>= var_tcharnode2
->type
->table_size
) {
4179 var3
= var_tcharnode2
->type
->type_table
[cltype
] == idtype
;
4183 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4184 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27671);
4187 var_pannotationsnode3
= var_nodearraylist2
;
4188 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
4189 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
4190 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
4191 if(var_pannotationsnode3
== NULL
) {
4194 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
4197 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
4201 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4202 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27673);
4205 var7
= NEW_parser_nodes__ACharExpr(&type_parser_nodes__ACharExpr
);
4206 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ACharExpr__init_acharexpr
]))(var7
, var_tcharnode2
, var_pannotationsnode3
) /* init_acharexpr on <var7:ACharExpr>*/;
4207 CHECK_NEW_parser_nodes__ACharExpr(var7
);
4208 var_pexprnode1
= var7
;
4209 var_node_list
= var_pexprnode1
;
4210 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction795> */
4211 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
4212 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
4215 /* method parser#ReduceAction795#action for (self: Object, Parser) */
4216 void VIRTUAL_parser__ReduceAction795__action(val
* self
, val
* p0
) {
4217 parser__ReduceAction795__action(self
, p0
);
4220 /* method parser#ReduceAction796#action for (self: ReduceAction796, Parser) */
4221 void parser__ReduceAction796__action(val
* self
, val
* p0
) {
4222 val
* var_p
/* var p: Parser */;
4223 val
* var
/* : null */;
4224 val
* var_node_list
/* var node_list: nullable Object */;
4225 val
* var1
/* : nullable Object */;
4226 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4227 val
* var_tstringnode2
/* var tstringnode2: nullable Object */;
4228 short int var2
/* : Bool */;
4231 val
* var3
/* : AStringExpr */;
4232 val
* var4
/* : null */;
4233 val
* var_pexprnode1
/* var pexprnode1: nullable AStringExpr */;
4234 long var5
/* : Int */;
4235 long var6
/* : Int */;
4238 var_node_list
= var
;
4239 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4240 var_nodearraylist1
= var1
;
4241 var_tstringnode2
= var_nodearraylist1
;
4242 /* <var_tstringnode2:nullable Object> isa nullable TString */
4243 cltype
= type_nullable_parser_nodes__TString
.color
;
4244 idtype
= type_nullable_parser_nodes__TString
.id
;
4245 if(var_tstringnode2
== NULL
) {
4248 if(cltype
>= var_tstringnode2
->type
->table_size
) {
4251 var2
= var_tstringnode2
->type
->type_table
[cltype
] == idtype
;
4255 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4256 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27689);
4259 var3
= NEW_parser_nodes__AStringExpr(&type_parser_nodes__AStringExpr
);
4261 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStringExpr__init_astringexpr
]))(var3
, var_tstringnode2
, var4
) /* init_astringexpr on <var3:AStringExpr>*/;
4262 CHECK_NEW_parser_nodes__AStringExpr(var3
);
4263 var_pexprnode1
= var3
;
4264 var_node_list
= var_pexprnode1
;
4265 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction796> */
4266 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
4267 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
4270 /* method parser#ReduceAction796#action for (self: Object, Parser) */
4271 void VIRTUAL_parser__ReduceAction796__action(val
* self
, val
* p0
) {
4272 parser__ReduceAction796__action(self
, p0
);
4275 /* method parser#ReduceAction797#action for (self: ReduceAction797, Parser) */
4276 void parser__ReduceAction797__action(val
* self
, val
* p0
) {
4277 val
* var_p
/* var p: Parser */;
4278 val
* var
/* : null */;
4279 val
* var_node_list
/* var node_list: nullable Object */;
4280 val
* var1
/* : nullable Object */;
4281 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4282 val
* var2
/* : nullable Object */;
4283 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4284 val
* var_tstringnode2
/* var tstringnode2: nullable Object */;
4285 short int var3
/* : Bool */;
4288 val
* var_pannotationsnode3
/* var pannotationsnode3: nullable Object */;
4289 short int var4
/* : Bool */;
4292 val
* var7
/* : AStringExpr */;
4293 val
* var_pexprnode1
/* var pexprnode1: nullable AStringExpr */;
4294 long var8
/* : Int */;
4295 long var9
/* : Int */;
4298 var_node_list
= var
;
4299 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4300 var_nodearraylist2
= var1
;
4301 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4302 var_nodearraylist1
= var2
;
4303 var_tstringnode2
= var_nodearraylist1
;
4304 /* <var_tstringnode2:nullable Object> isa nullable TString */
4305 cltype
= type_nullable_parser_nodes__TString
.color
;
4306 idtype
= type_nullable_parser_nodes__TString
.id
;
4307 if(var_tstringnode2
== NULL
) {
4310 if(cltype
>= var_tstringnode2
->type
->table_size
) {
4313 var3
= var_tstringnode2
->type
->type_table
[cltype
] == idtype
;
4317 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4318 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27706);
4321 var_pannotationsnode3
= var_nodearraylist2
;
4322 /* <var_pannotationsnode3:nullable Object> isa nullable AAnnotations */
4323 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
4324 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
4325 if(var_pannotationsnode3
== NULL
) {
4328 if(cltype5
>= var_pannotationsnode3
->type
->table_size
) {
4331 var4
= var_pannotationsnode3
->type
->type_table
[cltype5
] == idtype6
;
4335 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4336 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27708);
4339 var7
= NEW_parser_nodes__AStringExpr(&type_parser_nodes__AStringExpr
);
4340 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AStringExpr__init_astringexpr
]))(var7
, var_tstringnode2
, var_pannotationsnode3
) /* init_astringexpr on <var7:AStringExpr>*/;
4341 CHECK_NEW_parser_nodes__AStringExpr(var7
);
4342 var_pexprnode1
= var7
;
4343 var_node_list
= var_pexprnode1
;
4344 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction797> */
4345 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
4346 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
4349 /* method parser#ReduceAction797#action for (self: Object, Parser) */
4350 void VIRTUAL_parser__ReduceAction797__action(val
* self
, val
* p0
) {
4351 parser__ReduceAction797__action(self
, p0
);
4354 /* method parser#ReduceAction799#action for (self: ReduceAction799, Parser) */
4355 void parser__ReduceAction799__action(val
* self
, val
* p0
) {
4356 val
* var_p
/* var p: Parser */;
4357 val
* var
/* : null */;
4358 val
* var_node_list
/* var node_list: nullable Object */;
4359 val
* var1
/* : nullable Object */;
4360 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4361 val
* var2
/* : nullable Object */;
4362 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4363 val
* var3
/* : nullable Object */;
4364 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4365 val
* var4
/* : nullable Object */;
4366 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4367 val
* var5
/* : nullable Object */;
4368 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4369 val
* var_toparnode2
/* var toparnode2: nullable Object */;
4370 short int var6
/* : Bool */;
4373 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4374 short int var7
/* : Bool */;
4377 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
4378 short int var10
/* : Bool */;
4381 val
* var13
/* : AParExpr */;
4382 val
* var14
/* : null */;
4383 val
* var_pexprnode1
/* var pexprnode1: nullable AParExpr */;
4384 long var15
/* : Int */;
4385 long var16
/* : Int */;
4388 var_node_list
= var
;
4389 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4390 var_nodearraylist5
= var1
;
4391 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4392 var_nodearraylist4
= var2
;
4393 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4394 var_nodearraylist3
= var3
;
4395 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4396 var_nodearraylist2
= var4
;
4397 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4398 var_nodearraylist1
= var5
;
4399 var_toparnode2
= var_nodearraylist1
;
4400 /* <var_toparnode2:nullable Object> isa nullable TOpar */
4401 cltype
= type_nullable_parser_nodes__TOpar
.color
;
4402 idtype
= type_nullable_parser_nodes__TOpar
.id
;
4403 if(var_toparnode2
== NULL
) {
4406 if(cltype
>= var_toparnode2
->type
->table_size
) {
4409 var6
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
4413 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4414 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27728);
4417 var_pexprnode3
= var_nodearraylist3
;
4418 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4419 cltype8
= type_nullable_parser_nodes__AExpr
.color
;
4420 idtype9
= type_nullable_parser_nodes__AExpr
.id
;
4421 if(var_pexprnode3
== NULL
) {
4424 if(cltype8
>= var_pexprnode3
->type
->table_size
) {
4427 var7
= var_pexprnode3
->type
->type_table
[cltype8
] == idtype9
;
4431 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4432 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27730);
4435 var_tcparnode4
= var_nodearraylist5
;
4436 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
4437 cltype11
= type_nullable_parser_nodes__TCpar
.color
;
4438 idtype12
= type_nullable_parser_nodes__TCpar
.id
;
4439 if(var_tcparnode4
== NULL
) {
4442 if(cltype11
>= var_tcparnode4
->type
->table_size
) {
4445 var10
= var_tcparnode4
->type
->type_table
[cltype11
] == idtype12
;
4449 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4450 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27732);
4453 var13
= NEW_parser_nodes__AParExpr(&type_parser_nodes__AParExpr
);
4455 ((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>*/;
4456 CHECK_NEW_parser_nodes__AParExpr(var13
);
4457 var_pexprnode1
= var13
;
4458 var_node_list
= var_pexprnode1
;
4459 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction799> */
4460 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
4461 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
4464 /* method parser#ReduceAction799#action for (self: Object, Parser) */
4465 void VIRTUAL_parser__ReduceAction799__action(val
* self
, val
* p0
) {
4466 parser__ReduceAction799__action(self
, p0
);
4469 /* method parser#ReduceAction800#action for (self: ReduceAction800, Parser) */
4470 void parser__ReduceAction800__action(val
* self
, val
* p0
) {
4471 val
* var_p
/* var p: Parser */;
4472 val
* var
/* : null */;
4473 val
* var_node_list
/* var node_list: nullable Object */;
4474 val
* var1
/* : nullable Object */;
4475 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4476 val
* var2
/* : nullable Object */;
4477 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4478 val
* var3
/* : nullable Object */;
4479 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4480 val
* var4
/* : nullable Object */;
4481 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4482 val
* var5
/* : nullable Object */;
4483 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4484 val
* var6
/* : nullable Object */;
4485 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4486 val
* var_toparnode2
/* var toparnode2: nullable Object */;
4487 short int var7
/* : Bool */;
4490 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4491 short int var8
/* : Bool */;
4494 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
4495 short int var11
/* : Bool */;
4498 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
4499 short int var14
/* : Bool */;
4502 val
* var17
/* : AParExpr */;
4503 val
* var_pexprnode1
/* var pexprnode1: nullable AParExpr */;
4504 long var18
/* : Int */;
4505 long var19
/* : Int */;
4508 var_node_list
= var
;
4509 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4510 var_nodearraylist6
= var1
;
4511 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4512 var_nodearraylist5
= var2
;
4513 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4514 var_nodearraylist4
= var3
;
4515 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4516 var_nodearraylist3
= var4
;
4517 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4518 var_nodearraylist2
= var5
;
4519 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4520 var_nodearraylist1
= var6
;
4521 var_toparnode2
= var_nodearraylist1
;
4522 /* <var_toparnode2:nullable Object> isa nullable TOpar */
4523 cltype
= type_nullable_parser_nodes__TOpar
.color
;
4524 idtype
= type_nullable_parser_nodes__TOpar
.id
;
4525 if(var_toparnode2
== NULL
) {
4528 if(cltype
>= var_toparnode2
->type
->table_size
) {
4531 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
4535 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4536 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27755);
4539 var_pexprnode3
= var_nodearraylist3
;
4540 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4541 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
4542 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
4543 if(var_pexprnode3
== NULL
) {
4546 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
4549 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
4553 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4554 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27757);
4557 var_tcparnode4
= var_nodearraylist5
;
4558 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
4559 cltype12
= type_nullable_parser_nodes__TCpar
.color
;
4560 idtype13
= type_nullable_parser_nodes__TCpar
.id
;
4561 if(var_tcparnode4
== NULL
) {
4564 if(cltype12
>= var_tcparnode4
->type
->table_size
) {
4567 var11
= var_tcparnode4
->type
->type_table
[cltype12
] == idtype13
;
4571 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4572 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27759);
4575 var_pannotationsnode5
= var_nodearraylist6
;
4576 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
4577 cltype15
= type_nullable_parser_nodes__AAnnotations
.color
;
4578 idtype16
= type_nullable_parser_nodes__AAnnotations
.id
;
4579 if(var_pannotationsnode5
== NULL
) {
4582 if(cltype15
>= var_pannotationsnode5
->type
->table_size
) {
4585 var14
= var_pannotationsnode5
->type
->type_table
[cltype15
] == idtype16
;
4589 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4590 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27761);
4593 var17
= NEW_parser_nodes__AParExpr(&type_parser_nodes__AParExpr
);
4594 ((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>*/;
4595 CHECK_NEW_parser_nodes__AParExpr(var17
);
4596 var_pexprnode1
= var17
;
4597 var_node_list
= var_pexprnode1
;
4598 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction800> */
4599 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
4600 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
4603 /* method parser#ReduceAction800#action for (self: Object, Parser) */
4604 void VIRTUAL_parser__ReduceAction800__action(val
* self
, val
* p0
) {
4605 parser__ReduceAction800__action(self
, p0
);
4608 /* method parser#ReduceAction801#action for (self: ReduceAction801, Parser) */
4609 void parser__ReduceAction801__action(val
* self
, val
* p0
) {
4610 val
* var_p
/* var p: Parser */;
4611 val
* var
/* : null */;
4612 val
* var_node_list
/* var node_list: nullable Object */;
4613 val
* var1
/* : nullable Object */;
4614 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
4615 val
* var2
/* : nullable Object */;
4616 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
4617 val
* var3
/* : nullable Object */;
4618 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4619 val
* var4
/* : nullable Object */;
4620 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4621 val
* var5
/* : nullable Object */;
4622 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4623 val
* var6
/* : nullable Object */;
4624 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4625 val
* var7
/* : nullable Object */;
4626 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4627 val
* var8
/* : nullable Object */;
4628 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4629 val
* var9
/* : nullable Object */;
4630 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4631 val
* var10
/* : nullable Object */;
4632 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4633 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
4634 short int var11
/* : Bool */;
4637 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
4638 short int var12
/* : Bool */;
4641 val
* var_toparnode4
/* var toparnode4: nullable Object */;
4642 short int var15
/* : Bool */;
4645 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
4646 short int var18
/* : Bool */;
4649 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
4650 short int var21
/* : Bool */;
4653 val
* var24
/* : AAsCastExpr */;
4654 val
* var_pexprnode1
/* var pexprnode1: nullable AAsCastExpr */;
4655 long var25
/* : Int */;
4656 long var26
/* : Int */;
4659 var_node_list
= var
;
4660 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4661 var_nodearraylist10
= var1
;
4662 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4663 var_nodearraylist9
= var2
;
4664 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4665 var_nodearraylist8
= var3
;
4666 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4667 var_nodearraylist7
= var4
;
4668 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4669 var_nodearraylist6
= var5
;
4670 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4671 var_nodearraylist5
= var6
;
4672 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4673 var_nodearraylist4
= var7
;
4674 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4675 var_nodearraylist3
= var8
;
4676 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4677 var_nodearraylist2
= var9
;
4678 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4679 var_nodearraylist1
= var10
;
4680 var_pexprnode2
= var_nodearraylist1
;
4681 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
4682 cltype
= type_nullable_parser_nodes__AExpr
.color
;
4683 idtype
= type_nullable_parser_nodes__AExpr
.id
;
4684 if(var_pexprnode2
== NULL
) {
4687 if(cltype
>= var_pexprnode2
->type
->table_size
) {
4690 var11
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
4694 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4695 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27788);
4698 var_tkwasnode3
= var_nodearraylist4
;
4699 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
4700 cltype13
= type_nullable_parser_nodes__TKwas
.color
;
4701 idtype14
= type_nullable_parser_nodes__TKwas
.id
;
4702 if(var_tkwasnode3
== NULL
) {
4705 if(cltype13
>= var_tkwasnode3
->type
->table_size
) {
4708 var12
= var_tkwasnode3
->type
->type_table
[cltype13
] == idtype14
;
4712 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4713 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27790);
4716 var_toparnode4
= var_nodearraylist6
;
4717 /* <var_toparnode4:nullable Object> isa nullable TOpar */
4718 cltype16
= type_nullable_parser_nodes__TOpar
.color
;
4719 idtype17
= type_nullable_parser_nodes__TOpar
.id
;
4720 if(var_toparnode4
== NULL
) {
4723 if(cltype16
>= var_toparnode4
->type
->table_size
) {
4726 var15
= var_toparnode4
->type
->type_table
[cltype16
] == idtype17
;
4730 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4731 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27792);
4734 var_ptypenode5
= var_nodearraylist8
;
4735 /* <var_ptypenode5:nullable Object> isa nullable AType */
4736 cltype19
= type_nullable_parser_nodes__AType
.color
;
4737 idtype20
= type_nullable_parser_nodes__AType
.id
;
4738 if(var_ptypenode5
== NULL
) {
4741 if(cltype19
>= var_ptypenode5
->type
->table_size
) {
4744 var18
= var_ptypenode5
->type
->type_table
[cltype19
] == idtype20
;
4748 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4749 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27794);
4752 var_tcparnode6
= var_nodearraylist10
;
4753 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
4754 cltype22
= type_nullable_parser_nodes__TCpar
.color
;
4755 idtype23
= type_nullable_parser_nodes__TCpar
.id
;
4756 if(var_tcparnode6
== NULL
) {
4759 if(cltype22
>= var_tcparnode6
->type
->table_size
) {
4762 var21
= var_tcparnode6
->type
->type_table
[cltype22
] == idtype23
;
4766 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4767 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27796);
4770 var24
= NEW_parser_nodes__AAsCastExpr(&type_parser_nodes__AAsCastExpr
);
4771 ((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>*/;
4772 CHECK_NEW_parser_nodes__AAsCastExpr(var24
);
4773 var_pexprnode1
= var24
;
4774 var_node_list
= var_pexprnode1
;
4775 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction801> */
4776 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
4777 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
4780 /* method parser#ReduceAction801#action for (self: Object, Parser) */
4781 void VIRTUAL_parser__ReduceAction801__action(val
* self
, val
* p0
) {
4782 parser__ReduceAction801__action(self
, p0
);
4785 /* method parser#ReduceAction802#action for (self: ReduceAction802, Parser) */
4786 void parser__ReduceAction802__action(val
* self
, val
* p0
) {
4787 val
* var_p
/* var p: Parser */;
4788 val
* var
/* : null */;
4789 val
* var_node_list
/* var node_list: nullable Object */;
4790 val
* var1
/* : nullable Object */;
4791 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
4792 val
* var2
/* : nullable Object */;
4793 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
4794 val
* var3
/* : nullable Object */;
4795 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
4796 val
* var4
/* : nullable Object */;
4797 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
4798 val
* var5
/* : nullable Object */;
4799 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4800 val
* var6
/* : nullable Object */;
4801 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4802 val
* var7
/* : nullable Object */;
4803 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4804 val
* var8
/* : nullable Object */;
4805 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4806 val
* var9
/* : nullable Object */;
4807 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4808 val
* var10
/* : nullable Object */;
4809 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4810 val
* var11
/* : nullable Object */;
4811 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4812 val
* var12
/* : nullable Object */;
4813 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4814 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
4815 short int var13
/* : Bool */;
4818 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
4819 short int var14
/* : Bool */;
4822 val
* var_toparnode4
/* var toparnode4: nullable Object */;
4823 short int var17
/* : Bool */;
4826 val
* var_tkwnotnode5
/* var tkwnotnode5: nullable Object */;
4827 short int var20
/* : Bool */;
4830 val
* var_tkwnullnode6
/* var tkwnullnode6: nullable Object */;
4831 short int var23
/* : Bool */;
4834 val
* var_tcparnode7
/* var tcparnode7: nullable Object */;
4835 short int var26
/* : Bool */;
4838 val
* var29
/* : AAsNotnullExpr */;
4839 val
* var_pexprnode1
/* var pexprnode1: nullable AAsNotnullExpr */;
4840 long var30
/* : Int */;
4841 long var31
/* : Int */;
4844 var_node_list
= var
;
4845 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4846 var_nodearraylist12
= var1
;
4847 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4848 var_nodearraylist11
= var2
;
4849 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4850 var_nodearraylist10
= var3
;
4851 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4852 var_nodearraylist9
= var4
;
4853 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4854 var_nodearraylist8
= var5
;
4855 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4856 var_nodearraylist7
= var6
;
4857 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4858 var_nodearraylist6
= var7
;
4859 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4860 var_nodearraylist5
= var8
;
4861 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4862 var_nodearraylist4
= var9
;
4863 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4864 var_nodearraylist3
= var10
;
4865 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4866 var_nodearraylist2
= var11
;
4867 var12
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4868 var_nodearraylist1
= var12
;
4869 var_pexprnode2
= var_nodearraylist1
;
4870 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
4871 cltype
= type_nullable_parser_nodes__AExpr
.color
;
4872 idtype
= type_nullable_parser_nodes__AExpr
.id
;
4873 if(var_pexprnode2
== NULL
) {
4876 if(cltype
>= var_pexprnode2
->type
->table_size
) {
4879 var13
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
4883 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4884 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27826);
4887 var_tkwasnode3
= var_nodearraylist4
;
4888 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
4889 cltype15
= type_nullable_parser_nodes__TKwas
.color
;
4890 idtype16
= type_nullable_parser_nodes__TKwas
.id
;
4891 if(var_tkwasnode3
== NULL
) {
4894 if(cltype15
>= var_tkwasnode3
->type
->table_size
) {
4897 var14
= var_tkwasnode3
->type
->type_table
[cltype15
] == idtype16
;
4901 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4902 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27828);
4905 var_toparnode4
= var_nodearraylist6
;
4906 /* <var_toparnode4:nullable Object> isa nullable TOpar */
4907 cltype18
= type_nullable_parser_nodes__TOpar
.color
;
4908 idtype19
= type_nullable_parser_nodes__TOpar
.id
;
4909 if(var_toparnode4
== NULL
) {
4912 if(cltype18
>= var_toparnode4
->type
->table_size
) {
4915 var17
= var_toparnode4
->type
->type_table
[cltype18
] == idtype19
;
4919 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4920 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27830);
4923 var_tkwnotnode5
= var_nodearraylist8
;
4924 /* <var_tkwnotnode5:nullable Object> isa nullable TKwnot */
4925 cltype21
= type_nullable_parser_nodes__TKwnot
.color
;
4926 idtype22
= type_nullable_parser_nodes__TKwnot
.id
;
4927 if(var_tkwnotnode5
== NULL
) {
4930 if(cltype21
>= var_tkwnotnode5
->type
->table_size
) {
4933 var20
= var_tkwnotnode5
->type
->type_table
[cltype21
] == idtype22
;
4937 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4938 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27832);
4941 var_tkwnullnode6
= var_nodearraylist10
;
4942 /* <var_tkwnullnode6:nullable Object> isa nullable TKwnull */
4943 cltype24
= type_nullable_parser_nodes__TKwnull
.color
;
4944 idtype25
= type_nullable_parser_nodes__TKwnull
.id
;
4945 if(var_tkwnullnode6
== NULL
) {
4948 if(cltype24
>= var_tkwnullnode6
->type
->table_size
) {
4951 var23
= var_tkwnullnode6
->type
->type_table
[cltype24
] == idtype25
;
4955 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4956 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27834);
4959 var_tcparnode7
= var_nodearraylist12
;
4960 /* <var_tcparnode7:nullable Object> isa nullable TCpar */
4961 cltype27
= type_nullable_parser_nodes__TCpar
.color
;
4962 idtype28
= type_nullable_parser_nodes__TCpar
.id
;
4963 if(var_tcparnode7
== NULL
) {
4966 if(cltype27
>= var_tcparnode7
->type
->table_size
) {
4969 var26
= var_tcparnode7
->type
->type_table
[cltype27
] == idtype28
;
4973 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4974 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27836);
4977 var29
= NEW_parser_nodes__AAsNotnullExpr(&type_parser_nodes__AAsNotnullExpr
);
4978 ((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>*/;
4979 CHECK_NEW_parser_nodes__AAsNotnullExpr(var29
);
4980 var_pexprnode1
= var29
;
4981 var_node_list
= var_pexprnode1
;
4982 var30
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction802> */
4983 var31
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var30
) /* go_to on <var_p:Parser>*/;
4984 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var31
, var_node_list
) /* push on <var_p:Parser>*/;
4987 /* method parser#ReduceAction802#action for (self: Object, Parser) */
4988 void VIRTUAL_parser__ReduceAction802__action(val
* self
, val
* p0
) {
4989 parser__ReduceAction802__action(self
, p0
);
4992 /* method parser#ReduceAction803#action for (self: ReduceAction803, Parser) */
4993 void parser__ReduceAction803__action(val
* self
, val
* p0
) {
4994 val
* var_p
/* var p: Parser */;
4995 val
* var
/* : null */;
4996 val
* var_node_list
/* var node_list: nullable Object */;
4997 val
* var1
/* : nullable Object */;
4998 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4999 val
* var2
/* : nullable Object */;
5000 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5001 val
* var3
/* : Array[Object] */;
5002 val
* var_listnode4
/* var listnode4: Array[Object] */;
5003 val
* var_listnode2
/* var listnode2: nullable Object */;
5004 short int var4
/* : Bool */;
5007 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5008 short int var5
/* : Bool */;
5011 val
* var8
/* : Array[Object] */;
5012 val
* var9
/* : null */;
5013 short int var10
/* : Bool */;
5014 val
* var11
/* : ASuperstringExpr */;
5015 val
* var12
/* : null */;
5016 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
5017 long var13
/* : Int */;
5018 long var14
/* : Int */;
5021 var_node_list
= var
;
5022 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5023 var_nodearraylist2
= var1
;
5024 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5025 var_nodearraylist1
= var2
;
5026 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
5027 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
5028 CHECK_NEW_array__Array(var3
);
5029 var_listnode4
= var3
;
5030 var_listnode2
= var_nodearraylist1
;
5031 /* <var_listnode2:nullable Object> isa Array[Object] */
5032 cltype
= type_array__Arraykernel__Object
.color
;
5033 idtype
= type_array__Arraykernel__Object
.id
;
5034 if(var_listnode2
== NULL
) {
5037 if(cltype
>= var_listnode2
->type
->table_size
) {
5040 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
5044 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5045 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27858);
5048 var_pexprnode3
= var_nodearraylist2
;
5049 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5050 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
5051 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
5052 if(var_pexprnode3
== NULL
) {
5055 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
5058 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
5062 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5063 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27860);
5066 var8
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode2
) /* concat on <self:ReduceAction803>*/;
5067 var_listnode4
= var8
;
5069 if (var_pexprnode3
== NULL
) {
5070 var10
= 0; /* is null */
5072 var10
= 1; /* arg is null and recv is not */
5075 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode3
) /* add on <var_listnode4:Array[Object]>*/;
5078 var11
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
5080 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var11
, var_listnode4
, var12
) /* init_asuperstringexpr on <var11:ASuperstringExpr>*/;
5081 CHECK_NEW_parser_nodes__ASuperstringExpr(var11
);
5082 var_pexprnode1
= var11
;
5083 var_node_list
= var_pexprnode1
;
5084 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction803> */
5085 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
5086 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
5089 /* method parser#ReduceAction803#action for (self: Object, Parser) */
5090 void VIRTUAL_parser__ReduceAction803__action(val
* self
, val
* p0
) {
5091 parser__ReduceAction803__action(self
, p0
);
5094 /* method parser#ReduceAction804#action for (self: ReduceAction804, Parser) */
5095 void parser__ReduceAction804__action(val
* self
, val
* p0
) {
5096 val
* var_p
/* var p: Parser */;
5097 val
* var
/* : null */;
5098 val
* var_node_list
/* var node_list: nullable Object */;
5099 val
* var1
/* : nullable Object */;
5100 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5101 val
* var2
/* : nullable Object */;
5102 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5103 val
* var3
/* : nullable Object */;
5104 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5105 val
* var4
/* : Array[Object] */;
5106 val
* var_listnode5
/* var listnode5: Array[Object] */;
5107 val
* var_listnode2
/* var listnode2: nullable Object */;
5108 short int var5
/* : Bool */;
5111 val
* var_listnode3
/* var listnode3: nullable Object */;
5112 short int var6
/* : Bool */;
5115 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
5116 short int var9
/* : Bool */;
5119 val
* var12
/* : Array[Object] */;
5120 val
* var13
/* : Array[Object] */;
5121 val
* var14
/* : null */;
5122 short int var15
/* : Bool */;
5123 val
* var16
/* : ASuperstringExpr */;
5124 val
* var17
/* : null */;
5125 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
5126 long var18
/* : Int */;
5127 long var19
/* : Int */;
5130 var_node_list
= var
;
5131 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5132 var_nodearraylist3
= var1
;
5133 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5134 var_nodearraylist2
= var2
;
5135 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5136 var_nodearraylist1
= var3
;
5137 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
5138 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
5139 CHECK_NEW_array__Array(var4
);
5140 var_listnode5
= var4
;
5141 var_listnode2
= var_nodearraylist1
;
5142 /* <var_listnode2:nullable Object> isa Array[Object] */
5143 cltype
= type_array__Arraykernel__Object
.color
;
5144 idtype
= type_array__Arraykernel__Object
.id
;
5145 if(var_listnode2
== NULL
) {
5148 if(cltype
>= var_listnode2
->type
->table_size
) {
5151 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
5155 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5156 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27883);
5159 var_listnode3
= var_nodearraylist2
;
5160 /* <var_listnode3:nullable Object> isa Array[Object] */
5161 cltype7
= type_array__Arraykernel__Object
.color
;
5162 idtype8
= type_array__Arraykernel__Object
.id
;
5163 if(var_listnode3
== NULL
) {
5166 if(cltype7
>= var_listnode3
->type
->table_size
) {
5169 var6
= var_listnode3
->type
->type_table
[cltype7
] == idtype8
;
5173 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5174 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27885);
5177 var_pexprnode4
= var_nodearraylist3
;
5178 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
5179 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
5180 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
5181 if(var_pexprnode4
== NULL
) {
5184 if(cltype10
>= var_pexprnode4
->type
->table_size
) {
5187 var9
= var_pexprnode4
->type
->type_table
[cltype10
] == idtype11
;
5191 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5192 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27887);
5195 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode2
) /* concat on <self:ReduceAction804>*/;
5196 var_listnode5
= var12
;
5197 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode3
) /* concat on <self:ReduceAction804>*/;
5198 var_listnode5
= var13
;
5200 if (var_pexprnode4
== NULL
) {
5201 var15
= 0; /* is null */
5203 var15
= 1; /* arg is null and recv is not */
5206 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pexprnode4
) /* add on <var_listnode5:Array[Object]>*/;
5209 var16
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
5211 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var16
, var_listnode5
, var17
) /* init_asuperstringexpr on <var16:ASuperstringExpr>*/;
5212 CHECK_NEW_parser_nodes__ASuperstringExpr(var16
);
5213 var_pexprnode1
= var16
;
5214 var_node_list
= var_pexprnode1
;
5215 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction804> */
5216 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
5217 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
5220 /* method parser#ReduceAction804#action for (self: Object, Parser) */
5221 void VIRTUAL_parser__ReduceAction804__action(val
* self
, val
* p0
) {
5222 parser__ReduceAction804__action(self
, p0
);
5225 /* method parser#ReduceAction805#action for (self: ReduceAction805, Parser) */
5226 void parser__ReduceAction805__action(val
* self
, val
* p0
) {
5227 val
* var_p
/* var p: Parser */;
5228 val
* var
/* : null */;
5229 val
* var_node_list
/* var node_list: nullable Object */;
5230 val
* var1
/* : nullable Object */;
5231 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5232 val
* var2
/* : nullable Object */;
5233 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5234 val
* var3
/* : nullable Object */;
5235 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5236 val
* var4
/* : Array[Object] */;
5237 val
* var_listnode4
/* var listnode4: Array[Object] */;
5238 val
* var_listnode2
/* var listnode2: nullable Object */;
5239 short int var5
/* : Bool */;
5242 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5243 short int var6
/* : Bool */;
5246 val
* var9
/* : Array[Object] */;
5247 val
* var10
/* : null */;
5248 short int var11
/* : Bool */;
5249 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
5250 short int var12
/* : Bool */;
5253 val
* var15
/* : ASuperstringExpr */;
5254 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
5255 long var16
/* : Int */;
5256 long var17
/* : Int */;
5259 var_node_list
= var
;
5260 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5261 var_nodearraylist3
= var1
;
5262 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5263 var_nodearraylist2
= var2
;
5264 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5265 var_nodearraylist1
= var3
;
5266 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
5267 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
5268 CHECK_NEW_array__Array(var4
);
5269 var_listnode4
= var4
;
5270 var_listnode2
= var_nodearraylist1
;
5271 /* <var_listnode2:nullable Object> isa Array[Object] */
5272 cltype
= type_array__Arraykernel__Object
.color
;
5273 idtype
= type_array__Arraykernel__Object
.id
;
5274 if(var_listnode2
== NULL
) {
5277 if(cltype
>= var_listnode2
->type
->table_size
) {
5280 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
5284 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5285 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27911);
5288 var_pexprnode3
= var_nodearraylist2
;
5289 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5290 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
5291 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
5292 if(var_pexprnode3
== NULL
) {
5295 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
5298 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
5302 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5303 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27913);
5306 var9
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode2
) /* concat on <self:ReduceAction805>*/;
5307 var_listnode4
= var9
;
5309 if (var_pexprnode3
== NULL
) {
5310 var11
= 0; /* is null */
5312 var11
= 1; /* arg is null and recv is not */
5315 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode3
) /* add on <var_listnode4:Array[Object]>*/;
5318 var_pannotationsnode5
= var_nodearraylist3
;
5319 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
5320 cltype13
= type_nullable_parser_nodes__AAnnotations
.color
;
5321 idtype14
= type_nullable_parser_nodes__AAnnotations
.id
;
5322 if(var_pannotationsnode5
== NULL
) {
5325 if(cltype13
>= var_pannotationsnode5
->type
->table_size
) {
5328 var12
= var_pannotationsnode5
->type
->type_table
[cltype13
] == idtype14
;
5332 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5333 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27919);
5336 var15
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
5337 ((void (*)(val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var15
, var_listnode4
, var_pannotationsnode5
) /* init_asuperstringexpr on <var15:ASuperstringExpr>*/;
5338 CHECK_NEW_parser_nodes__ASuperstringExpr(var15
);
5339 var_pexprnode1
= var15
;
5340 var_node_list
= var_pexprnode1
;
5341 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction805> */
5342 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
5343 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
5346 /* method parser#ReduceAction805#action for (self: Object, Parser) */
5347 void VIRTUAL_parser__ReduceAction805__action(val
* self
, val
* p0
) {
5348 parser__ReduceAction805__action(self
, p0
);
5351 /* method parser#ReduceAction806#action for (self: ReduceAction806, Parser) */
5352 void parser__ReduceAction806__action(val
* self
, val
* p0
) {
5353 val
* var_p
/* var p: Parser */;
5354 val
* var
/* : null */;
5355 val
* var_node_list
/* var node_list: nullable Object */;
5356 val
* var1
/* : nullable Object */;
5357 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5358 val
* var2
/* : nullable Object */;
5359 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5360 val
* var3
/* : nullable Object */;
5361 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5362 val
* var4
/* : nullable Object */;
5363 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5364 val
* var5
/* : Array[Object] */;
5365 val
* var_listnode5
/* var listnode5: Array[Object] */;
5366 val
* var_listnode2
/* var listnode2: nullable Object */;
5367 short int var6
/* : Bool */;
5370 val
* var_listnode3
/* var listnode3: nullable Object */;
5371 short int var7
/* : Bool */;
5374 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
5375 short int var10
/* : Bool */;
5378 val
* var13
/* : Array[Object] */;
5379 val
* var14
/* : Array[Object] */;
5380 val
* var15
/* : null */;
5381 short int var16
/* : Bool */;
5382 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
5383 short int var17
/* : Bool */;
5386 val
* var20
/* : ASuperstringExpr */;
5387 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperstringExpr */;
5388 long var21
/* : Int */;
5389 long var22
/* : Int */;
5392 var_node_list
= var
;
5393 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5394 var_nodearraylist4
= var1
;
5395 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5396 var_nodearraylist3
= var2
;
5397 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5398 var_nodearraylist2
= var3
;
5399 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5400 var_nodearraylist1
= var4
;
5401 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
5402 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
5403 CHECK_NEW_array__Array(var5
);
5404 var_listnode5
= var5
;
5405 var_listnode2
= var_nodearraylist1
;
5406 /* <var_listnode2:nullable Object> isa Array[Object] */
5407 cltype
= type_array__Arraykernel__Object
.color
;
5408 idtype
= type_array__Arraykernel__Object
.id
;
5409 if(var_listnode2
== NULL
) {
5412 if(cltype
>= var_listnode2
->type
->table_size
) {
5415 var6
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
5419 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5420 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27939);
5423 var_listnode3
= var_nodearraylist2
;
5424 /* <var_listnode3:nullable Object> isa Array[Object] */
5425 cltype8
= type_array__Arraykernel__Object
.color
;
5426 idtype9
= type_array__Arraykernel__Object
.id
;
5427 if(var_listnode3
== NULL
) {
5430 if(cltype8
>= var_listnode3
->type
->table_size
) {
5433 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
5437 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5438 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27941);
5441 var_pexprnode4
= var_nodearraylist3
;
5442 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
5443 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
5444 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
5445 if(var_pexprnode4
== NULL
) {
5448 if(cltype11
>= var_pexprnode4
->type
->table_size
) {
5451 var10
= var_pexprnode4
->type
->type_table
[cltype11
] == idtype12
;
5455 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5456 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27943);
5459 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode2
) /* concat on <self:ReduceAction806>*/;
5460 var_listnode5
= var13
;
5461 var14
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode3
) /* concat on <self:ReduceAction806>*/;
5462 var_listnode5
= var14
;
5464 if (var_pexprnode4
== NULL
) {
5465 var16
= 0; /* is null */
5467 var16
= 1; /* arg is null and recv is not */
5470 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pexprnode4
) /* add on <var_listnode5:Array[Object]>*/;
5473 var_pannotationsnode6
= var_nodearraylist4
;
5474 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
5475 cltype18
= type_nullable_parser_nodes__AAnnotations
.color
;
5476 idtype19
= type_nullable_parser_nodes__AAnnotations
.id
;
5477 if(var_pannotationsnode6
== NULL
) {
5480 if(cltype18
>= var_pannotationsnode6
->type
->table_size
) {
5483 var17
= var_pannotationsnode6
->type
->type_table
[cltype18
] == idtype19
;
5487 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5488 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27950);
5491 var20
= NEW_parser_nodes__ASuperstringExpr(&type_parser_nodes__ASuperstringExpr
);
5492 ((void (*)(val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ASuperstringExpr__init_asuperstringexpr
]))(var20
, var_listnode5
, var_pannotationsnode6
) /* init_asuperstringexpr on <var20:ASuperstringExpr>*/;
5493 CHECK_NEW_parser_nodes__ASuperstringExpr(var20
);
5494 var_pexprnode1
= var20
;
5495 var_node_list
= var_pexprnode1
;
5496 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction806> */
5497 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
5498 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
5501 /* method parser#ReduceAction806#action for (self: Object, Parser) */
5502 void VIRTUAL_parser__ReduceAction806__action(val
* self
, val
* p0
) {
5503 parser__ReduceAction806__action(self
, p0
);
5506 /* method parser#ReduceAction807#action for (self: ReduceAction807, Parser) */
5507 void parser__ReduceAction807__action(val
* self
, val
* p0
) {
5508 val
* var_p
/* var p: Parser */;
5509 val
* var
/* : null */;
5510 val
* var_node_list
/* var node_list: nullable Object */;
5511 val
* var1
/* : nullable Object */;
5512 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5513 val
* var2
/* : nullable Object */;
5514 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5515 val
* var3
/* : nullable Object */;
5516 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5517 val
* var4
/* : nullable Object */;
5518 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5519 val
* var5
/* : Array[Object] */;
5520 val
* var_listnode3
/* var listnode3: Array[Object] */;
5521 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
5522 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
5523 val
* var6
/* : null */;
5524 short int var7
/* : Bool */;
5525 val
* var8
/* : null */;
5526 short int var9
/* : Bool */;
5527 long var10
/* : Int */;
5528 long var11
/* : Int */;
5531 var_node_list
= var
;
5532 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5533 var_nodearraylist4
= var1
;
5534 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5535 var_nodearraylist3
= var2
;
5536 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5537 var_nodearraylist2
= var3
;
5538 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5539 var_nodearraylist1
= var4
;
5540 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
5541 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
5542 CHECK_NEW_array__Array(var5
);
5543 var_listnode3
= var5
;
5544 var_pexprnode1
= var_nodearraylist1
;
5545 var_pexprnode2
= var_nodearraylist3
;
5547 if (var_pexprnode1
== NULL
) {
5548 var7
= 0; /* is null */
5550 var7
= 1; /* arg is null and recv is not */
5553 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode1
) /* add on <var_listnode3:Array[Object]>*/;
5557 if (var_pexprnode2
== NULL
) {
5558 var9
= 0; /* is null */
5560 var9
= 1; /* arg is null and recv is not */
5563 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
5566 var_node_list
= var_listnode3
;
5567 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction807> */
5568 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
5569 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
5572 /* method parser#ReduceAction807#action for (self: Object, Parser) */
5573 void VIRTUAL_parser__ReduceAction807__action(val
* self
, val
* p0
) {
5574 parser__ReduceAction807__action(self
, p0
);
5577 /* method parser#ReduceAction808#action for (self: ReduceAction808, Parser) */
5578 void parser__ReduceAction808__action(val
* self
, val
* p0
) {
5579 val
* var_p
/* var p: Parser */;
5580 val
* var
/* : null */;
5581 val
* var_node_list
/* var node_list: nullable Object */;
5582 val
* var1
/* : nullable Object */;
5583 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5584 val
* var_tstartstringnode2
/* var tstartstringnode2: nullable Object */;
5585 short int var2
/* : Bool */;
5588 val
* var3
/* : AStartStringExpr */;
5589 val
* var_pexprnode1
/* var pexprnode1: nullable AStartStringExpr */;
5590 long var4
/* : Int */;
5591 long var5
/* : Int */;
5594 var_node_list
= var
;
5595 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5596 var_nodearraylist1
= var1
;
5597 var_tstartstringnode2
= var_nodearraylist1
;
5598 /* <var_tstartstringnode2:nullable Object> isa nullable TStartString */
5599 cltype
= type_nullable_parser_nodes__TStartString
.color
;
5600 idtype
= type_nullable_parser_nodes__TStartString
.id
;
5601 if(var_tstartstringnode2
== NULL
) {
5604 if(cltype
>= var_tstartstringnode2
->type
->table_size
) {
5607 var2
= var_tstartstringnode2
->type
->type_table
[cltype
] == idtype
;
5611 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5612 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27988);
5615 var3
= NEW_parser_nodes__AStartStringExpr(&type_parser_nodes__AStartStringExpr
);
5616 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStartStringExpr__init_astartstringexpr
]))(var3
, var_tstartstringnode2
) /* init_astartstringexpr on <var3:AStartStringExpr>*/;
5617 CHECK_NEW_parser_nodes__AStartStringExpr(var3
);
5618 var_pexprnode1
= var3
;
5619 var_node_list
= var_pexprnode1
;
5620 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction808> */
5621 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5622 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5625 /* method parser#ReduceAction808#action for (self: Object, Parser) */
5626 void VIRTUAL_parser__ReduceAction808__action(val
* self
, val
* p0
) {
5627 parser__ReduceAction808__action(self
, p0
);
5630 /* method parser#ReduceAction810#action for (self: ReduceAction810, Parser) */
5631 void parser__ReduceAction810__action(val
* self
, val
* p0
) {
5632 val
* var_p
/* var p: Parser */;
5633 val
* var
/* : null */;
5634 val
* var_node_list
/* var node_list: nullable Object */;
5635 val
* var1
/* : nullable Object */;
5636 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5637 val
* var_tmidstringnode2
/* var tmidstringnode2: nullable Object */;
5638 short int var2
/* : Bool */;
5641 val
* var3
/* : AMidStringExpr */;
5642 val
* var_pexprnode1
/* var pexprnode1: nullable AMidStringExpr */;
5643 long var4
/* : Int */;
5644 long var5
/* : Int */;
5647 var_node_list
= var
;
5648 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5649 var_nodearraylist1
= var1
;
5650 var_tmidstringnode2
= var_nodearraylist1
;
5651 /* <var_tmidstringnode2:nullable Object> isa nullable TMidString */
5652 cltype
= type_nullable_parser_nodes__TMidString
.color
;
5653 idtype
= type_nullable_parser_nodes__TMidString
.id
;
5654 if(var_tmidstringnode2
== NULL
) {
5657 if(cltype
>= var_tmidstringnode2
->type
->table_size
) {
5660 var2
= var_tmidstringnode2
->type
->type_table
[cltype
] == idtype
;
5664 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5665 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28003);
5668 var3
= NEW_parser_nodes__AMidStringExpr(&type_parser_nodes__AMidStringExpr
);
5669 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AMidStringExpr__init_amidstringexpr
]))(var3
, var_tmidstringnode2
) /* init_amidstringexpr on <var3:AMidStringExpr>*/;
5670 CHECK_NEW_parser_nodes__AMidStringExpr(var3
);
5671 var_pexprnode1
= var3
;
5672 var_node_list
= var_pexprnode1
;
5673 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction810> */
5674 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5675 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5678 /* method parser#ReduceAction810#action for (self: Object, Parser) */
5679 void VIRTUAL_parser__ReduceAction810__action(val
* self
, val
* p0
) {
5680 parser__ReduceAction810__action(self
, p0
);
5683 /* method parser#ReduceAction811#action for (self: ReduceAction811, Parser) */
5684 void parser__ReduceAction811__action(val
* self
, val
* p0
) {
5685 val
* var_p
/* var p: Parser */;
5686 val
* var
/* : null */;
5687 val
* var_node_list
/* var node_list: nullable Object */;
5688 val
* var1
/* : nullable Object */;
5689 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5690 val
* var_tendstringnode2
/* var tendstringnode2: nullable Object */;
5691 short int var2
/* : Bool */;
5694 val
* var3
/* : AEndStringExpr */;
5695 val
* var_pexprnode1
/* var pexprnode1: nullable AEndStringExpr */;
5696 long var4
/* : Int */;
5697 long var5
/* : Int */;
5700 var_node_list
= var
;
5701 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5702 var_nodearraylist1
= var1
;
5703 var_tendstringnode2
= var_nodearraylist1
;
5704 /* <var_tendstringnode2:nullable Object> isa nullable TEndString */
5705 cltype
= type_nullable_parser_nodes__TEndString
.color
;
5706 idtype
= type_nullable_parser_nodes__TEndString
.id
;
5707 if(var_tendstringnode2
== NULL
) {
5710 if(cltype
>= var_tendstringnode2
->type
->table_size
) {
5713 var2
= var_tendstringnode2
->type
->type_table
[cltype
] == idtype
;
5717 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5718 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28018);
5721 var3
= NEW_parser_nodes__AEndStringExpr(&type_parser_nodes__AEndStringExpr
);
5722 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AEndStringExpr__init_aendstringexpr
]))(var3
, var_tendstringnode2
) /* init_aendstringexpr on <var3:AEndStringExpr>*/;
5723 CHECK_NEW_parser_nodes__AEndStringExpr(var3
);
5724 var_pexprnode1
= var3
;
5725 var_node_list
= var_pexprnode1
;
5726 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction811> */
5727 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5728 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5731 /* method parser#ReduceAction811#action for (self: Object, Parser) */
5732 void VIRTUAL_parser__ReduceAction811__action(val
* self
, val
* p0
) {
5733 parser__ReduceAction811__action(self
, p0
);
5736 /* method parser#ReduceAction812#action for (self: ReduceAction812, Parser) */
5737 void parser__ReduceAction812__action(val
* self
, val
* p0
) {
5738 val
* var_p
/* var p: Parser */;
5739 val
* var
/* : null */;
5740 val
* var_node_list
/* var node_list: nullable Object */;
5741 val
* var1
/* : nullable Object */;
5742 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5743 val
* var2
/* : nullable Object */;
5744 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5745 val
* var3
/* : Array[Object] */;
5746 val
* var_listnode5
/* var listnode5: Array[Object] */;
5747 val
* var_tatnode2
/* var tatnode2: nullable Object */;
5748 short int var4
/* : Bool */;
5751 val
* var_pannotationnode4
/* var pannotationnode4: nullable Object */;
5752 short int var5
/* : Bool */;
5755 val
* var8
/* : null */;
5756 short int var9
/* : Bool */;
5757 val
* var10
/* : AAnnotations */;
5758 val
* var11
/* : null */;
5759 val
* var12
/* : null */;
5760 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable AAnnotations */;
5761 long var13
/* : Int */;
5762 long var14
/* : Int */;
5765 var_node_list
= var
;
5766 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5767 var_nodearraylist2
= var1
;
5768 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5769 var_nodearraylist1
= var2
;
5770 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
5771 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
5772 CHECK_NEW_array__Array(var3
);
5773 var_listnode5
= var3
;
5774 var_tatnode2
= var_nodearraylist1
;
5775 /* <var_tatnode2:nullable Object> isa nullable TAt */
5776 cltype
= type_nullable_parser_nodes__TAt
.color
;
5777 idtype
= type_nullable_parser_nodes__TAt
.id
;
5778 if(var_tatnode2
== NULL
) {
5781 if(cltype
>= var_tatnode2
->type
->table_size
) {
5784 var4
= var_tatnode2
->type
->type_table
[cltype
] == idtype
;
5788 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5789 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28035);
5792 var_pannotationnode4
= var_nodearraylist2
;
5793 /* <var_pannotationnode4:nullable Object> isa nullable AAnnotation */
5794 cltype6
= type_nullable_parser_nodes__AAnnotation
.color
;
5795 idtype7
= type_nullable_parser_nodes__AAnnotation
.id
;
5796 if(var_pannotationnode4
== NULL
) {
5799 if(cltype6
>= var_pannotationnode4
->type
->table_size
) {
5802 var5
= var_pannotationnode4
->type
->type_table
[cltype6
] == idtype7
;
5806 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5807 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28037);
5811 if (var_pannotationnode4
== NULL
) {
5812 var9
= 0; /* is null */
5814 var9
= 1; /* arg is null and recv is not */
5817 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pannotationnode4
) /* add on <var_listnode5:Array[Object]>*/;
5820 var10
= NEW_parser_nodes__AAnnotations(&type_parser_nodes__AAnnotations
);
5823 ((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>*/;
5824 CHECK_NEW_parser_nodes__AAnnotations(var10
);
5825 var_pannotationsnode1
= var10
;
5826 var_node_list
= var_pannotationsnode1
;
5827 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction812> */
5828 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
5829 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
5832 /* method parser#ReduceAction812#action for (self: Object, Parser) */
5833 void VIRTUAL_parser__ReduceAction812__action(val
* self
, val
* p0
) {
5834 parser__ReduceAction812__action(self
, p0
);
5837 /* method parser#ReduceAction813#action for (self: ReduceAction813, Parser) */
5838 void parser__ReduceAction813__action(val
* self
, val
* p0
) {
5839 val
* var_p
/* var p: Parser */;
5840 val
* var
/* : null */;
5841 val
* var_node_list
/* var node_list: nullable Object */;
5842 val
* var1
/* : nullable Object */;
5843 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5844 val
* var2
/* : nullable Object */;
5845 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5846 val
* var3
/* : nullable Object */;
5847 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5848 val
* var4
/* : nullable Object */;
5849 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5850 val
* var5
/* : nullable Object */;
5851 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5852 val
* var6
/* : nullable Object */;
5853 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5854 val
* var7
/* : Array[Object] */;
5855 val
* var_listnode5
/* var listnode5: Array[Object] */;
5856 val
* var_tatnode2
/* var tatnode2: nullable Object */;
5857 short int var8
/* : Bool */;
5860 val
* var_toparnode3
/* var toparnode3: nullable Object */;
5861 short int var9
/* : Bool */;
5864 val
* var_listnode4
/* var listnode4: nullable Object */;
5865 short int var12
/* : Bool */;
5868 val
* var15
/* : Array[Object] */;
5869 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
5870 short int var16
/* : Bool */;
5873 val
* var19
/* : AAnnotations */;
5874 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable AAnnotations */;
5875 long var20
/* : Int */;
5876 long var21
/* : Int */;
5879 var_node_list
= var
;
5880 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5881 var_nodearraylist6
= var1
;
5882 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5883 var_nodearraylist5
= var2
;
5884 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5885 var_nodearraylist4
= var3
;
5886 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5887 var_nodearraylist3
= var4
;
5888 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5889 var_nodearraylist2
= var5
;
5890 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5891 var_nodearraylist1
= var6
;
5892 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
5893 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
5894 CHECK_NEW_array__Array(var7
);
5895 var_listnode5
= var7
;
5896 var_tatnode2
= var_nodearraylist1
;
5897 /* <var_tatnode2:nullable Object> isa nullable TAt */
5898 cltype
= type_nullable_parser_nodes__TAt
.color
;
5899 idtype
= type_nullable_parser_nodes__TAt
.id
;
5900 if(var_tatnode2
== NULL
) {
5903 if(cltype
>= var_tatnode2
->type
->table_size
) {
5906 var8
= var_tatnode2
->type
->type_table
[cltype
] == idtype
;
5910 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5911 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28064);
5914 var_toparnode3
= var_nodearraylist2
;
5915 /* <var_toparnode3:nullable Object> isa nullable TOpar */
5916 cltype10
= type_nullable_parser_nodes__TOpar
.color
;
5917 idtype11
= type_nullable_parser_nodes__TOpar
.id
;
5918 if(var_toparnode3
== NULL
) {
5921 if(cltype10
>= var_toparnode3
->type
->table_size
) {
5924 var9
= var_toparnode3
->type
->type_table
[cltype10
] == idtype11
;
5928 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5929 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28066);
5932 var_listnode4
= var_nodearraylist4
;
5933 /* <var_listnode4:nullable Object> isa Array[Object] */
5934 cltype13
= type_array__Arraykernel__Object
.color
;
5935 idtype14
= type_array__Arraykernel__Object
.id
;
5936 if(var_listnode4
== NULL
) {
5939 if(cltype13
>= var_listnode4
->type
->table_size
) {
5942 var12
= var_listnode4
->type
->type_table
[cltype13
] == idtype14
;
5946 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5947 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28068);
5950 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction813>*/;
5951 var_listnode5
= var15
;
5952 var_tcparnode6
= var_nodearraylist6
;
5953 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
5954 cltype17
= type_nullable_parser_nodes__TCpar
.color
;
5955 idtype18
= type_nullable_parser_nodes__TCpar
.id
;
5956 if(var_tcparnode6
== NULL
) {
5959 if(cltype17
>= var_tcparnode6
->type
->table_size
) {
5962 var16
= var_tcparnode6
->type
->type_table
[cltype17
] == idtype18
;
5966 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5967 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28071);
5970 var19
= NEW_parser_nodes__AAnnotations(&type_parser_nodes__AAnnotations
);
5971 ((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>*/;
5972 CHECK_NEW_parser_nodes__AAnnotations(var19
);
5973 var_pannotationsnode1
= var19
;
5974 var_node_list
= var_pannotationsnode1
;
5975 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction813> */
5976 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
5977 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
5980 /* method parser#ReduceAction813#action for (self: Object, Parser) */
5981 void VIRTUAL_parser__ReduceAction813__action(val
* self
, val
* p0
) {
5982 parser__ReduceAction813__action(self
, p0
);
5985 /* method parser#ReduceAction814#action for (self: ReduceAction814, Parser) */
5986 void parser__ReduceAction814__action(val
* self
, val
* p0
) {
5987 val
* var_p
/* var p: Parser */;
5988 val
* var
/* : null */;
5989 val
* var_node_list
/* var node_list: nullable Object */;
5990 val
* var1
/* : nullable Object */;
5991 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5992 val
* var2
/* : Array[Object] */;
5993 val
* var_listnode4
/* var listnode4: Array[Object] */;
5994 val
* var_patidnode2
/* var patidnode2: nullable Object */;
5995 short int var3
/* : Bool */;
5998 val
* var4
/* : AAnnotation */;
5999 val
* var5
/* : null */;
6000 val
* var6
/* : null */;
6001 val
* var7
/* : null */;
6002 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
6003 long var8
/* : Int */;
6004 long var9
/* : Int */;
6007 var_node_list
= var
;
6008 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6009 var_nodearraylist1
= var1
;
6010 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
6011 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
6012 CHECK_NEW_array__Array(var2
);
6013 var_listnode4
= var2
;
6014 var_patidnode2
= var_nodearraylist1
;
6015 /* <var_patidnode2:nullable Object> isa nullable AAtid */
6016 cltype
= type_nullable_parser_nodes__AAtid
.color
;
6017 idtype
= type_nullable_parser_nodes__AAtid
.id
;
6018 if(var_patidnode2
== NULL
) {
6021 if(cltype
>= var_patidnode2
->type
->table_size
) {
6024 var3
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
6028 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6029 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28090);
6032 var4
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
6036 ((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>*/;
6037 CHECK_NEW_parser_nodes__AAnnotation(var4
);
6038 var_pannotationnode1
= var4
;
6039 var_node_list
= var_pannotationnode1
;
6040 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction814> */
6041 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6042 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6045 /* method parser#ReduceAction814#action for (self: Object, Parser) */
6046 void VIRTUAL_parser__ReduceAction814__action(val
* self
, val
* p0
) {
6047 parser__ReduceAction814__action(self
, p0
);
6050 /* method parser#ReduceAction815#action for (self: ReduceAction815, Parser) */
6051 void parser__ReduceAction815__action(val
* self
, val
* p0
) {
6052 val
* var_p
/* var p: Parser */;
6053 val
* var
/* : null */;
6054 val
* var_node_list
/* var node_list: nullable Object */;
6055 val
* var1
/* : nullable Object */;
6056 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6057 val
* var2
/* : nullable Object */;
6058 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6059 val
* var3
/* : Array[Object] */;
6060 val
* var_listnode4
/* var listnode4: Array[Object] */;
6061 val
* var_patidnode2
/* var patidnode2: nullable Object */;
6062 short int var4
/* : Bool */;
6065 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
6066 short int var5
/* : Bool */;
6069 val
* var8
/* : AAnnotation */;
6070 val
* var9
/* : null */;
6071 val
* var10
/* : null */;
6072 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
6073 long var11
/* : Int */;
6074 long var12
/* : Int */;
6077 var_node_list
= var
;
6078 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6079 var_nodearraylist2
= var1
;
6080 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6081 var_nodearraylist1
= var2
;
6082 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6083 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6084 CHECK_NEW_array__Array(var3
);
6085 var_listnode4
= var3
;
6086 var_patidnode2
= var_nodearraylist1
;
6087 /* <var_patidnode2:nullable Object> isa nullable AAtid */
6088 cltype
= type_nullable_parser_nodes__AAtid
.color
;
6089 idtype
= type_nullable_parser_nodes__AAtid
.id
;
6090 if(var_patidnode2
== NULL
) {
6093 if(cltype
>= var_patidnode2
->type
->table_size
) {
6096 var4
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
6100 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6101 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28111);
6104 var_pannotationsnode6
= var_nodearraylist2
;
6105 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
6106 cltype6
= type_nullable_parser_nodes__AAnnotations
.color
;
6107 idtype7
= type_nullable_parser_nodes__AAnnotations
.id
;
6108 if(var_pannotationsnode6
== NULL
) {
6111 if(cltype6
>= var_pannotationsnode6
->type
->table_size
) {
6114 var5
= var_pannotationsnode6
->type
->type_table
[cltype6
] == idtype7
;
6118 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6119 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28113);
6122 var8
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
6125 ((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>*/;
6126 CHECK_NEW_parser_nodes__AAnnotation(var8
);
6127 var_pannotationnode1
= var8
;
6128 var_node_list
= var_pannotationnode1
;
6129 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction815> */
6130 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
6131 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
6134 /* method parser#ReduceAction815#action for (self: Object, Parser) */
6135 void VIRTUAL_parser__ReduceAction815__action(val
* self
, val
* p0
) {
6136 parser__ReduceAction815__action(self
, p0
);
6139 /* method parser#ReduceAction816#action for (self: ReduceAction816, Parser) */
6140 void parser__ReduceAction816__action(val
* self
, val
* p0
) {
6141 val
* var_p
/* var p: Parser */;
6142 val
* var
/* : null */;
6143 val
* var_node_list
/* var node_list: nullable Object */;
6144 val
* var1
/* : nullable Object */;
6145 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6146 val
* var2
/* : nullable Object */;
6147 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6148 val
* var3
/* : nullable Object */;
6149 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6150 val
* var4
/* : nullable Object */;
6151 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6152 val
* var5
/* : nullable Object */;
6153 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6154 val
* var6
/* : nullable Object */;
6155 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6156 val
* var7
/* : Array[Object] */;
6157 val
* var_listnode5
/* var listnode5: Array[Object] */;
6158 val
* var_patidnode2
/* var patidnode2: nullable Object */;
6159 short int var8
/* : Bool */;
6162 val
* var_toparnode3
/* var toparnode3: nullable Object */;
6163 short int var9
/* : Bool */;
6166 val
* var_listnode4
/* var listnode4: nullable Object */;
6167 short int var12
/* : Bool */;
6170 val
* var15
/* : Array[Object] */;
6171 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
6172 short int var16
/* : Bool */;
6175 val
* var19
/* : AAnnotation */;
6176 val
* var20
/* : null */;
6177 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
6178 long var21
/* : Int */;
6179 long var22
/* : Int */;
6182 var_node_list
= var
;
6183 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6184 var_nodearraylist6
= var1
;
6185 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6186 var_nodearraylist5
= var2
;
6187 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6188 var_nodearraylist4
= var3
;
6189 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6190 var_nodearraylist3
= var4
;
6191 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6192 var_nodearraylist2
= var5
;
6193 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6194 var_nodearraylist1
= var6
;
6195 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
6196 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
6197 CHECK_NEW_array__Array(var7
);
6198 var_listnode5
= var7
;
6199 var_patidnode2
= var_nodearraylist1
;
6200 /* <var_patidnode2:nullable Object> isa nullable AAtid */
6201 cltype
= type_nullable_parser_nodes__AAtid
.color
;
6202 idtype
= type_nullable_parser_nodes__AAtid
.id
;
6203 if(var_patidnode2
== NULL
) {
6206 if(cltype
>= var_patidnode2
->type
->table_size
) {
6209 var8
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
6213 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6214 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28138);
6217 var_toparnode3
= var_nodearraylist2
;
6218 /* <var_toparnode3:nullable Object> isa nullable TOpar */
6219 cltype10
= type_nullable_parser_nodes__TOpar
.color
;
6220 idtype11
= type_nullable_parser_nodes__TOpar
.id
;
6221 if(var_toparnode3
== NULL
) {
6224 if(cltype10
>= var_toparnode3
->type
->table_size
) {
6227 var9
= var_toparnode3
->type
->type_table
[cltype10
] == idtype11
;
6231 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6232 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28140);
6235 var_listnode4
= var_nodearraylist4
;
6236 /* <var_listnode4:nullable Object> isa Array[Object] */
6237 cltype13
= type_array__Arraykernel__Object
.color
;
6238 idtype14
= type_array__Arraykernel__Object
.id
;
6239 if(var_listnode4
== NULL
) {
6242 if(cltype13
>= var_listnode4
->type
->table_size
) {
6245 var12
= var_listnode4
->type
->type_table
[cltype13
] == idtype14
;
6249 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6250 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28142);
6253 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction816>*/;
6254 var_listnode5
= var15
;
6255 var_tcparnode6
= var_nodearraylist6
;
6256 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
6257 cltype17
= type_nullable_parser_nodes__TCpar
.color
;
6258 idtype18
= type_nullable_parser_nodes__TCpar
.id
;
6259 if(var_tcparnode6
== NULL
) {
6262 if(cltype17
>= var_tcparnode6
->type
->table_size
) {
6265 var16
= var_tcparnode6
->type
->type_table
[cltype17
] == idtype18
;
6269 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6270 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28145);
6273 var19
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
6275 ((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>*/;
6276 CHECK_NEW_parser_nodes__AAnnotation(var19
);
6277 var_pannotationnode1
= var19
;
6278 var_node_list
= var_pannotationnode1
;
6279 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction816> */
6280 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
6281 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
6284 /* method parser#ReduceAction816#action for (self: Object, Parser) */
6285 void VIRTUAL_parser__ReduceAction816__action(val
* self
, val
* p0
) {
6286 parser__ReduceAction816__action(self
, p0
);
6289 /* method parser#ReduceAction817#action for (self: ReduceAction817, Parser) */
6290 void parser__ReduceAction817__action(val
* self
, val
* p0
) {
6291 val
* var_p
/* var p: Parser */;
6292 val
* var
/* : null */;
6293 val
* var_node_list
/* var node_list: nullable Object */;
6294 val
* var1
/* : nullable Object */;
6295 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6296 val
* var2
/* : nullable Object */;
6297 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6298 val
* var3
/* : nullable Object */;
6299 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6300 val
* var4
/* : nullable Object */;
6301 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6302 val
* var5
/* : nullable Object */;
6303 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6304 val
* var6
/* : nullable Object */;
6305 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6306 val
* var7
/* : nullable Object */;
6307 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6308 val
* var8
/* : Array[Object] */;
6309 val
* var_listnode5
/* var listnode5: Array[Object] */;
6310 val
* var_patidnode2
/* var patidnode2: nullable Object */;
6311 short int var9
/* : Bool */;
6314 val
* var_toparnode3
/* var toparnode3: nullable Object */;
6315 short int var10
/* : Bool */;
6318 val
* var_listnode4
/* var listnode4: nullable Object */;
6319 short int var13
/* : Bool */;
6322 val
* var16
/* : Array[Object] */;
6323 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
6324 short int var17
/* : Bool */;
6327 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
6328 short int var20
/* : Bool */;
6331 val
* var23
/* : AAnnotation */;
6332 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
6333 long var24
/* : Int */;
6334 long var25
/* : Int */;
6337 var_node_list
= var
;
6338 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6339 var_nodearraylist7
= var1
;
6340 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6341 var_nodearraylist6
= var2
;
6342 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6343 var_nodearraylist5
= var3
;
6344 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6345 var_nodearraylist4
= var4
;
6346 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6347 var_nodearraylist3
= var5
;
6348 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6349 var_nodearraylist2
= var6
;
6350 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6351 var_nodearraylist1
= var7
;
6352 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
6353 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
6354 CHECK_NEW_array__Array(var8
);
6355 var_listnode5
= var8
;
6356 var_patidnode2
= var_nodearraylist1
;
6357 /* <var_patidnode2:nullable Object> isa nullable AAtid */
6358 cltype
= type_nullable_parser_nodes__AAtid
.color
;
6359 idtype
= type_nullable_parser_nodes__AAtid
.id
;
6360 if(var_patidnode2
== NULL
) {
6363 if(cltype
>= var_patidnode2
->type
->table_size
) {
6366 var9
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
6370 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6371 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28171);
6374 var_toparnode3
= var_nodearraylist2
;
6375 /* <var_toparnode3:nullable Object> isa nullable TOpar */
6376 cltype11
= type_nullable_parser_nodes__TOpar
.color
;
6377 idtype12
= type_nullable_parser_nodes__TOpar
.id
;
6378 if(var_toparnode3
== NULL
) {
6381 if(cltype11
>= var_toparnode3
->type
->table_size
) {
6384 var10
= var_toparnode3
->type
->type_table
[cltype11
] == idtype12
;
6388 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6389 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28173);
6392 var_listnode4
= var_nodearraylist4
;
6393 /* <var_listnode4:nullable Object> isa Array[Object] */
6394 cltype14
= type_array__Arraykernel__Object
.color
;
6395 idtype15
= type_array__Arraykernel__Object
.id
;
6396 if(var_listnode4
== NULL
) {
6399 if(cltype14
>= var_listnode4
->type
->table_size
) {
6402 var13
= var_listnode4
->type
->type_table
[cltype14
] == idtype15
;
6406 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6407 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28175);
6410 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction817>*/;
6411 var_listnode5
= var16
;
6412 var_tcparnode6
= var_nodearraylist6
;
6413 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
6414 cltype18
= type_nullable_parser_nodes__TCpar
.color
;
6415 idtype19
= type_nullable_parser_nodes__TCpar
.id
;
6416 if(var_tcparnode6
== NULL
) {
6419 if(cltype18
>= var_tcparnode6
->type
->table_size
) {
6422 var17
= var_tcparnode6
->type
->type_table
[cltype18
] == idtype19
;
6426 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6427 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28178);
6430 var_pannotationsnode7
= var_nodearraylist7
;
6431 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
6432 cltype21
= type_nullable_parser_nodes__AAnnotations
.color
;
6433 idtype22
= type_nullable_parser_nodes__AAnnotations
.id
;
6434 if(var_pannotationsnode7
== NULL
) {
6437 if(cltype21
>= var_pannotationsnode7
->type
->table_size
) {
6440 var20
= var_pannotationsnode7
->type
->type_table
[cltype21
] == idtype22
;
6444 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6445 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28180);
6448 var23
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
6449 ((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>*/;
6450 CHECK_NEW_parser_nodes__AAnnotation(var23
);
6451 var_pannotationnode1
= var23
;
6452 var_node_list
= var_pannotationnode1
;
6453 var24
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction817> */
6454 var25
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var24
) /* go_to on <var_p:Parser>*/;
6455 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var25
, var_node_list
) /* push on <var_p:Parser>*/;
6458 /* method parser#ReduceAction817#action for (self: Object, Parser) */
6459 void VIRTUAL_parser__ReduceAction817__action(val
* self
, val
* p0
) {
6460 parser__ReduceAction817__action(self
, p0
);
6463 /* method parser#ReduceAction818#action for (self: ReduceAction818, Parser) */
6464 void parser__ReduceAction818__action(val
* self
, val
* p0
) {
6465 val
* var_p
/* var p: Parser */;
6466 val
* var
/* : null */;
6467 val
* var_node_list
/* var node_list: nullable Object */;
6468 val
* var1
/* : nullable Object */;
6469 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6470 val
* var2
/* : Array[Object] */;
6471 val
* var_listnode5
/* var listnode5: Array[Object] */;
6472 val
* var_listnode4
/* var listnode4: nullable Object */;
6473 short int var3
/* : Bool */;
6476 val
* var4
/* : Array[Object] */;
6477 val
* var5
/* : AAnnotations */;
6478 val
* var6
/* : null */;
6479 val
* var7
/* : null */;
6480 val
* var8
/* : null */;
6481 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable AAnnotations */;
6482 long var9
/* : Int */;
6483 long var10
/* : Int */;
6486 var_node_list
= var
;
6487 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6488 var_nodearraylist1
= var1
;
6489 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
6490 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
6491 CHECK_NEW_array__Array(var2
);
6492 var_listnode5
= var2
;
6493 var_listnode4
= var_nodearraylist1
;
6494 /* <var_listnode4:nullable Object> isa Array[Object] */
6495 cltype
= type_array__Arraykernel__Object
.color
;
6496 idtype
= type_array__Arraykernel__Object
.id
;
6497 if(var_listnode4
== NULL
) {
6500 if(cltype
>= var_listnode4
->type
->table_size
) {
6503 var3
= var_listnode4
->type
->type_table
[cltype
] == idtype
;
6507 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6508 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28200);
6511 var4
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction818>*/;
6512 var_listnode5
= var4
;
6513 var5
= NEW_parser_nodes__AAnnotations(&type_parser_nodes__AAnnotations
);
6517 ((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>*/;
6518 CHECK_NEW_parser_nodes__AAnnotations(var5
);
6519 var_pannotationsnode1
= var5
;
6520 var_node_list
= var_pannotationsnode1
;
6521 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction818> */
6522 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
6523 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
6526 /* method parser#ReduceAction818#action for (self: Object, Parser) */
6527 void VIRTUAL_parser__ReduceAction818__action(val
* self
, val
* p0
) {
6528 parser__ReduceAction818__action(self
, p0
);
6531 /* method parser#ReduceAction819#action for (self: ReduceAction819, Parser) */
6532 void parser__ReduceAction819__action(val
* self
, val
* p0
) {
6533 val
* var_p
/* var p: Parser */;
6534 val
* var
/* : null */;
6535 val
* var_node_list
/* var node_list: nullable Object */;
6536 val
* var1
/* : nullable Object */;
6537 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6538 val
* var2
/* : Array[Object] */;
6539 val
* var_listnode2
/* var listnode2: Array[Object] */;
6540 val
* var_pannotationnode1
/* var pannotationnode1: nullable Object */;
6541 val
* var3
/* : null */;
6542 short int var4
/* : Bool */;
6543 long var5
/* : Int */;
6544 long var6
/* : Int */;
6547 var_node_list
= var
;
6548 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6549 var_nodearraylist1
= var1
;
6550 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
6551 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
6552 CHECK_NEW_array__Array(var2
);
6553 var_listnode2
= var2
;
6554 var_pannotationnode1
= var_nodearraylist1
;
6556 if (var_pannotationnode1
== NULL
) {
6557 var4
= 0; /* is null */
6559 var4
= 1; /* arg is null and recv is not */
6562 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_pannotationnode1
) /* add on <var_listnode2:Array[Object]>*/;
6565 var_node_list
= var_listnode2
;
6566 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction819> */
6567 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6568 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6571 /* method parser#ReduceAction819#action for (self: Object, Parser) */
6572 void VIRTUAL_parser__ReduceAction819__action(val
* self
, val
* p0
) {
6573 parser__ReduceAction819__action(self
, p0
);
6576 /* method parser#ReduceAction820#action for (self: ReduceAction820, Parser) */
6577 void parser__ReduceAction820__action(val
* self
, val
* p0
) {
6578 val
* var_p
/* var p: Parser */;
6579 val
* var
/* : null */;
6580 val
* var_node_list
/* var node_list: nullable Object */;
6581 val
* var1
/* : nullable Object */;
6582 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6583 val
* var2
/* : nullable Object */;
6584 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6585 val
* var3
/* : Array[Object] */;
6586 val
* var_listnode3
/* var listnode3: Array[Object] */;
6587 val
* var_pannotationnode1
/* var pannotationnode1: nullable Object */;
6588 val
* var_listnode2
/* var listnode2: nullable Object */;
6589 short int var4
/* : Bool */;
6592 val
* var5
/* : null */;
6593 short int var6
/* : Bool */;
6594 val
* var7
/* : Array[Object] */;
6595 long var8
/* : Int */;
6596 long var9
/* : Int */;
6599 var_node_list
= var
;
6600 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6601 var_nodearraylist2
= var1
;
6602 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6603 var_nodearraylist1
= var2
;
6604 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6605 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6606 CHECK_NEW_array__Array(var3
);
6607 var_listnode3
= var3
;
6608 var_pannotationnode1
= var_nodearraylist1
;
6609 var_listnode2
= var_nodearraylist2
;
6610 /* <var_listnode2:nullable Object> isa Array[Object] */
6611 cltype
= type_array__Arraykernel__Object
.color
;
6612 idtype
= type_array__Arraykernel__Object
.id
;
6613 if(var_listnode2
== NULL
) {
6616 if(cltype
>= var_listnode2
->type
->table_size
) {
6619 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
6623 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6624 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28237);
6628 if (var_pannotationnode1
== NULL
) {
6629 var6
= 0; /* is null */
6631 var6
= 1; /* arg is null and recv is not */
6634 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pannotationnode1
) /* add on <var_listnode3:Array[Object]>*/;
6637 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction820>*/;
6638 var_listnode3
= var7
;
6639 var_node_list
= var_listnode3
;
6640 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction820> */
6641 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6642 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6645 /* method parser#ReduceAction820#action for (self: Object, Parser) */
6646 void VIRTUAL_parser__ReduceAction820__action(val
* self
, val
* p0
) {
6647 parser__ReduceAction820__action(self
, p0
);
6650 /* method parser#ReduceAction822#action for (self: ReduceAction822, Parser) */
6651 void parser__ReduceAction822__action(val
* self
, val
* p0
) {
6652 val
* var_p
/* var p: Parser */;
6653 val
* var
/* : null */;
6654 val
* var_node_list
/* var node_list: nullable Object */;
6655 val
* var1
/* : nullable Object */;
6656 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6657 val
* var2
/* : nullable Object */;
6658 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6659 val
* var3
/* : nullable Object */;
6660 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6661 val
* var4
/* : Array[Object] */;
6662 val
* var_listnode4
/* var listnode4: Array[Object] */;
6663 val
* var_patidnode2
/* var patidnode2: nullable Object */;
6664 short int var5
/* : Bool */;
6667 val
* var6
/* : AAnnotation */;
6668 val
* var7
/* : null */;
6669 val
* var8
/* : null */;
6670 val
* var9
/* : null */;
6671 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
6672 long var10
/* : Int */;
6673 long var11
/* : Int */;
6676 var_node_list
= var
;
6677 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6678 var_nodearraylist3
= var1
;
6679 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6680 var_nodearraylist2
= var2
;
6681 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6682 var_nodearraylist1
= var3
;
6683 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
6684 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
6685 CHECK_NEW_array__Array(var4
);
6686 var_listnode4
= var4
;
6687 var_patidnode2
= var_nodearraylist2
;
6688 /* <var_patidnode2:nullable Object> isa nullable AAtid */
6689 cltype
= type_nullable_parser_nodes__AAtid
.color
;
6690 idtype
= type_nullable_parser_nodes__AAtid
.id
;
6691 if(var_patidnode2
== NULL
) {
6694 if(cltype
>= var_patidnode2
->type
->table_size
) {
6697 var5
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
6701 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6702 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28256);
6705 var6
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
6709 ((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>*/;
6710 CHECK_NEW_parser_nodes__AAnnotation(var6
);
6711 var_pannotationnode1
= var6
;
6712 var_node_list
= var_pannotationnode1
;
6713 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction822> */
6714 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
6715 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
6718 /* method parser#ReduceAction822#action for (self: Object, Parser) */
6719 void VIRTUAL_parser__ReduceAction822__action(val
* self
, val
* p0
) {
6720 parser__ReduceAction822__action(self
, p0
);
6723 /* method parser#ReduceAction823#action for (self: ReduceAction823, Parser) */
6724 void parser__ReduceAction823__action(val
* self
, val
* p0
) {
6725 val
* var_p
/* var p: Parser */;
6726 val
* var
/* : null */;
6727 val
* var_node_list
/* var node_list: nullable Object */;
6728 val
* var1
/* : nullable Object */;
6729 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6730 val
* var2
/* : nullable Object */;
6731 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6732 val
* var3
/* : nullable Object */;
6733 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6734 val
* var4
/* : nullable Object */;
6735 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6736 val
* var5
/* : Array[Object] */;
6737 val
* var_listnode4
/* var listnode4: Array[Object] */;
6738 val
* var_patidnode2
/* var patidnode2: nullable Object */;
6739 short int var6
/* : Bool */;
6742 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
6743 short int var7
/* : Bool */;
6746 val
* var10
/* : AAnnotation */;
6747 val
* var11
/* : null */;
6748 val
* var12
/* : null */;
6749 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
6750 long var13
/* : Int */;
6751 long var14
/* : Int */;
6754 var_node_list
= var
;
6755 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6756 var_nodearraylist4
= var1
;
6757 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6758 var_nodearraylist3
= var2
;
6759 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6760 var_nodearraylist2
= var3
;
6761 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6762 var_nodearraylist1
= var4
;
6763 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
6764 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
6765 CHECK_NEW_array__Array(var5
);
6766 var_listnode4
= var5
;
6767 var_patidnode2
= var_nodearraylist2
;
6768 /* <var_patidnode2:nullable Object> isa nullable AAtid */
6769 cltype
= type_nullable_parser_nodes__AAtid
.color
;
6770 idtype
= type_nullable_parser_nodes__AAtid
.id
;
6771 if(var_patidnode2
== NULL
) {
6774 if(cltype
>= var_patidnode2
->type
->table_size
) {
6777 var6
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
6781 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6782 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28279);
6785 var_pannotationsnode6
= var_nodearraylist3
;
6786 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
6787 cltype8
= type_nullable_parser_nodes__AAnnotations
.color
;
6788 idtype9
= type_nullable_parser_nodes__AAnnotations
.id
;
6789 if(var_pannotationsnode6
== NULL
) {
6792 if(cltype8
>= var_pannotationsnode6
->type
->table_size
) {
6795 var7
= var_pannotationsnode6
->type
->type_table
[cltype8
] == idtype9
;
6799 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6800 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28281);
6803 var10
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
6806 ((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>*/;
6807 CHECK_NEW_parser_nodes__AAnnotation(var10
);
6808 var_pannotationnode1
= var10
;
6809 var_node_list
= var_pannotationnode1
;
6810 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction823> */
6811 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
6812 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
6815 /* method parser#ReduceAction823#action for (self: Object, Parser) */
6816 void VIRTUAL_parser__ReduceAction823__action(val
* self
, val
* p0
) {
6817 parser__ReduceAction823__action(self
, p0
);
6820 /* method parser#ReduceAction824#action for (self: ReduceAction824, Parser) */
6821 void parser__ReduceAction824__action(val
* self
, val
* p0
) {
6822 val
* var_p
/* var p: Parser */;
6823 val
* var
/* : null */;
6824 val
* var_node_list
/* var node_list: nullable Object */;
6825 val
* var1
/* : nullable Object */;
6826 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6827 val
* var2
/* : nullable Object */;
6828 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6829 val
* var3
/* : nullable Object */;
6830 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6831 val
* var4
/* : nullable Object */;
6832 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6833 val
* var5
/* : nullable Object */;
6834 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6835 val
* var6
/* : nullable Object */;
6836 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6837 val
* var7
/* : nullable Object */;
6838 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6839 val
* var8
/* : Array[Object] */;
6840 val
* var_listnode5
/* var listnode5: Array[Object] */;
6841 val
* var_patidnode2
/* var patidnode2: nullable Object */;
6842 short int var9
/* : Bool */;
6845 val
* var_toparnode3
/* var toparnode3: nullable Object */;
6846 short int var10
/* : Bool */;
6849 val
* var_listnode4
/* var listnode4: nullable Object */;
6850 short int var13
/* : Bool */;
6853 val
* var16
/* : Array[Object] */;
6854 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
6855 short int var17
/* : Bool */;
6858 val
* var20
/* : AAnnotation */;
6859 val
* var21
/* : null */;
6860 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
6861 long var22
/* : Int */;
6862 long var23
/* : Int */;
6865 var_node_list
= var
;
6866 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6867 var_nodearraylist7
= var1
;
6868 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6869 var_nodearraylist6
= var2
;
6870 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6871 var_nodearraylist5
= var3
;
6872 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6873 var_nodearraylist4
= var4
;
6874 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6875 var_nodearraylist3
= var5
;
6876 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6877 var_nodearraylist2
= var6
;
6878 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6879 var_nodearraylist1
= var7
;
6880 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
6881 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
6882 CHECK_NEW_array__Array(var8
);
6883 var_listnode5
= var8
;
6884 var_patidnode2
= var_nodearraylist2
;
6885 /* <var_patidnode2:nullable Object> isa nullable AAtid */
6886 cltype
= type_nullable_parser_nodes__AAtid
.color
;
6887 idtype
= type_nullable_parser_nodes__AAtid
.id
;
6888 if(var_patidnode2
== NULL
) {
6891 if(cltype
>= var_patidnode2
->type
->table_size
) {
6894 var9
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
6898 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6899 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28307);
6902 var_toparnode3
= var_nodearraylist3
;
6903 /* <var_toparnode3:nullable Object> isa nullable TOpar */
6904 cltype11
= type_nullable_parser_nodes__TOpar
.color
;
6905 idtype12
= type_nullable_parser_nodes__TOpar
.id
;
6906 if(var_toparnode3
== NULL
) {
6909 if(cltype11
>= var_toparnode3
->type
->table_size
) {
6912 var10
= var_toparnode3
->type
->type_table
[cltype11
] == idtype12
;
6916 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6917 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28309);
6920 var_listnode4
= var_nodearraylist5
;
6921 /* <var_listnode4:nullable Object> isa Array[Object] */
6922 cltype14
= type_array__Arraykernel__Object
.color
;
6923 idtype15
= type_array__Arraykernel__Object
.id
;
6924 if(var_listnode4
== NULL
) {
6927 if(cltype14
>= var_listnode4
->type
->table_size
) {
6930 var13
= var_listnode4
->type
->type_table
[cltype14
] == idtype15
;
6934 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6935 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28311);
6938 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction824>*/;
6939 var_listnode5
= var16
;
6940 var_tcparnode6
= var_nodearraylist6
;
6941 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
6942 cltype18
= type_nullable_parser_nodes__TCpar
.color
;
6943 idtype19
= type_nullable_parser_nodes__TCpar
.id
;
6944 if(var_tcparnode6
== NULL
) {
6947 if(cltype18
>= var_tcparnode6
->type
->table_size
) {
6950 var17
= var_tcparnode6
->type
->type_table
[cltype18
] == idtype19
;
6954 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6955 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28314);
6958 var20
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
6960 ((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>*/;
6961 CHECK_NEW_parser_nodes__AAnnotation(var20
);
6962 var_pannotationnode1
= var20
;
6963 var_node_list
= var_pannotationnode1
;
6964 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction824> */
6965 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
6966 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
6969 /* method parser#ReduceAction824#action for (self: Object, Parser) */
6970 void VIRTUAL_parser__ReduceAction824__action(val
* self
, val
* p0
) {
6971 parser__ReduceAction824__action(self
, p0
);
6974 /* method parser#ReduceAction825#action for (self: ReduceAction825, Parser) */
6975 void parser__ReduceAction825__action(val
* self
, val
* p0
) {
6976 val
* var_p
/* var p: Parser */;
6977 val
* var
/* : null */;
6978 val
* var_node_list
/* var node_list: nullable Object */;
6979 val
* var1
/* : nullable Object */;
6980 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6981 val
* var2
/* : nullable Object */;
6982 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6983 val
* var3
/* : nullable Object */;
6984 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6985 val
* var4
/* : nullable Object */;
6986 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6987 val
* var5
/* : nullable Object */;
6988 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6989 val
* var6
/* : nullable Object */;
6990 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6991 val
* var7
/* : nullable Object */;
6992 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6993 val
* var8
/* : nullable Object */;
6994 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6995 val
* var9
/* : Array[Object] */;
6996 val
* var_listnode5
/* var listnode5: Array[Object] */;
6997 val
* var_patidnode2
/* var patidnode2: nullable Object */;
6998 short int var10
/* : Bool */;
7001 val
* var_toparnode3
/* var toparnode3: nullable Object */;
7002 short int var11
/* : Bool */;
7005 val
* var_listnode4
/* var listnode4: nullable Object */;
7006 short int var14
/* : Bool */;
7009 val
* var17
/* : Array[Object] */;
7010 val
* var_tcparnode6
/* var tcparnode6: nullable Object */;
7011 short int var18
/* : Bool */;
7014 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
7015 short int var21
/* : Bool */;
7018 val
* var24
/* : AAnnotation */;
7019 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
7020 long var25
/* : Int */;
7021 long var26
/* : Int */;
7024 var_node_list
= var
;
7025 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7026 var_nodearraylist8
= var1
;
7027 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7028 var_nodearraylist7
= var2
;
7029 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7030 var_nodearraylist6
= var3
;
7031 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7032 var_nodearraylist5
= var4
;
7033 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7034 var_nodearraylist4
= var5
;
7035 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7036 var_nodearraylist3
= var6
;
7037 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7038 var_nodearraylist2
= var7
;
7039 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7040 var_nodearraylist1
= var8
;
7041 var9
= NEW_array__Array(&type_array__Arraykernel__Object
);
7042 ((void (*)(val
*))(var9
->class->vft
[COLOR_array__Array__init
]))(var9
) /* init on <var9:Array[Object]>*/;
7043 CHECK_NEW_array__Array(var9
);
7044 var_listnode5
= var9
;
7045 var_patidnode2
= var_nodearraylist2
;
7046 /* <var_patidnode2:nullable Object> isa nullable AAtid */
7047 cltype
= type_nullable_parser_nodes__AAtid
.color
;
7048 idtype
= type_nullable_parser_nodes__AAtid
.id
;
7049 if(var_patidnode2
== NULL
) {
7052 if(cltype
>= var_patidnode2
->type
->table_size
) {
7055 var10
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
7059 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7060 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28341);
7063 var_toparnode3
= var_nodearraylist3
;
7064 /* <var_toparnode3:nullable Object> isa nullable TOpar */
7065 cltype12
= type_nullable_parser_nodes__TOpar
.color
;
7066 idtype13
= type_nullable_parser_nodes__TOpar
.id
;
7067 if(var_toparnode3
== NULL
) {
7070 if(cltype12
>= var_toparnode3
->type
->table_size
) {
7073 var11
= var_toparnode3
->type
->type_table
[cltype12
] == idtype13
;
7077 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7078 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28343);
7081 var_listnode4
= var_nodearraylist5
;
7082 /* <var_listnode4:nullable Object> isa Array[Object] */
7083 cltype15
= type_array__Arraykernel__Object
.color
;
7084 idtype16
= type_array__Arraykernel__Object
.id
;
7085 if(var_listnode4
== NULL
) {
7088 if(cltype15
>= var_listnode4
->type
->table_size
) {
7091 var14
= var_listnode4
->type
->type_table
[cltype15
] == idtype16
;
7095 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7096 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28345);
7099 var17
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction825>*/;
7100 var_listnode5
= var17
;
7101 var_tcparnode6
= var_nodearraylist6
;
7102 /* <var_tcparnode6:nullable Object> isa nullable TCpar */
7103 cltype19
= type_nullable_parser_nodes__TCpar
.color
;
7104 idtype20
= type_nullable_parser_nodes__TCpar
.id
;
7105 if(var_tcparnode6
== NULL
) {
7108 if(cltype19
>= var_tcparnode6
->type
->table_size
) {
7111 var18
= var_tcparnode6
->type
->type_table
[cltype19
] == idtype20
;
7115 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7116 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28348);
7119 var_pannotationsnode7
= var_nodearraylist7
;
7120 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
7121 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
7122 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
7123 if(var_pannotationsnode7
== NULL
) {
7126 if(cltype22
>= var_pannotationsnode7
->type
->table_size
) {
7129 var21
= var_pannotationsnode7
->type
->type_table
[cltype22
] == idtype23
;
7133 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7134 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28350);
7137 var24
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
7138 ((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>*/;
7139 CHECK_NEW_parser_nodes__AAnnotation(var24
);
7140 var_pannotationnode1
= var24
;
7141 var_node_list
= var_pannotationnode1
;
7142 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction825> */
7143 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
7144 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
7147 /* method parser#ReduceAction825#action for (self: Object, Parser) */
7148 void VIRTUAL_parser__ReduceAction825__action(val
* self
, val
* p0
) {
7149 parser__ReduceAction825__action(self
, p0
);
7152 /* method parser#ReduceAction826#action for (self: ReduceAction826, Parser) */
7153 void parser__ReduceAction826__action(val
* self
, val
* p0
) {
7154 val
* var_p
/* var p: Parser */;
7155 val
* var
/* : null */;
7156 val
* var_node_list
/* var node_list: nullable Object */;
7157 val
* var1
/* : nullable Object */;
7158 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7159 val
* var2
/* : nullable Object */;
7160 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7161 val
* var3
/* : nullable Object */;
7162 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7163 val
* var4
/* : nullable Object */;
7164 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7165 val
* var5
/* : Array[Object] */;
7166 val
* var_listnode5
/* var listnode5: Array[Object] */;
7167 val
* var_patidnode2
/* var patidnode2: nullable Object */;
7168 short int var6
/* : Bool */;
7171 val
* var_listnode4
/* var listnode4: nullable Object */;
7172 short int var7
/* : Bool */;
7175 val
* var10
/* : Array[Object] */;
7176 val
* var11
/* : AAnnotation */;
7177 val
* var12
/* : null */;
7178 val
* var13
/* : null */;
7179 val
* var14
/* : null */;
7180 val
* var_pannotationnode1
/* var pannotationnode1: nullable AAnnotation */;
7181 long var15
/* : Int */;
7182 long var16
/* : Int */;
7185 var_node_list
= var
;
7186 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7187 var_nodearraylist4
= var1
;
7188 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7189 var_nodearraylist3
= var2
;
7190 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7191 var_nodearraylist2
= var3
;
7192 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7193 var_nodearraylist1
= var4
;
7194 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
7195 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
7196 CHECK_NEW_array__Array(var5
);
7197 var_listnode5
= var5
;
7198 var_patidnode2
= var_nodearraylist2
;
7199 /* <var_patidnode2:nullable Object> isa nullable AAtid */
7200 cltype
= type_nullable_parser_nodes__AAtid
.color
;
7201 idtype
= type_nullable_parser_nodes__AAtid
.id
;
7202 if(var_patidnode2
== NULL
) {
7205 if(cltype
>= var_patidnode2
->type
->table_size
) {
7208 var6
= var_patidnode2
->type
->type_table
[cltype
] == idtype
;
7212 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7213 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28373);
7216 var_listnode4
= var_nodearraylist3
;
7217 /* <var_listnode4:nullable Object> isa Array[Object] */
7218 cltype8
= type_array__Arraykernel__Object
.color
;
7219 idtype9
= type_array__Arraykernel__Object
.id
;
7220 if(var_listnode4
== NULL
) {
7223 if(cltype8
>= var_listnode4
->type
->table_size
) {
7226 var7
= var_listnode4
->type
->type_table
[cltype8
] == idtype9
;
7230 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7231 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28375);
7234 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction826>*/;
7235 var_listnode5
= var10
;
7236 var11
= NEW_parser_nodes__AAnnotation(&type_parser_nodes__AAnnotation
);
7240 ((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>*/;
7241 CHECK_NEW_parser_nodes__AAnnotation(var11
);
7242 var_pannotationnode1
= var11
;
7243 var_node_list
= var_pannotationnode1
;
7244 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction826> */
7245 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
7246 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
7249 /* method parser#ReduceAction826#action for (self: Object, Parser) */
7250 void VIRTUAL_parser__ReduceAction826__action(val
* self
, val
* p0
) {
7251 parser__ReduceAction826__action(self
, p0
);
7254 /* method parser#ReduceAction827#action for (self: ReduceAction827, Parser) */
7255 void parser__ReduceAction827__action(val
* self
, val
* p0
) {
7256 val
* var_p
/* var p: Parser */;
7257 val
* var
/* : null */;
7258 val
* var_node_list
/* var node_list: nullable Object */;
7259 val
* var1
/* : nullable Object */;
7260 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7261 val
* var2
/* : nullable Object */;
7262 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7263 val
* var3
/* : nullable Object */;
7264 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7265 val
* var_pannotationnode1
/* var pannotationnode1: nullable Object */;
7266 long var4
/* : Int */;
7267 long var5
/* : Int */;
7270 var_node_list
= var
;
7271 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7272 var_nodearraylist3
= var1
;
7273 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7274 var_nodearraylist2
= var2
;
7275 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7276 var_nodearraylist1
= var3
;
7277 var_pannotationnode1
= var_nodearraylist3
;
7278 var_node_list
= var_pannotationnode1
;
7279 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction827> */
7280 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7281 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7284 /* method parser#ReduceAction827#action for (self: Object, Parser) */
7285 void VIRTUAL_parser__ReduceAction827__action(val
* self
, val
* p0
) {
7286 parser__ReduceAction827__action(self
, p0
);
7289 /* method parser#ReduceAction828#action for (self: ReduceAction828, Parser) */
7290 void parser__ReduceAction828__action(val
* self
, val
* p0
) {
7291 val
* var_p
/* var p: Parser */;
7292 val
* var
/* : null */;
7293 val
* var_node_list
/* var node_list: nullable Object */;
7294 val
* var1
/* : nullable Object */;
7295 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7296 val
* var2
/* : Array[Object] */;
7297 val
* var_listnode2
/* var listnode2: Array[Object] */;
7298 val
* var_patargnode1
/* var patargnode1: nullable Object */;
7299 val
* var3
/* : null */;
7300 short int var4
/* : Bool */;
7301 long var5
/* : Int */;
7302 long var6
/* : Int */;
7305 var_node_list
= var
;
7306 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7307 var_nodearraylist1
= var1
;
7308 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
7309 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
7310 CHECK_NEW_array__Array(var2
);
7311 var_listnode2
= var2
;
7312 var_patargnode1
= var_nodearraylist1
;
7314 if (var_patargnode1
== NULL
) {
7315 var4
= 0; /* is null */
7317 var4
= 1; /* arg is null and recv is not */
7320 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_patargnode1
) /* add on <var_listnode2:Array[Object]>*/;
7323 var_node_list
= var_listnode2
;
7324 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction828> */
7325 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
7326 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
7329 /* method parser#ReduceAction828#action for (self: Object, Parser) */
7330 void VIRTUAL_parser__ReduceAction828__action(val
* self
, val
* p0
) {
7331 parser__ReduceAction828__action(self
, p0
);
7334 /* method parser#ReduceAction829#action for (self: ReduceAction829, Parser) */
7335 void parser__ReduceAction829__action(val
* self
, val
* p0
) {
7336 val
* var_p
/* var p: Parser */;
7337 val
* var
/* : null */;
7338 val
* var_node_list
/* var node_list: nullable Object */;
7339 val
* var1
/* : nullable Object */;
7340 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7341 val
* var2
/* : nullable Object */;
7342 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7343 val
* var3
/* : Array[Object] */;
7344 val
* var_listnode3
/* var listnode3: Array[Object] */;
7345 val
* var_patargnode1
/* var patargnode1: nullable Object */;
7346 val
* var_listnode2
/* var listnode2: nullable Object */;
7347 short int var4
/* : Bool */;
7350 val
* var5
/* : null */;
7351 short int var6
/* : Bool */;
7352 val
* var7
/* : Array[Object] */;
7353 long var8
/* : Int */;
7354 long var9
/* : Int */;
7357 var_node_list
= var
;
7358 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7359 var_nodearraylist2
= var1
;
7360 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7361 var_nodearraylist1
= var2
;
7362 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7363 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7364 CHECK_NEW_array__Array(var3
);
7365 var_listnode3
= var3
;
7366 var_patargnode1
= var_nodearraylist1
;
7367 var_listnode2
= var_nodearraylist2
;
7368 /* <var_listnode2:nullable Object> isa Array[Object] */
7369 cltype
= type_array__Arraykernel__Object
.color
;
7370 idtype
= type_array__Arraykernel__Object
.id
;
7371 if(var_listnode2
== NULL
) {
7374 if(cltype
>= var_listnode2
->type
->table_size
) {
7377 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
7381 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7382 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28426);
7386 if (var_patargnode1
== NULL
) {
7387 var6
= 0; /* is null */
7389 var6
= 1; /* arg is null and recv is not */
7392 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_patargnode1
) /* add on <var_listnode3:Array[Object]>*/;
7395 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction829>*/;
7396 var_listnode3
= var7
;
7397 var_node_list
= var_listnode3
;
7398 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction829> */
7399 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
7400 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
7403 /* method parser#ReduceAction829#action for (self: Object, Parser) */
7404 void VIRTUAL_parser__ReduceAction829__action(val
* self
, val
* p0
) {
7405 parser__ReduceAction829__action(self
, p0
);
7408 /* method parser#ReduceAction830#action for (self: ReduceAction830, Parser) */
7409 void parser__ReduceAction830__action(val
* self
, val
* p0
) {
7410 val
* var_p
/* var p: Parser */;
7411 val
* var
/* : null */;
7412 val
* var_node_list
/* var node_list: nullable Object */;
7413 val
* var1
/* : nullable Object */;
7414 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7415 val
* var2
/* : nullable Object */;
7416 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7417 val
* var3
/* : nullable Object */;
7418 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7419 val
* var_patargnode1
/* var patargnode1: nullable Object */;
7420 long var4
/* : Int */;
7421 long var5
/* : Int */;
7424 var_node_list
= var
;
7425 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7426 var_nodearraylist3
= var1
;
7427 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7428 var_nodearraylist2
= var2
;
7429 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7430 var_nodearraylist1
= var3
;
7431 var_patargnode1
= var_nodearraylist3
;
7432 var_node_list
= var_patargnode1
;
7433 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction830> */
7434 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7435 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7438 /* method parser#ReduceAction830#action for (self: Object, Parser) */
7439 void VIRTUAL_parser__ReduceAction830__action(val
* self
, val
* p0
) {
7440 parser__ReduceAction830__action(self
, p0
);
7443 /* method parser#ReduceAction831#action for (self: ReduceAction831, Parser) */
7444 void parser__ReduceAction831__action(val
* self
, val
* p0
) {
7445 val
* var_p
/* var p: Parser */;
7446 val
* var
/* : null */;
7447 val
* var_node_list
/* var node_list: nullable Object */;
7448 val
* var1
/* : nullable Object */;
7449 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7450 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
7451 short int var2
/* : Bool */;
7454 val
* var3
/* : ATypeAtArg */;
7455 val
* var_patargnode1
/* var patargnode1: nullable ATypeAtArg */;
7456 long var4
/* : Int */;
7457 long var5
/* : Int */;
7460 var_node_list
= var
;
7461 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7462 var_nodearraylist1
= var1
;
7463 var_ptypenode2
= var_nodearraylist1
;
7464 /* <var_ptypenode2:nullable Object> isa nullable AType */
7465 cltype
= type_nullable_parser_nodes__AType
.color
;
7466 idtype
= type_nullable_parser_nodes__AType
.id
;
7467 if(var_ptypenode2
== NULL
) {
7470 if(cltype
>= var_ptypenode2
->type
->table_size
) {
7473 var2
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
7477 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7478 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28455);
7481 var3
= NEW_parser_nodes__ATypeAtArg(&type_parser_nodes__ATypeAtArg
);
7482 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ATypeAtArg__init_atypeatarg
]))(var3
, var_ptypenode2
) /* init_atypeatarg on <var3:ATypeAtArg>*/;
7483 CHECK_NEW_parser_nodes__ATypeAtArg(var3
);
7484 var_patargnode1
= var3
;
7485 var_node_list
= var_patargnode1
;
7486 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction831> */
7487 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7488 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7491 /* method parser#ReduceAction831#action for (self: Object, Parser) */
7492 void VIRTUAL_parser__ReduceAction831__action(val
* self
, val
* p0
) {
7493 parser__ReduceAction831__action(self
, p0
);
7496 /* method parser#ReduceAction832#action for (self: ReduceAction832, Parser) */
7497 void parser__ReduceAction832__action(val
* self
, val
* p0
) {
7498 val
* var_p
/* var p: Parser */;
7499 val
* var
/* : null */;
7500 val
* var_node_list
/* var node_list: nullable Object */;
7501 val
* var1
/* : nullable Object */;
7502 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7503 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7504 short int var2
/* : Bool */;
7507 val
* var3
/* : AExprAtArg */;
7508 val
* var_patargnode1
/* var patargnode1: nullable AExprAtArg */;
7509 long var4
/* : Int */;
7510 long var5
/* : Int */;
7513 var_node_list
= var
;
7514 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7515 var_nodearraylist1
= var1
;
7516 var_pexprnode2
= var_nodearraylist1
;
7517 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7518 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7519 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7520 if(var_pexprnode2
== NULL
) {
7523 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7526 var2
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7530 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7531 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28470);
7534 var3
= NEW_parser_nodes__AExprAtArg(&type_parser_nodes__AExprAtArg
);
7535 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AExprAtArg__init_aexpratarg
]))(var3
, var_pexprnode2
) /* init_aexpratarg on <var3:AExprAtArg>*/;
7536 CHECK_NEW_parser_nodes__AExprAtArg(var3
);
7537 var_patargnode1
= var3
;
7538 var_node_list
= var_patargnode1
;
7539 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction832> */
7540 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7541 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7544 /* method parser#ReduceAction832#action for (self: Object, Parser) */
7545 void VIRTUAL_parser__ReduceAction832__action(val
* self
, val
* p0
) {
7546 parser__ReduceAction832__action(self
, p0
);
7549 /* method parser#ReduceAction834#action for (self: ReduceAction834, Parser) */
7550 void parser__ReduceAction834__action(val
* self
, val
* p0
) {
7551 val
* var_p
/* var p: Parser */;
7552 val
* var
/* : null */;
7553 val
* var_node_list
/* var node_list: nullable Object */;
7554 val
* var1
/* : nullable Object */;
7555 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7556 val
* var_pannotationsnode2
/* var pannotationsnode2: nullable Object */;
7557 short int var2
/* : Bool */;
7560 val
* var3
/* : AAtAtArg */;
7561 val
* var_patargnode1
/* var patargnode1: nullable AAtAtArg */;
7562 long var4
/* : Int */;
7563 long var5
/* : Int */;
7566 var_node_list
= var
;
7567 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7568 var_nodearraylist1
= var1
;
7569 var_pannotationsnode2
= var_nodearraylist1
;
7570 /* <var_pannotationsnode2:nullable Object> isa nullable AAnnotations */
7571 cltype
= type_nullable_parser_nodes__AAnnotations
.color
;
7572 idtype
= type_nullable_parser_nodes__AAnnotations
.id
;
7573 if(var_pannotationsnode2
== NULL
) {
7576 if(cltype
>= var_pannotationsnode2
->type
->table_size
) {
7579 var2
= var_pannotationsnode2
->type
->type_table
[cltype
] == idtype
;
7583 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7584 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28485);
7587 var3
= NEW_parser_nodes__AAtAtArg(&type_parser_nodes__AAtAtArg
);
7588 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AAtAtArg__init_aatatarg
]))(var3
, var_pannotationsnode2
) /* init_aatatarg on <var3:AAtAtArg>*/;
7589 CHECK_NEW_parser_nodes__AAtAtArg(var3
);
7590 var_patargnode1
= var3
;
7591 var_node_list
= var_patargnode1
;
7592 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction834> */
7593 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7594 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7597 /* method parser#ReduceAction834#action for (self: Object, Parser) */
7598 void VIRTUAL_parser__ReduceAction834__action(val
* self
, val
* p0
) {
7599 parser__ReduceAction834__action(self
, p0
);
7602 /* method parser#ReduceAction835#action for (self: ReduceAction835, Parser) */
7603 void parser__ReduceAction835__action(val
* self
, val
* p0
) {
7604 val
* var_p
/* var p: Parser */;
7605 val
* var
/* : null */;
7606 val
* var_node_list
/* var node_list: nullable Object */;
7607 val
* var1
/* : nullable Object */;
7608 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7609 val
* var_tidnode2
/* var tidnode2: nullable Object */;
7610 short int var2
/* : Bool */;
7613 val
* var3
/* : AIdAtid */;
7614 val
* var_patidnode1
/* var patidnode1: nullable AIdAtid */;
7615 long var4
/* : Int */;
7616 long var5
/* : Int */;
7619 var_node_list
= var
;
7620 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7621 var_nodearraylist1
= var1
;
7622 var_tidnode2
= var_nodearraylist1
;
7623 /* <var_tidnode2:nullable Object> isa nullable TId */
7624 cltype
= type_nullable_parser_nodes__TId
.color
;
7625 idtype
= type_nullable_parser_nodes__TId
.id
;
7626 if(var_tidnode2
== NULL
) {
7629 if(cltype
>= var_tidnode2
->type
->table_size
) {
7632 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
7636 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7637 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28500);
7640 var3
= NEW_parser_nodes__AIdAtid(&type_parser_nodes__AIdAtid
);
7641 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AIdAtid__init_aidatid
]))(var3
, var_tidnode2
) /* init_aidatid on <var3:AIdAtid>*/;
7642 CHECK_NEW_parser_nodes__AIdAtid(var3
);
7643 var_patidnode1
= var3
;
7644 var_node_list
= var_patidnode1
;
7645 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction835> */
7646 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7647 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7650 /* method parser#ReduceAction835#action for (self: Object, Parser) */
7651 void VIRTUAL_parser__ReduceAction835__action(val
* self
, val
* p0
) {
7652 parser__ReduceAction835__action(self
, p0
);
7655 /* method parser#ReduceAction836#action for (self: ReduceAction836, Parser) */
7656 void parser__ReduceAction836__action(val
* self
, val
* p0
) {
7657 val
* var_p
/* var p: Parser */;
7658 val
* var
/* : null */;
7659 val
* var_node_list
/* var node_list: nullable Object */;
7660 val
* var1
/* : nullable Object */;
7661 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7662 val
* var2
/* : nullable Object */;
7663 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7664 val
* var_tidnode2
/* var tidnode2: nullable Object */;
7665 short int var3
/* : Bool */;
7668 val
* var4
/* : AIdAtid */;
7669 val
* var_patidnode1
/* var patidnode1: nullable AIdAtid */;
7670 long var5
/* : Int */;
7671 long var6
/* : Int */;
7674 var_node_list
= var
;
7675 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7676 var_nodearraylist2
= var1
;
7677 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7678 var_nodearraylist1
= var2
;
7679 var_tidnode2
= var_nodearraylist2
;
7680 /* <var_tidnode2:nullable Object> isa nullable TId */
7681 cltype
= type_nullable_parser_nodes__TId
.color
;
7682 idtype
= type_nullable_parser_nodes__TId
.id
;
7683 if(var_tidnode2
== NULL
) {
7686 if(cltype
>= var_tidnode2
->type
->table_size
) {
7689 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
7693 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7694 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28516);
7697 var4
= NEW_parser_nodes__AIdAtid(&type_parser_nodes__AIdAtid
);
7698 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AIdAtid__init_aidatid
]))(var4
, var_tidnode2
) /* init_aidatid on <var4:AIdAtid>*/;
7699 CHECK_NEW_parser_nodes__AIdAtid(var4
);
7700 var_patidnode1
= var4
;
7701 var_node_list
= var_patidnode1
;
7702 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction836> */
7703 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
7704 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
7707 /* method parser#ReduceAction836#action for (self: Object, Parser) */
7708 void VIRTUAL_parser__ReduceAction836__action(val
* self
, val
* p0
) {
7709 parser__ReduceAction836__action(self
, p0
);
7712 /* method parser#ReduceAction837#action for (self: ReduceAction837, Parser) */
7713 void parser__ReduceAction837__action(val
* self
, val
* p0
) {
7714 val
* var_p
/* var p: Parser */;
7715 val
* var
/* : null */;
7716 val
* var_node_list
/* var node_list: nullable Object */;
7717 val
* var1
/* : nullable Object */;
7718 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7719 val
* var2
/* : nullable Object */;
7720 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7721 val
* var3
/* : nullable Object */;
7722 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7723 val
* var_tidnode2
/* var tidnode2: nullable Object */;
7724 short int var4
/* : Bool */;
7727 val
* var5
/* : AIdAtid */;
7728 val
* var_patidnode1
/* var patidnode1: nullable AIdAtid */;
7729 long var6
/* : Int */;
7730 long var7
/* : Int */;
7733 var_node_list
= var
;
7734 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7735 var_nodearraylist3
= var1
;
7736 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7737 var_nodearraylist2
= var2
;
7738 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7739 var_nodearraylist1
= var3
;
7740 var_tidnode2
= var_nodearraylist3
;
7741 /* <var_tidnode2:nullable Object> isa nullable TId */
7742 cltype
= type_nullable_parser_nodes__TId
.color
;
7743 idtype
= type_nullable_parser_nodes__TId
.id
;
7744 if(var_tidnode2
== NULL
) {
7747 if(cltype
>= var_tidnode2
->type
->table_size
) {
7750 var4
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
7754 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7755 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28533);
7758 var5
= NEW_parser_nodes__AIdAtid(&type_parser_nodes__AIdAtid
);
7759 ((void (*)(val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AIdAtid__init_aidatid
]))(var5
, var_tidnode2
) /* init_aidatid on <var5:AIdAtid>*/;
7760 CHECK_NEW_parser_nodes__AIdAtid(var5
);
7761 var_patidnode1
= var5
;
7762 var_node_list
= var_patidnode1
;
7763 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction837> */
7764 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
7765 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
7768 /* method parser#ReduceAction837#action for (self: Object, Parser) */
7769 void VIRTUAL_parser__ReduceAction837__action(val
* self
, val
* p0
) {
7770 parser__ReduceAction837__action(self
, p0
);
7773 /* method parser#ReduceAction839#action for (self: ReduceAction839, Parser) */
7774 void parser__ReduceAction839__action(val
* self
, val
* p0
) {
7775 val
* var_p
/* var p: Parser */;
7776 val
* var
/* : null */;
7777 val
* var_node_list
/* var node_list: nullable Object */;
7778 val
* var1
/* : nullable Object */;
7779 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7780 val
* var_tkwreadablenode2
/* var tkwreadablenode2: nullable Object */;
7781 short int var2
/* : Bool */;
7784 val
* var3
/* : AKwreadableAtid */;
7785 val
* var_patidnode1
/* var patidnode1: nullable AKwreadableAtid */;
7786 long var4
/* : Int */;
7787 long var5
/* : Int */;
7790 var_node_list
= var
;
7791 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7792 var_nodearraylist1
= var1
;
7793 var_tkwreadablenode2
= var_nodearraylist1
;
7794 /* <var_tkwreadablenode2:nullable Object> isa nullable TKwreadable */
7795 cltype
= type_nullable_parser_nodes__TKwreadable
.color
;
7796 idtype
= type_nullable_parser_nodes__TKwreadable
.id
;
7797 if(var_tkwreadablenode2
== NULL
) {
7800 if(cltype
>= var_tkwreadablenode2
->type
->table_size
) {
7803 var2
= var_tkwreadablenode2
->type
->type_table
[cltype
] == idtype
;
7807 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7808 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28548);
7811 var3
= NEW_parser_nodes__AKwreadableAtid(&type_parser_nodes__AKwreadableAtid
);
7812 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AKwreadableAtid__init_akwreadableatid
]))(var3
, var_tkwreadablenode2
) /* init_akwreadableatid on <var3:AKwreadableAtid>*/;
7813 CHECK_NEW_parser_nodes__AKwreadableAtid(var3
);
7814 var_patidnode1
= var3
;
7815 var_node_list
= var_patidnode1
;
7816 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction839> */
7817 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7818 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7821 /* method parser#ReduceAction839#action for (self: Object, Parser) */
7822 void VIRTUAL_parser__ReduceAction839__action(val
* self
, val
* p0
) {
7823 parser__ReduceAction839__action(self
, p0
);
7826 /* method parser#ReduceAction840#action for (self: ReduceAction840, Parser) */
7827 void parser__ReduceAction840__action(val
* self
, val
* p0
) {
7828 val
* var_p
/* var p: Parser */;
7829 val
* var
/* : null */;
7830 val
* var_node_list
/* var node_list: nullable Object */;
7831 val
* var1
/* : nullable Object */;
7832 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7833 val
* var2
/* : nullable Object */;
7834 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7835 val
* var_tkwreadablenode2
/* var tkwreadablenode2: nullable Object */;
7836 short int var3
/* : Bool */;
7839 val
* var4
/* : AKwreadableAtid */;
7840 val
* var_patidnode1
/* var patidnode1: nullable AKwreadableAtid */;
7841 long var5
/* : Int */;
7842 long var6
/* : Int */;
7845 var_node_list
= var
;
7846 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7847 var_nodearraylist2
= var1
;
7848 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7849 var_nodearraylist1
= var2
;
7850 var_tkwreadablenode2
= var_nodearraylist2
;
7851 /* <var_tkwreadablenode2:nullable Object> isa nullable TKwreadable */
7852 cltype
= type_nullable_parser_nodes__TKwreadable
.color
;
7853 idtype
= type_nullable_parser_nodes__TKwreadable
.id
;
7854 if(var_tkwreadablenode2
== NULL
) {
7857 if(cltype
>= var_tkwreadablenode2
->type
->table_size
) {
7860 var3
= var_tkwreadablenode2
->type
->type_table
[cltype
] == idtype
;
7864 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7865 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28564);
7868 var4
= NEW_parser_nodes__AKwreadableAtid(&type_parser_nodes__AKwreadableAtid
);
7869 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AKwreadableAtid__init_akwreadableatid
]))(var4
, var_tkwreadablenode2
) /* init_akwreadableatid on <var4:AKwreadableAtid>*/;
7870 CHECK_NEW_parser_nodes__AKwreadableAtid(var4
);
7871 var_patidnode1
= var4
;
7872 var_node_list
= var_patidnode1
;
7873 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction840> */
7874 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
7875 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
7878 /* method parser#ReduceAction840#action for (self: Object, Parser) */
7879 void VIRTUAL_parser__ReduceAction840__action(val
* self
, val
* p0
) {
7880 parser__ReduceAction840__action(self
, p0
);
7883 /* method parser#ReduceAction841#action for (self: ReduceAction841, Parser) */
7884 void parser__ReduceAction841__action(val
* self
, val
* p0
) {
7885 val
* var_p
/* var p: Parser */;
7886 val
* var
/* : null */;
7887 val
* var_node_list
/* var node_list: nullable Object */;
7888 val
* var1
/* : nullable Object */;
7889 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7890 val
* var2
/* : nullable Object */;
7891 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7892 val
* var3
/* : nullable Object */;
7893 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7894 val
* var_tkwreadablenode2
/* var tkwreadablenode2: nullable Object */;
7895 short int var4
/* : Bool */;
7898 val
* var5
/* : AKwreadableAtid */;
7899 val
* var_patidnode1
/* var patidnode1: nullable AKwreadableAtid */;
7900 long var6
/* : Int */;
7901 long var7
/* : Int */;
7904 var_node_list
= var
;
7905 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7906 var_nodearraylist3
= var1
;
7907 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7908 var_nodearraylist2
= var2
;
7909 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7910 var_nodearraylist1
= var3
;
7911 var_tkwreadablenode2
= var_nodearraylist3
;
7912 /* <var_tkwreadablenode2:nullable Object> isa nullable TKwreadable */
7913 cltype
= type_nullable_parser_nodes__TKwreadable
.color
;
7914 idtype
= type_nullable_parser_nodes__TKwreadable
.id
;
7915 if(var_tkwreadablenode2
== NULL
) {
7918 if(cltype
>= var_tkwreadablenode2
->type
->table_size
) {
7921 var4
= var_tkwreadablenode2
->type
->type_table
[cltype
] == idtype
;
7925 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7926 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28581);
7929 var5
= NEW_parser_nodes__AKwreadableAtid(&type_parser_nodes__AKwreadableAtid
);
7930 ((void (*)(val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AKwreadableAtid__init_akwreadableatid
]))(var5
, var_tkwreadablenode2
) /* init_akwreadableatid on <var5:AKwreadableAtid>*/;
7931 CHECK_NEW_parser_nodes__AKwreadableAtid(var5
);
7932 var_patidnode1
= var5
;
7933 var_node_list
= var_patidnode1
;
7934 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction841> */
7935 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
7936 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
7939 /* method parser#ReduceAction841#action for (self: Object, Parser) */
7940 void VIRTUAL_parser__ReduceAction841__action(val
* self
, val
* p0
) {
7941 parser__ReduceAction841__action(self
, p0
);
7944 /* method parser#ReduceAction843#action for (self: ReduceAction843, Parser) */
7945 void parser__ReduceAction843__action(val
* self
, val
* p0
) {
7946 val
* var_p
/* var p: Parser */;
7947 val
* var
/* : null */;
7948 val
* var_node_list
/* var node_list: nullable Object */;
7949 val
* var1
/* : nullable Object */;
7950 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7951 val
* var_tkwwritablenode2
/* var tkwwritablenode2: nullable Object */;
7952 short int var2
/* : Bool */;
7955 val
* var3
/* : AKwwritableAtid */;
7956 val
* var_patidnode1
/* var patidnode1: nullable AKwwritableAtid */;
7957 long var4
/* : Int */;
7958 long var5
/* : Int */;
7961 var_node_list
= var
;
7962 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7963 var_nodearraylist1
= var1
;
7964 var_tkwwritablenode2
= var_nodearraylist1
;
7965 /* <var_tkwwritablenode2:nullable Object> isa nullable TKwwritable */
7966 cltype
= type_nullable_parser_nodes__TKwwritable
.color
;
7967 idtype
= type_nullable_parser_nodes__TKwwritable
.id
;
7968 if(var_tkwwritablenode2
== NULL
) {
7971 if(cltype
>= var_tkwwritablenode2
->type
->table_size
) {
7974 var2
= var_tkwwritablenode2
->type
->type_table
[cltype
] == idtype
;
7978 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7979 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28596);
7982 var3
= NEW_parser_nodes__AKwwritableAtid(&type_parser_nodes__AKwwritableAtid
);
7983 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AKwwritableAtid__init_akwwritableatid
]))(var3
, var_tkwwritablenode2
) /* init_akwwritableatid on <var3:AKwwritableAtid>*/;
7984 CHECK_NEW_parser_nodes__AKwwritableAtid(var3
);
7985 var_patidnode1
= var3
;
7986 var_node_list
= var_patidnode1
;
7987 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction843> */
7988 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7989 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7992 /* method parser#ReduceAction843#action for (self: Object, Parser) */
7993 void VIRTUAL_parser__ReduceAction843__action(val
* self
, val
* p0
) {
7994 parser__ReduceAction843__action(self
, p0
);
7997 /* method parser#ReduceAction844#action for (self: ReduceAction844, Parser) */
7998 void parser__ReduceAction844__action(val
* self
, val
* p0
) {
7999 val
* var_p
/* var p: Parser */;
8000 val
* var
/* : null */;
8001 val
* var_node_list
/* var node_list: nullable Object */;
8002 val
* var1
/* : nullable Object */;
8003 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8004 val
* var2
/* : nullable Object */;
8005 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8006 val
* var_tkwwritablenode2
/* var tkwwritablenode2: nullable Object */;
8007 short int var3
/* : Bool */;
8010 val
* var4
/* : AKwwritableAtid */;
8011 val
* var_patidnode1
/* var patidnode1: nullable AKwwritableAtid */;
8012 long var5
/* : Int */;
8013 long var6
/* : Int */;
8016 var_node_list
= var
;
8017 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8018 var_nodearraylist2
= var1
;
8019 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8020 var_nodearraylist1
= var2
;
8021 var_tkwwritablenode2
= var_nodearraylist2
;
8022 /* <var_tkwwritablenode2:nullable Object> isa nullable TKwwritable */
8023 cltype
= type_nullable_parser_nodes__TKwwritable
.color
;
8024 idtype
= type_nullable_parser_nodes__TKwwritable
.id
;
8025 if(var_tkwwritablenode2
== NULL
) {
8028 if(cltype
>= var_tkwwritablenode2
->type
->table_size
) {
8031 var3
= var_tkwwritablenode2
->type
->type_table
[cltype
] == idtype
;
8035 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8036 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28612);
8039 var4
= NEW_parser_nodes__AKwwritableAtid(&type_parser_nodes__AKwwritableAtid
);
8040 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AKwwritableAtid__init_akwwritableatid
]))(var4
, var_tkwwritablenode2
) /* init_akwwritableatid on <var4:AKwwritableAtid>*/;
8041 CHECK_NEW_parser_nodes__AKwwritableAtid(var4
);
8042 var_patidnode1
= var4
;
8043 var_node_list
= var_patidnode1
;
8044 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction844> */
8045 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
8046 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
8049 /* method parser#ReduceAction844#action for (self: Object, Parser) */
8050 void VIRTUAL_parser__ReduceAction844__action(val
* self
, val
* p0
) {
8051 parser__ReduceAction844__action(self
, p0
);
8054 /* method parser#ReduceAction845#action for (self: ReduceAction845, Parser) */
8055 void parser__ReduceAction845__action(val
* self
, val
* p0
) {
8056 val
* var_p
/* var p: Parser */;
8057 val
* var
/* : null */;
8058 val
* var_node_list
/* var node_list: nullable Object */;
8059 val
* var1
/* : nullable Object */;
8060 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8061 val
* var2
/* : nullable Object */;
8062 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8063 val
* var3
/* : nullable Object */;
8064 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8065 val
* var_tkwwritablenode2
/* var tkwwritablenode2: nullable Object */;
8066 short int var4
/* : Bool */;
8069 val
* var5
/* : AKwwritableAtid */;
8070 val
* var_patidnode1
/* var patidnode1: nullable AKwwritableAtid */;
8071 long var6
/* : Int */;
8072 long var7
/* : Int */;
8075 var_node_list
= var
;
8076 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8077 var_nodearraylist3
= var1
;
8078 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8079 var_nodearraylist2
= var2
;
8080 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8081 var_nodearraylist1
= var3
;
8082 var_tkwwritablenode2
= var_nodearraylist3
;
8083 /* <var_tkwwritablenode2:nullable Object> isa nullable TKwwritable */
8084 cltype
= type_nullable_parser_nodes__TKwwritable
.color
;
8085 idtype
= type_nullable_parser_nodes__TKwwritable
.id
;
8086 if(var_tkwwritablenode2
== NULL
) {
8089 if(cltype
>= var_tkwwritablenode2
->type
->table_size
) {
8092 var4
= var_tkwwritablenode2
->type
->type_table
[cltype
] == idtype
;
8096 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8097 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28629);
8100 var5
= NEW_parser_nodes__AKwwritableAtid(&type_parser_nodes__AKwwritableAtid
);
8101 ((void (*)(val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AKwwritableAtid__init_akwwritableatid
]))(var5
, var_tkwwritablenode2
) /* init_akwwritableatid on <var5:AKwwritableAtid>*/;
8102 CHECK_NEW_parser_nodes__AKwwritableAtid(var5
);
8103 var_patidnode1
= var5
;
8104 var_node_list
= var_patidnode1
;
8105 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction845> */
8106 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
8107 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
8110 /* method parser#ReduceAction845#action for (self: Object, Parser) */
8111 void VIRTUAL_parser__ReduceAction845__action(val
* self
, val
* p0
) {
8112 parser__ReduceAction845__action(self
, p0
);
8115 /* method parser#ReduceAction847#action for (self: ReduceAction847, Parser) */
8116 void parser__ReduceAction847__action(val
* self
, val
* p0
) {
8117 val
* var_p
/* var p: Parser */;
8118 val
* var
/* : null */;
8119 val
* var_node_list
/* var node_list: nullable Object */;
8120 val
* var1
/* : nullable Object */;
8121 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8122 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
8123 short int var2
/* : Bool */;
8126 val
* var3
/* : AKwimportAtid */;
8127 val
* var_patidnode1
/* var patidnode1: nullable AKwimportAtid */;
8128 long var4
/* : Int */;
8129 long var5
/* : Int */;
8132 var_node_list
= var
;
8133 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8134 var_nodearraylist1
= var1
;
8135 var_tkwimportnode2
= var_nodearraylist1
;
8136 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
8137 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
8138 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
8139 if(var_tkwimportnode2
== NULL
) {
8142 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
8145 var2
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
8149 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8150 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28644);
8153 var3
= NEW_parser_nodes__AKwimportAtid(&type_parser_nodes__AKwimportAtid
);
8154 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AKwimportAtid__init_akwimportatid
]))(var3
, var_tkwimportnode2
) /* init_akwimportatid on <var3:AKwimportAtid>*/;
8155 CHECK_NEW_parser_nodes__AKwimportAtid(var3
);
8156 var_patidnode1
= var3
;
8157 var_node_list
= var_patidnode1
;
8158 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction847> */
8159 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8160 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8163 /* method parser#ReduceAction847#action for (self: Object, Parser) */
8164 void VIRTUAL_parser__ReduceAction847__action(val
* self
, val
* p0
) {
8165 parser__ReduceAction847__action(self
, p0
);
8168 /* method parser#ReduceAction848#action for (self: ReduceAction848, Parser) */
8169 void parser__ReduceAction848__action(val
* self
, val
* p0
) {
8170 val
* var_p
/* var p: Parser */;
8171 val
* var
/* : null */;
8172 val
* var_node_list
/* var node_list: nullable Object */;
8173 val
* var1
/* : nullable Object */;
8174 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8175 val
* var2
/* : nullable Object */;
8176 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8177 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
8178 short int var3
/* : Bool */;
8181 val
* var4
/* : AKwimportAtid */;
8182 val
* var_patidnode1
/* var patidnode1: nullable AKwimportAtid */;
8183 long var5
/* : Int */;
8184 long var6
/* : Int */;
8187 var_node_list
= var
;
8188 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8189 var_nodearraylist2
= var1
;
8190 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8191 var_nodearraylist1
= var2
;
8192 var_tkwimportnode2
= var_nodearraylist2
;
8193 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
8194 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
8195 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
8196 if(var_tkwimportnode2
== NULL
) {
8199 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
8202 var3
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
8206 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8207 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28660);
8210 var4
= NEW_parser_nodes__AKwimportAtid(&type_parser_nodes__AKwimportAtid
);
8211 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AKwimportAtid__init_akwimportatid
]))(var4
, var_tkwimportnode2
) /* init_akwimportatid on <var4:AKwimportAtid>*/;
8212 CHECK_NEW_parser_nodes__AKwimportAtid(var4
);
8213 var_patidnode1
= var4
;
8214 var_node_list
= var_patidnode1
;
8215 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction848> */
8216 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
8217 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
8220 /* method parser#ReduceAction848#action for (self: Object, Parser) */
8221 void VIRTUAL_parser__ReduceAction848__action(val
* self
, val
* p0
) {
8222 parser__ReduceAction848__action(self
, p0
);
8225 /* method parser#ReduceAction849#action for (self: ReduceAction849, Parser) */
8226 void parser__ReduceAction849__action(val
* self
, val
* p0
) {
8227 val
* var_p
/* var p: Parser */;
8228 val
* var
/* : null */;
8229 val
* var_node_list
/* var node_list: nullable Object */;
8230 val
* var1
/* : nullable Object */;
8231 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8232 val
* var2
/* : nullable Object */;
8233 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8234 val
* var3
/* : nullable Object */;
8235 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8236 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
8237 short int var4
/* : Bool */;
8240 val
* var5
/* : AKwimportAtid */;
8241 val
* var_patidnode1
/* var patidnode1: nullable AKwimportAtid */;
8242 long var6
/* : Int */;
8243 long var7
/* : Int */;
8246 var_node_list
= var
;
8247 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8248 var_nodearraylist3
= var1
;
8249 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8250 var_nodearraylist2
= var2
;
8251 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8252 var_nodearraylist1
= var3
;
8253 var_tkwimportnode2
= var_nodearraylist3
;
8254 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
8255 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
8256 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
8257 if(var_tkwimportnode2
== NULL
) {
8260 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
8263 var4
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
8267 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8268 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28677);
8271 var5
= NEW_parser_nodes__AKwimportAtid(&type_parser_nodes__AKwimportAtid
);
8272 ((void (*)(val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AKwimportAtid__init_akwimportatid
]))(var5
, var_tkwimportnode2
) /* init_akwimportatid on <var5:AKwimportAtid>*/;
8273 CHECK_NEW_parser_nodes__AKwimportAtid(var5
);
8274 var_patidnode1
= var5
;
8275 var_node_list
= var_patidnode1
;
8276 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction849> */
8277 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
8278 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
8281 /* method parser#ReduceAction849#action for (self: Object, Parser) */
8282 void VIRTUAL_parser__ReduceAction849__action(val
* self
, val
* p0
) {
8283 parser__ReduceAction849__action(self
, p0
);
8286 /* method parser#ReduceAction851#action for (self: ReduceAction851, Parser) */
8287 void parser__ReduceAction851__action(val
* self
, val
* p0
) {
8288 val
* var_p
/* var p: Parser */;
8289 val
* var
/* : null */;
8290 val
* var_node_list
/* var node_list: nullable Object */;
8291 val
* var1
/* : nullable Object */;
8292 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8293 val
* var2
/* : nullable Object */;
8294 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8295 val
* var3
/* : nullable Object */;
8296 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8297 val
* var4
/* : nullable Object */;
8298 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8299 val
* var5
/* : Array[Object] */;
8300 val
* var_listnode4
/* var listnode4: Array[Object] */;
8301 val
* var_toparnode2
/* var toparnode2: nullable Object */;
8302 short int var6
/* : Bool */;
8305 val
* var_listnode3
/* var listnode3: nullable Object */;
8306 short int var7
/* : Bool */;
8309 val
* var10
/* : Array[Object] */;
8310 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
8311 short int var11
/* : Bool */;
8314 val
* var14
/* : AParExprs */;
8315 val
* var_pexprsnode1
/* var pexprsnode1: nullable AParExprs */;
8316 long var15
/* : Int */;
8317 long var16
/* : Int */;
8320 var_node_list
= var
;
8321 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8322 var_nodearraylist4
= var1
;
8323 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8324 var_nodearraylist3
= var2
;
8325 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8326 var_nodearraylist2
= var3
;
8327 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8328 var_nodearraylist1
= var4
;
8329 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
8330 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
8331 CHECK_NEW_array__Array(var5
);
8332 var_listnode4
= var5
;
8333 var_toparnode2
= var_nodearraylist1
;
8334 /* <var_toparnode2:nullable Object> isa nullable TOpar */
8335 cltype
= type_nullable_parser_nodes__TOpar
.color
;
8336 idtype
= type_nullable_parser_nodes__TOpar
.id
;
8337 if(var_toparnode2
== NULL
) {
8340 if(cltype
>= var_toparnode2
->type
->table_size
) {
8343 var6
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
8347 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8348 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28696);
8351 var_listnode3
= var_nodearraylist3
;
8352 /* <var_listnode3:nullable Object> isa Array[Object] */
8353 cltype8
= type_array__Arraykernel__Object
.color
;
8354 idtype9
= type_array__Arraykernel__Object
.id
;
8355 if(var_listnode3
== NULL
) {
8358 if(cltype8
>= var_listnode3
->type
->table_size
) {
8361 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
8365 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8366 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28698);
8369 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction851>*/;
8370 var_listnode4
= var10
;
8371 var_tcparnode5
= var_nodearraylist4
;
8372 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
8373 cltype12
= type_nullable_parser_nodes__TCpar
.color
;
8374 idtype13
= type_nullable_parser_nodes__TCpar
.id
;
8375 if(var_tcparnode5
== NULL
) {
8378 if(cltype12
>= var_tcparnode5
->type
->table_size
) {
8381 var11
= var_tcparnode5
->type
->type_table
[cltype12
] == idtype13
;
8385 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8386 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28701);
8389 var14
= NEW_parser_nodes__AParExprs(&type_parser_nodes__AParExprs
);
8390 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AParExprs__init_aparexprs
]))(var14
, var_toparnode2
, var_listnode4
, var_tcparnode5
) /* init_aparexprs on <var14:AParExprs>*/;
8391 CHECK_NEW_parser_nodes__AParExprs(var14
);
8392 var_pexprsnode1
= var14
;
8393 var_node_list
= var_pexprsnode1
;
8394 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction851> */
8395 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
8396 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
8399 /* method parser#ReduceAction851#action for (self: Object, Parser) */
8400 void VIRTUAL_parser__ReduceAction851__action(val
* self
, val
* p0
) {
8401 parser__ReduceAction851__action(self
, p0
);
8404 /* method parser#ReduceAction852#action for (self: ReduceAction852, Parser) */
8405 void parser__ReduceAction852__action(val
* self
, val
* p0
) {
8406 val
* var_p
/* var p: Parser */;
8407 val
* var
/* : null */;
8408 val
* var_node_list
/* var node_list: nullable Object */;
8409 val
* var1
/* : nullable Object */;
8410 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8411 val
* var2
/* : nullable Object */;
8412 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8413 val
* var3
/* : nullable Object */;
8414 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8415 val
* var4
/* : Array[Object] */;
8416 val
* var_listnode3
/* var listnode3: Array[Object] */;
8417 val
* var_toparnode2
/* var toparnode2: nullable Object */;
8418 short int var5
/* : Bool */;
8421 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
8422 short int var6
/* : Bool */;
8425 val
* var9
/* : AParExprs */;
8426 val
* var_pexprsnode1
/* var pexprsnode1: nullable AParExprs */;
8427 long var10
/* : Int */;
8428 long var11
/* : Int */;
8431 var_node_list
= var
;
8432 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8433 var_nodearraylist3
= var1
;
8434 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8435 var_nodearraylist2
= var2
;
8436 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8437 var_nodearraylist1
= var3
;
8438 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
8439 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
8440 CHECK_NEW_array__Array(var4
);
8441 var_listnode3
= var4
;
8442 var_toparnode2
= var_nodearraylist1
;
8443 /* <var_toparnode2:nullable Object> isa nullable TOpar */
8444 cltype
= type_nullable_parser_nodes__TOpar
.color
;
8445 idtype
= type_nullable_parser_nodes__TOpar
.id
;
8446 if(var_toparnode2
== NULL
) {
8449 if(cltype
>= var_toparnode2
->type
->table_size
) {
8452 var5
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
8456 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8457 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28721);
8460 var_tcparnode4
= var_nodearraylist3
;
8461 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
8462 cltype7
= type_nullable_parser_nodes__TCpar
.color
;
8463 idtype8
= type_nullable_parser_nodes__TCpar
.id
;
8464 if(var_tcparnode4
== NULL
) {
8467 if(cltype7
>= var_tcparnode4
->type
->table_size
) {
8470 var6
= var_tcparnode4
->type
->type_table
[cltype7
] == idtype8
;
8474 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8475 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28723);
8478 var9
= NEW_parser_nodes__AParExprs(&type_parser_nodes__AParExprs
);
8479 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AParExprs__init_aparexprs
]))(var9
, var_toparnode2
, var_listnode3
, var_tcparnode4
) /* init_aparexprs on <var9:AParExprs>*/;
8480 CHECK_NEW_parser_nodes__AParExprs(var9
);
8481 var_pexprsnode1
= var9
;
8482 var_node_list
= var_pexprsnode1
;
8483 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction852> */
8484 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8485 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8488 /* method parser#ReduceAction852#action for (self: Object, Parser) */
8489 void VIRTUAL_parser__ReduceAction852__action(val
* self
, val
* p0
) {
8490 parser__ReduceAction852__action(self
, p0
);
8493 /* method parser#ReduceAction853#action for (self: ReduceAction853, Parser) */
8494 void parser__ReduceAction853__action(val
* self
, val
* p0
) {
8495 val
* var_p
/* var p: Parser */;
8496 val
* var
/* : null */;
8497 val
* var_node_list
/* var node_list: nullable Object */;
8498 val
* var1
/* : Array[Object] */;
8499 val
* var_listnode2
/* var listnode2: Array[Object] */;
8500 val
* var2
/* : AListExprs */;
8501 val
* var_pexprsnode1
/* var pexprsnode1: nullable AListExprs */;
8502 long var3
/* : Int */;
8503 long var4
/* : Int */;
8506 var_node_list
= var
;
8507 var1
= NEW_array__Array(&type_array__Arraykernel__Object
);
8508 ((void (*)(val
*))(var1
->class->vft
[COLOR_array__Array__init
]))(var1
) /* init on <var1:Array[Object]>*/;
8509 CHECK_NEW_array__Array(var1
);
8510 var_listnode2
= var1
;
8511 var2
= NEW_parser_nodes__AListExprs(&type_parser_nodes__AListExprs
);
8512 ((void (*)(val
*, val
*))(var2
->class->vft
[COLOR_parser_prod__AListExprs__init_alistexprs
]))(var2
, var_listnode2
) /* init_alistexprs on <var2:AListExprs>*/;
8513 CHECK_NEW_parser_nodes__AListExprs(var2
);
8514 var_pexprsnode1
= var2
;
8515 var_node_list
= var_pexprsnode1
;
8516 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction853> */
8517 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
8518 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
8521 /* method parser#ReduceAction853#action for (self: Object, Parser) */
8522 void VIRTUAL_parser__ReduceAction853__action(val
* self
, val
* p0
) {
8523 parser__ReduceAction853__action(self
, p0
);
8526 /* method parser#ReduceAction855#action for (self: ReduceAction855, Parser) */
8527 void parser__ReduceAction855__action(val
* self
, val
* p0
) {
8528 val
* var_p
/* var p: Parser */;
8529 val
* var
/* : null */;
8530 val
* var_node_list
/* var node_list: nullable Object */;
8531 val
* var1
/* : nullable Object */;
8532 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8533 val
* var2
/* : Array[Object] */;
8534 val
* var_listnode3
/* var listnode3: Array[Object] */;
8535 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8536 short int var3
/* : Bool */;
8539 val
* var4
/* : null */;
8540 short int var5
/* : Bool */;
8541 val
* var6
/* : AListExprs */;
8542 val
* var_pexprsnode1
/* var pexprsnode1: nullable AListExprs */;
8543 long var7
/* : Int */;
8544 long var8
/* : Int */;
8547 var_node_list
= var
;
8548 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8549 var_nodearraylist1
= var1
;
8550 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
8551 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
8552 CHECK_NEW_array__Array(var2
);
8553 var_listnode3
= var2
;
8554 var_pexprnode2
= var_nodearraylist1
;
8555 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8556 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8557 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8558 if(var_pexprnode2
== NULL
) {
8561 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8564 var3
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8568 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8569 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28754);
8573 if (var_pexprnode2
== NULL
) {
8574 var5
= 0; /* is null */
8576 var5
= 1; /* arg is null and recv is not */
8579 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
8582 var6
= NEW_parser_nodes__AListExprs(&type_parser_nodes__AListExprs
);
8583 ((void (*)(val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AListExprs__init_alistexprs
]))(var6
, var_listnode3
) /* init_alistexprs on <var6:AListExprs>*/;
8584 CHECK_NEW_parser_nodes__AListExprs(var6
);
8585 var_pexprsnode1
= var6
;
8586 var_node_list
= var_pexprsnode1
;
8587 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction855> */
8588 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
8589 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
8592 /* method parser#ReduceAction855#action for (self: Object, Parser) */
8593 void VIRTUAL_parser__ReduceAction855__action(val
* self
, val
* p0
) {
8594 parser__ReduceAction855__action(self
, p0
);
8597 /* method parser#ReduceAction858#action for (self: ReduceAction858, Parser) */
8598 void parser__ReduceAction858__action(val
* self
, val
* p0
) {
8599 val
* var_p
/* var p: Parser */;
8600 val
* var
/* : null */;
8601 val
* var_node_list
/* var node_list: nullable Object */;
8602 val
* var1
/* : nullable Object */;
8603 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8604 val
* var2
/* : nullable Object */;
8605 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8606 val
* var3
/* : nullable Object */;
8607 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8608 val
* var4
/* : nullable Object */;
8609 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8610 val
* var5
/* : Array[Object] */;
8611 val
* var_listnode4
/* var listnode4: Array[Object] */;
8612 val
* var_tobranode2
/* var tobranode2: nullable Object */;
8613 short int var6
/* : Bool */;
8616 val
* var_listnode3
/* var listnode3: nullable Object */;
8617 short int var7
/* : Bool */;
8620 val
* var10
/* : Array[Object] */;
8621 val
* var_tcbranode5
/* var tcbranode5: nullable Object */;
8622 short int var11
/* : Bool */;
8625 val
* var14
/* : ABraExprs */;
8626 val
* var_pexprsnode1
/* var pexprsnode1: nullable ABraExprs */;
8627 long var15
/* : Int */;
8628 long var16
/* : Int */;
8631 var_node_list
= var
;
8632 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8633 var_nodearraylist4
= var1
;
8634 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8635 var_nodearraylist3
= var2
;
8636 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8637 var_nodearraylist2
= var3
;
8638 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8639 var_nodearraylist1
= var4
;
8640 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
8641 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
8642 CHECK_NEW_array__Array(var5
);
8643 var_listnode4
= var5
;
8644 var_tobranode2
= var_nodearraylist1
;
8645 /* <var_tobranode2:nullable Object> isa nullable TObra */
8646 cltype
= type_nullable_parser_nodes__TObra
.color
;
8647 idtype
= type_nullable_parser_nodes__TObra
.id
;
8648 if(var_tobranode2
== NULL
) {
8651 if(cltype
>= var_tobranode2
->type
->table_size
) {
8654 var6
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
8658 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8659 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28776);
8662 var_listnode3
= var_nodearraylist3
;
8663 /* <var_listnode3:nullable Object> isa Array[Object] */
8664 cltype8
= type_array__Arraykernel__Object
.color
;
8665 idtype9
= type_array__Arraykernel__Object
.id
;
8666 if(var_listnode3
== NULL
) {
8669 if(cltype8
>= var_listnode3
->type
->table_size
) {
8672 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
8676 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8677 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28778);
8680 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction858>*/;
8681 var_listnode4
= var10
;
8682 var_tcbranode5
= var_nodearraylist4
;
8683 /* <var_tcbranode5:nullable Object> isa nullable TCbra */
8684 cltype12
= type_nullable_parser_nodes__TCbra
.color
;
8685 idtype13
= type_nullable_parser_nodes__TCbra
.id
;
8686 if(var_tcbranode5
== NULL
) {
8689 if(cltype12
>= var_tcbranode5
->type
->table_size
) {
8692 var11
= var_tcbranode5
->type
->type_table
[cltype12
] == idtype13
;
8696 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8697 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28781);
8700 var14
= NEW_parser_nodes__ABraExprs(&type_parser_nodes__ABraExprs
);
8701 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ABraExprs__init_abraexprs
]))(var14
, var_tobranode2
, var_listnode4
, var_tcbranode5
) /* init_abraexprs on <var14:ABraExprs>*/;
8702 CHECK_NEW_parser_nodes__ABraExprs(var14
);
8703 var_pexprsnode1
= var14
;
8704 var_node_list
= var_pexprsnode1
;
8705 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction858> */
8706 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
8707 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
8710 /* method parser#ReduceAction858#action for (self: Object, Parser) */
8711 void VIRTUAL_parser__ReduceAction858__action(val
* self
, val
* p0
) {
8712 parser__ReduceAction858__action(self
, p0
);
8715 /* method parser#ReduceAction859#action for (self: ReduceAction859, Parser) */
8716 void parser__ReduceAction859__action(val
* self
, val
* p0
) {
8717 val
* var_p
/* var p: Parser */;
8718 val
* var
/* : null */;
8719 val
* var_node_list
/* var node_list: nullable Object */;
8720 val
* var1
/* : nullable Object */;
8721 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8722 val
* var2
/* : nullable Object */;
8723 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8724 val
* var3
/* : Array[Object] */;
8725 val
* var_listnode2
/* var listnode2: Array[Object] */;
8726 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
8727 val
* var4
/* : null */;
8728 short int var5
/* : Bool */;
8729 long var6
/* : Int */;
8730 long var7
/* : Int */;
8733 var_node_list
= var
;
8734 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8735 var_nodearraylist2
= var1
;
8736 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8737 var_nodearraylist1
= var2
;
8738 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
8739 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
8740 CHECK_NEW_array__Array(var3
);
8741 var_listnode2
= var3
;
8742 var_pexprnode1
= var_nodearraylist1
;
8744 if (var_pexprnode1
== NULL
) {
8745 var5
= 0; /* is null */
8747 var5
= 1; /* arg is null and recv is not */
8750 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_pexprnode1
) /* add on <var_listnode2:Array[Object]>*/;
8753 var_node_list
= var_listnode2
;
8754 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction859> */
8755 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
8756 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
8759 /* method parser#ReduceAction859#action for (self: Object, Parser) */
8760 void VIRTUAL_parser__ReduceAction859__action(val
* self
, val
* p0
) {
8761 parser__ReduceAction859__action(self
, p0
);
8764 /* method parser#ReduceAction860#action for (self: ReduceAction860, Parser) */
8765 void parser__ReduceAction860__action(val
* self
, val
* p0
) {
8766 val
* var_p
/* var p: Parser */;
8767 val
* var
/* : null */;
8768 val
* var_node_list
/* var node_list: nullable Object */;
8769 val
* var1
/* : nullable Object */;
8770 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8771 val
* var2
/* : nullable Object */;
8772 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8773 val
* var3
/* : nullable Object */;
8774 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8775 val
* var4
/* : Array[Object] */;
8776 val
* var_listnode3
/* var listnode3: Array[Object] */;
8777 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
8778 val
* var_listnode2
/* var listnode2: nullable Object */;
8779 short int var5
/* : Bool */;
8782 val
* var6
/* : null */;
8783 short int var7
/* : Bool */;
8784 val
* var8
/* : Array[Object] */;
8785 long var9
/* : Int */;
8786 long var10
/* : Int */;
8789 var_node_list
= var
;
8790 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8791 var_nodearraylist3
= var1
;
8792 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8793 var_nodearraylist2
= var2
;
8794 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8795 var_nodearraylist1
= var3
;
8796 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
8797 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
8798 CHECK_NEW_array__Array(var4
);
8799 var_listnode3
= var4
;
8800 var_pexprnode1
= var_nodearraylist1
;
8801 var_listnode2
= var_nodearraylist3
;
8802 /* <var_listnode2:nullable Object> isa Array[Object] */
8803 cltype
= type_array__Arraykernel__Object
.color
;
8804 idtype
= type_array__Arraykernel__Object
.id
;
8805 if(var_listnode2
== NULL
) {
8808 if(cltype
>= var_listnode2
->type
->table_size
) {
8811 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
8815 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8816 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28818);
8820 if (var_pexprnode1
== NULL
) {
8821 var7
= 0; /* is null */
8823 var7
= 1; /* arg is null and recv is not */
8826 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode1
) /* add on <var_listnode3:Array[Object]>*/;
8829 var8
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction860>*/;
8830 var_listnode3
= var8
;
8831 var_node_list
= var_listnode3
;
8832 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction860> */
8833 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8834 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8837 /* method parser#ReduceAction860#action for (self: Object, Parser) */
8838 void VIRTUAL_parser__ReduceAction860__action(val
* self
, val
* p0
) {
8839 parser__ReduceAction860__action(self
, p0
);
8842 /* method parser#ReduceAction861#action for (self: ReduceAction861, Parser) */
8843 void parser__ReduceAction861__action(val
* self
, val
* p0
) {
8844 val
* var_p
/* var p: Parser */;
8845 val
* var
/* : null */;
8846 val
* var_node_list
/* var node_list: nullable Object */;
8847 val
* var1
/* : nullable Object */;
8848 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8849 val
* var2
/* : nullable Object */;
8850 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8851 val
* var3
/* : nullable Object */;
8852 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8853 val
* var4
/* : nullable Object */;
8854 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8855 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
8856 long var5
/* : Int */;
8857 long var6
/* : Int */;
8860 var_node_list
= var
;
8861 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8862 var_nodearraylist4
= var1
;
8863 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8864 var_nodearraylist3
= var2
;
8865 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8866 var_nodearraylist2
= var3
;
8867 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8868 var_nodearraylist1
= var4
;
8869 var_pexprnode1
= var_nodearraylist3
;
8870 var_node_list
= var_pexprnode1
;
8871 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction861> */
8872 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
8873 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
8876 /* method parser#ReduceAction861#action for (self: Object, Parser) */
8877 void VIRTUAL_parser__ReduceAction861__action(val
* self
, val
* p0
) {
8878 parser__ReduceAction861__action(self
, p0
);
8881 /* method parser#ReduceAction862#action for (self: ReduceAction862, Parser) */
8882 void parser__ReduceAction862__action(val
* self
, val
* p0
) {
8883 val
* var_p
/* var p: Parser */;
8884 val
* var
/* : null */;
8885 val
* var_node_list
/* var node_list: nullable Object */;
8886 val
* var1
/* : nullable Object */;
8887 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8888 val
* var2
/* : Array[Object] */;
8889 val
* var_listnode2
/* var listnode2: Array[Object] */;
8890 val
* var_tidnode1
/* var tidnode1: nullable Object */;
8891 val
* var3
/* : null */;
8892 short int var4
/* : Bool */;
8893 long var5
/* : Int */;
8894 long var6
/* : Int */;
8897 var_node_list
= var
;
8898 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8899 var_nodearraylist1
= var1
;
8900 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
8901 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
8902 CHECK_NEW_array__Array(var2
);
8903 var_listnode2
= var2
;
8904 var_tidnode1
= var_nodearraylist1
;
8906 if (var_tidnode1
== NULL
) {
8907 var4
= 0; /* is null */
8909 var4
= 1; /* arg is null and recv is not */
8912 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_tidnode1
) /* add on <var_listnode2:Array[Object]>*/;
8915 var_node_list
= var_listnode2
;
8916 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction862> */
8917 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
8918 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
8921 /* method parser#ReduceAction862#action for (self: Object, Parser) */
8922 void VIRTUAL_parser__ReduceAction862__action(val
* self
, val
* p0
) {
8923 parser__ReduceAction862__action(self
, p0
);
8926 /* method parser#ReduceAction863#action for (self: ReduceAction863, Parser) */
8927 void parser__ReduceAction863__action(val
* self
, val
* p0
) {
8928 val
* var_p
/* var p: Parser */;
8929 val
* var
/* : null */;
8930 val
* var_node_list
/* var node_list: nullable Object */;
8931 val
* var1
/* : nullable Object */;
8932 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8933 val
* var2
/* : nullable Object */;
8934 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8935 val
* var3
/* : nullable Object */;
8936 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8937 val
* var4
/* : nullable Object */;
8938 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8939 val
* var5
/* : nullable Object */;
8940 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8941 val
* var6
/* : Array[Object] */;
8942 val
* var_listnode3
/* var listnode3: Array[Object] */;
8943 val
* var_listnode1
/* var listnode1: nullable Object */;
8944 short int var7
/* : Bool */;
8947 val
* var_tidnode2
/* var tidnode2: nullable Object */;
8948 val
* var8
/* : Array[Object] */;
8949 val
* var9
/* : null */;
8950 short int var10
/* : Bool */;
8951 long var11
/* : Int */;
8952 long var12
/* : Int */;
8955 var_node_list
= var
;
8956 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8957 var_nodearraylist5
= var1
;
8958 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8959 var_nodearraylist4
= var2
;
8960 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8961 var_nodearraylist3
= var3
;
8962 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8963 var_nodearraylist2
= var4
;
8964 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8965 var_nodearraylist1
= var5
;
8966 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
8967 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
8968 CHECK_NEW_array__Array(var6
);
8969 var_listnode3
= var6
;
8970 var_listnode1
= var_nodearraylist1
;
8971 /* <var_listnode1:nullable Object> isa Array[Object] */
8972 cltype
= type_array__Arraykernel__Object
.color
;
8973 idtype
= type_array__Arraykernel__Object
.id
;
8974 if(var_listnode1
== NULL
) {
8977 if(cltype
>= var_listnode1
->type
->table_size
) {
8980 var7
= var_listnode1
->type
->type_table
[cltype
] == idtype
;
8984 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8985 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28868);
8988 var_tidnode2
= var_nodearraylist5
;
8989 var8
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode1
) /* concat on <self:ReduceAction863>*/;
8990 var_listnode3
= var8
;
8992 if (var_tidnode2
== NULL
) {
8993 var10
= 0; /* is null */
8995 var10
= 1; /* arg is null and recv is not */
8998 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_tidnode2
) /* add on <var_listnode3:Array[Object]>*/;
9001 var_node_list
= var_listnode3
;
9002 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction863> */
9003 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
9004 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
9007 /* method parser#ReduceAction863#action for (self: Object, Parser) */
9008 void VIRTUAL_parser__ReduceAction863__action(val
* self
, val
* p0
) {
9009 parser__ReduceAction863__action(self
, p0
);
9012 /* method parser#ReduceAction864#action for (self: ReduceAction864, Parser) */
9013 void parser__ReduceAction864__action(val
* self
, val
* p0
) {
9014 val
* var_p
/* var p: Parser */;
9015 val
* var
/* : null */;
9016 val
* var_node_list
/* var node_list: nullable Object */;
9017 val
* var1
/* : nullable Object */;
9018 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9019 val
* var2
/* : Array[Object] */;
9020 val
* var_listnode3
/* var listnode3: Array[Object] */;
9021 val
* var_tidnode4
/* var tidnode4: nullable Object */;
9022 short int var3
/* : Bool */;
9025 val
* var4
/* : AModuleName */;
9026 val
* var5
/* : null */;
9027 val
* var_pmodulenamenode1
/* var pmodulenamenode1: nullable AModuleName */;
9028 long var6
/* : Int */;
9029 long var7
/* : Int */;
9032 var_node_list
= var
;
9033 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9034 var_nodearraylist1
= var1
;
9035 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
9036 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
9037 CHECK_NEW_array__Array(var2
);
9038 var_listnode3
= var2
;
9039 var_tidnode4
= var_nodearraylist1
;
9040 /* <var_tidnode4:nullable Object> isa nullable TId */
9041 cltype
= type_nullable_parser_nodes__TId
.color
;
9042 idtype
= type_nullable_parser_nodes__TId
.id
;
9043 if(var_tidnode4
== NULL
) {
9046 if(cltype
>= var_tidnode4
->type
->table_size
) {
9049 var3
= var_tidnode4
->type
->type_table
[cltype
] == idtype
;
9053 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9054 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28886);
9057 var4
= NEW_parser_nodes__AModuleName(&type_parser_nodes__AModuleName
);
9059 ((void (*)(val
*, val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AModuleName__init_amodulename
]))(var4
, var5
, var_listnode3
, var_tidnode4
) /* init_amodulename on <var4:AModuleName>*/;
9060 CHECK_NEW_parser_nodes__AModuleName(var4
);
9061 var_pmodulenamenode1
= var4
;
9062 var_node_list
= var_pmodulenamenode1
;
9063 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction864> */
9064 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
9065 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
9068 /* method parser#ReduceAction864#action for (self: Object, Parser) */
9069 void VIRTUAL_parser__ReduceAction864__action(val
* self
, val
* p0
) {
9070 parser__ReduceAction864__action(self
, p0
);
9073 /* method parser#ReduceAction865#action for (self: ReduceAction865, Parser) */
9074 void parser__ReduceAction865__action(val
* self
, val
* p0
) {
9075 val
* var_p
/* var p: Parser */;
9076 val
* var
/* : null */;
9077 val
* var_node_list
/* var node_list: nullable Object */;
9078 val
* var1
/* : nullable Object */;
9079 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9080 val
* var2
/* : nullable Object */;
9081 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9082 val
* var3
/* : Array[Object] */;
9083 val
* var_listnode4
/* var listnode4: Array[Object] */;
9084 val
* var_listnode3
/* var listnode3: nullable Object */;
9085 short int var4
/* : Bool */;
9088 val
* var5
/* : Array[Object] */;
9089 val
* var_tidnode5
/* var tidnode5: nullable Object */;
9090 short int var6
/* : Bool */;
9093 val
* var9
/* : AModuleName */;
9094 val
* var10
/* : null */;
9095 val
* var_pmodulenamenode1
/* var pmodulenamenode1: nullable AModuleName */;
9096 long var11
/* : Int */;
9097 long var12
/* : 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_nodearraylist2
= var1
;
9103 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9104 var_nodearraylist1
= var2
;
9105 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
9106 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
9107 CHECK_NEW_array__Array(var3
);
9108 var_listnode4
= var3
;
9109 var_listnode3
= var_nodearraylist1
;
9110 /* <var_listnode3:nullable Object> isa Array[Object] */
9111 cltype
= type_array__Arraykernel__Object
.color
;
9112 idtype
= type_array__Arraykernel__Object
.id
;
9113 if(var_listnode3
== NULL
) {
9116 if(cltype
>= var_listnode3
->type
->table_size
) {
9119 var4
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
9123 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9124 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28905);
9127 var5
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction865>*/;
9128 var_listnode4
= var5
;
9129 var_tidnode5
= var_nodearraylist2
;
9130 /* <var_tidnode5:nullable Object> isa nullable TId */
9131 cltype7
= type_nullable_parser_nodes__TId
.color
;
9132 idtype8
= type_nullable_parser_nodes__TId
.id
;
9133 if(var_tidnode5
== NULL
) {
9136 if(cltype7
>= var_tidnode5
->type
->table_size
) {
9139 var6
= var_tidnode5
->type
->type_table
[cltype7
] == idtype8
;
9143 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9144 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28908);
9147 var9
= NEW_parser_nodes__AModuleName(&type_parser_nodes__AModuleName
);
9149 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AModuleName__init_amodulename
]))(var9
, var10
, var_listnode4
, var_tidnode5
) /* init_amodulename on <var9:AModuleName>*/;
9150 CHECK_NEW_parser_nodes__AModuleName(var9
);
9151 var_pmodulenamenode1
= var9
;
9152 var_node_list
= var_pmodulenamenode1
;
9153 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction865> */
9154 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
9155 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
9158 /* method parser#ReduceAction865#action for (self: Object, Parser) */
9159 void VIRTUAL_parser__ReduceAction865__action(val
* self
, val
* p0
) {
9160 parser__ReduceAction865__action(self
, p0
);
9163 /* method parser#ReduceAction866#action for (self: ReduceAction866, Parser) */
9164 void parser__ReduceAction866__action(val
* self
, val
* p0
) {
9165 val
* var_p
/* var p: Parser */;
9166 val
* var
/* : null */;
9167 val
* var_node_list
/* var node_list: nullable Object */;
9168 val
* var1
/* : nullable Object */;
9169 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9170 val
* var2
/* : nullable Object */;
9171 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9172 val
* var3
/* : nullable Object */;
9173 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9174 val
* var4
/* : Array[Object] */;
9175 val
* var_listnode3
/* var listnode3: Array[Object] */;
9176 val
* var_tquadnode2
/* var tquadnode2: nullable Object */;
9177 short int var5
/* : Bool */;
9180 val
* var_tidnode4
/* var tidnode4: nullable Object */;
9181 short int var6
/* : Bool */;
9184 val
* var9
/* : AModuleName */;
9185 val
* var_pmodulenamenode1
/* var pmodulenamenode1: nullable AModuleName */;
9186 long var10
/* : Int */;
9187 long var11
/* : Int */;
9190 var_node_list
= var
;
9191 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9192 var_nodearraylist3
= var1
;
9193 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9194 var_nodearraylist2
= var2
;
9195 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9196 var_nodearraylist1
= var3
;
9197 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
9198 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
9199 CHECK_NEW_array__Array(var4
);
9200 var_listnode3
= var4
;
9201 var_tquadnode2
= var_nodearraylist1
;
9202 /* <var_tquadnode2:nullable Object> isa nullable TQuad */
9203 cltype
= type_nullable_parser_nodes__TQuad
.color
;
9204 idtype
= type_nullable_parser_nodes__TQuad
.id
;
9205 if(var_tquadnode2
== NULL
) {
9208 if(cltype
>= var_tquadnode2
->type
->table_size
) {
9211 var5
= var_tquadnode2
->type
->type_table
[cltype
] == idtype
;
9215 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9216 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28928);
9219 var_tidnode4
= var_nodearraylist3
;
9220 /* <var_tidnode4:nullable Object> isa nullable TId */
9221 cltype7
= type_nullable_parser_nodes__TId
.color
;
9222 idtype8
= type_nullable_parser_nodes__TId
.id
;
9223 if(var_tidnode4
== NULL
) {
9226 if(cltype7
>= var_tidnode4
->type
->table_size
) {
9229 var6
= var_tidnode4
->type
->type_table
[cltype7
] == idtype8
;
9233 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9234 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28930);
9237 var9
= NEW_parser_nodes__AModuleName(&type_parser_nodes__AModuleName
);
9238 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AModuleName__init_amodulename
]))(var9
, var_tquadnode2
, var_listnode3
, var_tidnode4
) /* init_amodulename on <var9:AModuleName>*/;
9239 CHECK_NEW_parser_nodes__AModuleName(var9
);
9240 var_pmodulenamenode1
= var9
;
9241 var_node_list
= var_pmodulenamenode1
;
9242 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction866> */
9243 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
9244 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
9247 /* method parser#ReduceAction866#action for (self: Object, Parser) */
9248 void VIRTUAL_parser__ReduceAction866__action(val
* self
, val
* p0
) {
9249 parser__ReduceAction866__action(self
, p0
);
9252 /* method parser#ReduceAction867#action for (self: ReduceAction867, Parser) */
9253 void parser__ReduceAction867__action(val
* self
, val
* p0
) {
9254 val
* var_p
/* var p: Parser */;
9255 val
* var
/* : null */;
9256 val
* var_node_list
/* var node_list: nullable Object */;
9257 val
* var1
/* : nullable Object */;
9258 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9259 val
* var2
/* : nullable Object */;
9260 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9261 val
* var3
/* : nullable Object */;
9262 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9263 val
* var4
/* : nullable Object */;
9264 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9265 val
* var5
/* : Array[Object] */;
9266 val
* var_listnode4
/* var listnode4: Array[Object] */;
9267 val
* var_tquadnode2
/* var tquadnode2: nullable Object */;
9268 short int var6
/* : Bool */;
9271 val
* var_listnode3
/* var listnode3: nullable Object */;
9272 short int var7
/* : Bool */;
9275 val
* var10
/* : Array[Object] */;
9276 val
* var_tidnode5
/* var tidnode5: nullable Object */;
9277 short int var11
/* : Bool */;
9280 val
* var14
/* : AModuleName */;
9281 val
* var_pmodulenamenode1
/* var pmodulenamenode1: nullable AModuleName */;
9282 long var15
/* : Int */;
9283 long var16
/* : Int */;
9286 var_node_list
= var
;
9287 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9288 var_nodearraylist4
= var1
;
9289 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9290 var_nodearraylist3
= var2
;
9291 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9292 var_nodearraylist2
= var3
;
9293 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9294 var_nodearraylist1
= var4
;
9295 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
9296 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
9297 CHECK_NEW_array__Array(var5
);
9298 var_listnode4
= var5
;
9299 var_tquadnode2
= var_nodearraylist1
;
9300 /* <var_tquadnode2:nullable Object> isa nullable TQuad */
9301 cltype
= type_nullable_parser_nodes__TQuad
.color
;
9302 idtype
= type_nullable_parser_nodes__TQuad
.id
;
9303 if(var_tquadnode2
== NULL
) {
9306 if(cltype
>= var_tquadnode2
->type
->table_size
) {
9309 var6
= var_tquadnode2
->type
->type_table
[cltype
] == idtype
;
9313 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9314 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28951);
9317 var_listnode3
= var_nodearraylist3
;
9318 /* <var_listnode3:nullable Object> isa Array[Object] */
9319 cltype8
= type_array__Arraykernel__Object
.color
;
9320 idtype9
= type_array__Arraykernel__Object
.id
;
9321 if(var_listnode3
== NULL
) {
9324 if(cltype8
>= var_listnode3
->type
->table_size
) {
9327 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
9331 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9332 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28953);
9335 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction867>*/;
9336 var_listnode4
= var10
;
9337 var_tidnode5
= var_nodearraylist4
;
9338 /* <var_tidnode5:nullable Object> isa nullable TId */
9339 cltype12
= type_nullable_parser_nodes__TId
.color
;
9340 idtype13
= type_nullable_parser_nodes__TId
.id
;
9341 if(var_tidnode5
== NULL
) {
9344 if(cltype12
>= var_tidnode5
->type
->table_size
) {
9347 var11
= var_tidnode5
->type
->type_table
[cltype12
] == idtype13
;
9351 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9352 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 28956);
9355 var14
= NEW_parser_nodes__AModuleName(&type_parser_nodes__AModuleName
);
9356 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AModuleName__init_amodulename
]))(var14
, var_tquadnode2
, var_listnode4
, var_tidnode5
) /* init_amodulename on <var14:AModuleName>*/;
9357 CHECK_NEW_parser_nodes__AModuleName(var14
);
9358 var_pmodulenamenode1
= var14
;
9359 var_node_list
= var_pmodulenamenode1
;
9360 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction867> */
9361 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
9362 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
9365 /* method parser#ReduceAction867#action for (self: Object, Parser) */
9366 void VIRTUAL_parser__ReduceAction867__action(val
* self
, val
* p0
) {
9367 parser__ReduceAction867__action(self
, p0
);
9370 /* method parser#ReduceAction868#action for (self: ReduceAction868, Parser) */
9371 void parser__ReduceAction868__action(val
* self
, val
* p0
) {
9372 val
* var_p
/* var p: Parser */;
9373 val
* var
/* : null */;
9374 val
* var_node_list
/* var node_list: nullable Object */;
9375 val
* var1
/* : nullable Object */;
9376 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9377 val
* var2
/* : nullable Object */;
9378 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9379 val
* var3
/* : nullable Object */;
9380 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9381 val
* var_tidnode1
/* var tidnode1: nullable Object */;
9382 long var4
/* : Int */;
9383 long var5
/* : Int */;
9386 var_node_list
= var
;
9387 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9388 var_nodearraylist3
= var1
;
9389 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9390 var_nodearraylist2
= var2
;
9391 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9392 var_nodearraylist1
= var3
;
9393 var_tidnode1
= var_nodearraylist1
;
9394 var_node_list
= var_tidnode1
;
9395 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction868> */
9396 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
9397 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
9400 /* method parser#ReduceAction868#action for (self: Object, Parser) */
9401 void VIRTUAL_parser__ReduceAction868__action(val
* self
, val
* p0
) {
9402 parser__ReduceAction868__action(self
, p0
);
9405 /* method parser#ReduceAction869#action for (self: ReduceAction869, Parser) */
9406 void parser__ReduceAction869__action(val
* self
, val
* p0
) {
9407 val
* var_p
/* var p: Parser */;
9408 val
* var
/* : null */;
9409 val
* var_node_list
/* var node_list: nullable Object */;
9410 val
* var1
/* : nullable Object */;
9411 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9412 val
* var2
/* : nullable Object */;
9413 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9414 val
* var3
/* : nullable Object */;
9415 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9416 val
* var_tclassidnode1
/* var tclassidnode1: nullable Object */;
9417 long var4
/* : Int */;
9418 long var5
/* : Int */;
9421 var_node_list
= var
;
9422 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9423 var_nodearraylist3
= var1
;
9424 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9425 var_nodearraylist2
= var2
;
9426 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9427 var_nodearraylist1
= var3
;
9428 var_tclassidnode1
= var_nodearraylist1
;
9429 var_node_list
= var_tclassidnode1
;
9430 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction869> */
9431 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
9432 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
9435 /* method parser#ReduceAction869#action for (self: Object, Parser) */
9436 void VIRTUAL_parser__ReduceAction869__action(val
* self
, val
* p0
) {
9437 parser__ReduceAction869__action(self
, p0
);
9440 /* method parser#ReduceAction870#action for (self: ReduceAction870, Parser) */
9441 void parser__ReduceAction870__action(val
* self
, val
* p0
) {
9442 val
* var_p
/* var p: Parser */;
9443 val
* var
/* : null */;
9444 val
* var_node_list
/* var node_list: nullable Object */;
9445 val
* var1
/* : nullable Object */;
9446 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9447 long var2
/* : Int */;
9448 long var3
/* : Int */;
9451 var_node_list
= var
;
9452 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9453 var_nodearraylist1
= var1
;
9454 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction870> */
9455 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
9456 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
9459 /* method parser#ReduceAction870#action for (self: Object, Parser) */
9460 void VIRTUAL_parser__ReduceAction870__action(val
* self
, val
* p0
) {
9461 parser__ReduceAction870__action(self
, p0
);
9464 /* method parser#ReduceAction872#action for (self: ReduceAction872, Parser) */
9465 void parser__ReduceAction872__action(val
* self
, val
* p0
) {
9466 val
* var_p
/* var p: Parser */;
9467 val
* var
/* : null */;
9468 val
* var_node_list
/* var node_list: nullable Object */;
9469 val
* var1
/* : nullable Object */;
9470 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9471 val
* var2
/* : Array[Object] */;
9472 val
* var_listnode3
/* var listnode3: Array[Object] */;
9473 val
* var_listnode2
/* var listnode2: nullable Object */;
9474 short int var3
/* : Bool */;
9477 val
* var4
/* : Array[Object] */;
9478 val
* var5
/* : ADoc */;
9479 val
* var_pdocnode1
/* var pdocnode1: nullable ADoc */;
9480 long var6
/* : Int */;
9481 long var7
/* : Int */;
9484 var_node_list
= var
;
9485 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9486 var_nodearraylist1
= var1
;
9487 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
9488 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
9489 CHECK_NEW_array__Array(var2
);
9490 var_listnode3
= var2
;
9491 var_listnode2
= var_nodearraylist1
;
9492 /* <var_listnode2:nullable Object> isa Array[Object] */
9493 cltype
= type_array__Arraykernel__Object
.color
;
9494 idtype
= type_array__Arraykernel__Object
.id
;
9495 if(var_listnode2
== NULL
) {
9498 if(cltype
>= var_listnode2
->type
->table_size
) {
9501 var3
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
9505 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9506 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29009);
9509 var4
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction872>*/;
9510 var_listnode3
= var4
;
9511 var5
= NEW_parser_nodes__ADoc(&type_parser_nodes__ADoc
);
9512 ((void (*)(val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__ADoc__init_adoc
]))(var5
, var_listnode3
) /* init_adoc on <var5:ADoc>*/;
9513 CHECK_NEW_parser_nodes__ADoc(var5
);
9514 var_pdocnode1
= var5
;
9515 var_node_list
= var_pdocnode1
;
9516 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction872> */
9517 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
9518 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
9521 /* method parser#ReduceAction872#action for (self: Object, Parser) */
9522 void VIRTUAL_parser__ReduceAction872__action(val
* self
, val
* p0
) {
9523 parser__ReduceAction872__action(self
, p0
);
9526 /* method parser#ReduceAction873#action for (self: ReduceAction873, Parser) */
9527 void parser__ReduceAction873__action(val
* self
, val
* p0
) {
9528 val
* var_p
/* var p: Parser */;
9529 val
* var
/* : null */;
9530 val
* var_node_list
/* var node_list: nullable Object */;
9531 val
* var1
/* : nullable Object */;
9532 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9533 val
* var2
/* : nullable Object */;
9534 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9535 val
* var3
/* : Array[Object] */;
9536 val
* var_listnode3
/* var listnode3: Array[Object] */;
9537 val
* var_listnode2
/* var listnode2: nullable Object */;
9538 short int var4
/* : Bool */;
9541 val
* var5
/* : Array[Object] */;
9542 val
* var6
/* : ADoc */;
9543 val
* var_pdocnode1
/* var pdocnode1: nullable ADoc */;
9544 long var7
/* : Int */;
9545 long var8
/* : Int */;
9548 var_node_list
= var
;
9549 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9550 var_nodearraylist2
= var1
;
9551 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9552 var_nodearraylist1
= var2
;
9553 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
9554 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
9555 CHECK_NEW_array__Array(var3
);
9556 var_listnode3
= var3
;
9557 var_listnode2
= var_nodearraylist2
;
9558 /* <var_listnode2:nullable Object> isa Array[Object] */
9559 cltype
= type_array__Arraykernel__Object
.color
;
9560 idtype
= type_array__Arraykernel__Object
.id
;
9561 if(var_listnode2
== NULL
) {
9564 if(cltype
>= var_listnode2
->type
->table_size
) {
9567 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
9571 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9572 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29027);
9575 var5
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction873>*/;
9576 var_listnode3
= var5
;
9577 var6
= NEW_parser_nodes__ADoc(&type_parser_nodes__ADoc
);
9578 ((void (*)(val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__ADoc__init_adoc
]))(var6
, var_listnode3
) /* init_adoc on <var6:ADoc>*/;
9579 CHECK_NEW_parser_nodes__ADoc(var6
);
9580 var_pdocnode1
= var6
;
9581 var_node_list
= var_pdocnode1
;
9582 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction873> */
9583 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
9584 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
9587 /* method parser#ReduceAction873#action for (self: Object, Parser) */
9588 void VIRTUAL_parser__ReduceAction873__action(val
* self
, val
* p0
) {
9589 parser__ReduceAction873__action(self
, p0
);
9592 /* method parser#ReduceAction875#action for (self: ReduceAction875, Parser) */
9593 void parser__ReduceAction875__action(val
* self
, val
* p0
) {
9594 val
* var_p
/* var p: Parser */;
9595 val
* var
/* : null */;
9596 val
* var_node_list
/* var node_list: nullable Object */;
9597 val
* var1
/* : null */;
9598 long var2
/* : Int */;
9599 long var3
/* : Int */;
9602 var_node_list
= var
;
9604 var_node_list
= var1
;
9605 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction875> */
9606 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
9607 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
9610 /* method parser#ReduceAction875#action for (self: Object, Parser) */
9611 void VIRTUAL_parser__ReduceAction875__action(val
* self
, val
* p0
) {
9612 parser__ReduceAction875__action(self
, p0
);
9615 /* method parser#ReduceAction876#action for (self: ReduceAction876, Parser) */
9616 void parser__ReduceAction876__action(val
* self
, val
* p0
) {
9617 val
* var_p
/* var p: Parser */;
9618 val
* var
/* : null */;
9619 val
* var_node_list
/* var node_list: nullable Object */;
9620 val
* var1
/* : nullable Object */;
9621 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9622 val
* var_pdocnode1
/* var pdocnode1: nullable Object */;
9623 long var2
/* : Int */;
9624 long var3
/* : Int */;
9627 var_node_list
= var
;
9628 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9629 var_nodearraylist1
= var1
;
9630 var_pdocnode1
= var_nodearraylist1
;
9631 var_node_list
= var_pdocnode1
;
9632 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction876> */
9633 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
9634 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
9637 /* method parser#ReduceAction876#action for (self: Object, Parser) */
9638 void VIRTUAL_parser__ReduceAction876__action(val
* self
, val
* p0
) {
9639 parser__ReduceAction876__action(self
, p0
);
9642 /* method parser#ReduceAction877#action for (self: ReduceAction877, Parser) */
9643 void parser__ReduceAction877__action(val
* self
, val
* p0
) {
9644 val
* var_p
/* var p: Parser */;
9645 val
* var
/* : null */;
9646 val
* var_node_list
/* var node_list: nullable Object */;
9647 val
* var1
/* : nullable Object */;
9648 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9649 val
* var2
/* : nullable Object */;
9650 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9651 long var3
/* : Int */;
9652 long var4
/* : Int */;
9655 var_node_list
= var
;
9656 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9657 var_nodearraylist2
= var1
;
9658 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9659 var_nodearraylist1
= var2
;
9660 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction877> */
9661 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
9662 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
9665 /* method parser#ReduceAction877#action for (self: Object, Parser) */
9666 void VIRTUAL_parser__ReduceAction877__action(val
* self
, val
* p0
) {
9667 parser__ReduceAction877__action(self
, p0
);
9670 /* method parser#ReduceAction878#action for (self: ReduceAction878, Parser) */
9671 void parser__ReduceAction878__action(val
* self
, val
* p0
) {
9672 val
* var_p
/* var p: Parser */;
9673 val
* var
/* : null */;
9674 val
* var_node_list
/* var node_list: nullable Object */;
9675 val
* var1
/* : nullable Object */;
9676 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9677 val
* var2
/* : nullable Object */;
9678 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9679 val
* var3
/* : nullable Object */;
9680 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9681 long var4
/* : Int */;
9682 long var5
/* : Int */;
9685 var_node_list
= var
;
9686 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9687 var_nodearraylist3
= var1
;
9688 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9689 var_nodearraylist2
= var2
;
9690 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9691 var_nodearraylist1
= var3
;
9692 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction878> */
9693 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
9694 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
9697 /* method parser#ReduceAction878#action for (self: Object, Parser) */
9698 void VIRTUAL_parser__ReduceAction878__action(val
* self
, val
* p0
) {
9699 parser__ReduceAction878__action(self
, p0
);
9702 /* method parser#ReduceAction1223#action for (self: ReduceAction1223, Parser) */
9703 void parser__ReduceAction1223__action(val
* self
, val
* p0
) {
9704 val
* var_p
/* var p: Parser */;
9705 val
* var
/* : null */;
9706 val
* var_node_list
/* var node_list: nullable Object */;
9707 val
* var1
/* : nullable Object */;
9708 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9709 val
* var2
/* : nullable Object */;
9710 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9711 val
* var3
/* : nullable Object */;
9712 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9713 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
9714 short int var4
/* : Bool */;
9717 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9718 short int var5
/* : Bool */;
9721 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
9722 short int var8
/* : Bool */;
9725 val
* var11
/* : AIssetAttrExpr */;
9726 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
9727 long var12
/* : Int */;
9728 long var13
/* : Int */;
9731 var_node_list
= var
;
9732 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9733 var_nodearraylist3
= var1
;
9734 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9735 var_nodearraylist2
= var2
;
9736 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9737 var_nodearraylist1
= var3
;
9738 var_tkwissetnode2
= var_nodearraylist1
;
9739 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
9740 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
9741 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
9742 if(var_tkwissetnode2
== NULL
) {
9745 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
9748 var4
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
9752 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9753 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29086);
9756 var_pexprnode3
= var_nodearraylist2
;
9757 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9758 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
9759 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
9760 if(var_pexprnode3
== NULL
) {
9763 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
9766 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
9770 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9771 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29088);
9774 var_tattridnode4
= var_nodearraylist3
;
9775 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
9776 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
9777 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
9778 if(var_tattridnode4
== NULL
) {
9781 if(cltype9
>= var_tattridnode4
->type
->table_size
) {
9784 var8
= var_tattridnode4
->type
->type_table
[cltype9
] == idtype10
;
9788 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9789 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29090);
9792 var11
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
9793 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var11
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var11:AIssetAttrExpr>*/;
9794 CHECK_NEW_parser_nodes__AIssetAttrExpr(var11
);
9795 var_pexprnode1
= var11
;
9796 var_node_list
= var_pexprnode1
;
9797 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction1223> */
9798 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
9799 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
9802 /* method parser#ReduceAction1223#action for (self: Object, Parser) */
9803 void VIRTUAL_parser__ReduceAction1223__action(val
* self
, val
* p0
) {
9804 parser__ReduceAction1223__action(self
, p0
);
9807 /* method parser#ReduceAction1224#action for (self: ReduceAction1224, Parser) */
9808 void parser__ReduceAction1224__action(val
* self
, val
* p0
) {
9809 val
* var_p
/* var p: Parser */;
9810 val
* var
/* : null */;
9811 val
* var_node_list
/* var node_list: nullable Object */;
9812 val
* var1
/* : nullable Object */;
9813 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9814 val
* var2
/* : nullable Object */;
9815 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9816 val
* var3
/* : nullable Object */;
9817 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9818 val
* var4
/* : nullable Object */;
9819 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9820 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
9821 short int var5
/* : Bool */;
9824 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9825 short int var6
/* : Bool */;
9828 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
9829 short int var9
/* : Bool */;
9832 val
* var12
/* : AIssetAttrExpr */;
9833 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
9834 long var13
/* : Int */;
9835 long var14
/* : Int */;
9838 var_node_list
= var
;
9839 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9840 var_nodearraylist4
= var1
;
9841 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9842 var_nodearraylist3
= var2
;
9843 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9844 var_nodearraylist2
= var3
;
9845 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9846 var_nodearraylist1
= var4
;
9847 var_tkwissetnode2
= var_nodearraylist1
;
9848 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
9849 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
9850 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
9851 if(var_tkwissetnode2
== NULL
) {
9854 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
9857 var5
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
9861 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9862 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29110);
9865 var_pexprnode3
= var_nodearraylist2
;
9866 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9867 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
9868 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
9869 if(var_pexprnode3
== NULL
) {
9872 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
9875 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
9879 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9880 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29112);
9883 var_tattridnode4
= var_nodearraylist4
;
9884 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
9885 cltype10
= type_nullable_parser_nodes__TAttrid
.color
;
9886 idtype11
= type_nullable_parser_nodes__TAttrid
.id
;
9887 if(var_tattridnode4
== NULL
) {
9890 if(cltype10
>= var_tattridnode4
->type
->table_size
) {
9893 var9
= var_tattridnode4
->type
->type_table
[cltype10
] == idtype11
;
9897 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9898 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29114);
9901 var12
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
9902 ((void (*)(val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var12
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var12:AIssetAttrExpr>*/;
9903 CHECK_NEW_parser_nodes__AIssetAttrExpr(var12
);
9904 var_pexprnode1
= var12
;
9905 var_node_list
= var_pexprnode1
;
9906 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction1224> */
9907 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
9908 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
9911 /* method parser#ReduceAction1224#action for (self: Object, Parser) */
9912 void VIRTUAL_parser__ReduceAction1224__action(val
* self
, val
* p0
) {
9913 parser__ReduceAction1224__action(self
, p0
);
9916 /* method parser#ReduceAction1227#action for (self: ReduceAction1227, Parser) */
9917 void parser__ReduceAction1227__action(val
* self
, val
* p0
) {
9918 val
* var_p
/* var p: Parser */;
9919 val
* var
/* : null */;
9920 val
* var_node_list
/* var node_list: nullable Object */;
9921 val
* var1
/* : nullable Object */;
9922 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9923 val
* var2
/* : nullable Object */;
9924 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9925 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9926 short int var3
/* : Bool */;
9929 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
9930 short int var4
/* : Bool */;
9933 val
* var7
/* : AAttrExpr */;
9934 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
9935 long var8
/* : Int */;
9936 long var9
/* : Int */;
9939 var_node_list
= var
;
9940 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9941 var_nodearraylist2
= var1
;
9942 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9943 var_nodearraylist1
= var2
;
9944 var_pexprnode2
= var_nodearraylist1
;
9945 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9946 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9947 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9948 if(var_pexprnode2
== NULL
) {
9951 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9954 var3
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9958 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9959 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29132);
9962 var_tattridnode3
= var_nodearraylist2
;
9963 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
9964 cltype5
= type_nullable_parser_nodes__TAttrid
.color
;
9965 idtype6
= type_nullable_parser_nodes__TAttrid
.id
;
9966 if(var_tattridnode3
== NULL
) {
9969 if(cltype5
>= var_tattridnode3
->type
->table_size
) {
9972 var4
= var_tattridnode3
->type
->type_table
[cltype5
] == idtype6
;
9976 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9977 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 29134);
9980 var7
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
9981 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var7
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var7:AAttrExpr>*/;
9982 CHECK_NEW_parser_nodes__AAttrExpr(var7
);
9983 var_pexprnode1
= var7
;
9984 var_node_list
= var_pexprnode1
;
9985 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction1227> */
9986 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
9987 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
9990 /* method parser#ReduceAction1227#action for (self: Object, Parser) */
9991 void VIRTUAL_parser__ReduceAction1227__action(val
* self
, val
* p0
) {
9992 parser__ReduceAction1227__action(self
, p0
);