1 #include "parser.sep.0.h"
2 /* method parser#ReduceAction526#action for (self: ReduceAction526, Parser) */
3 void parser__ReduceAction526__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_nodearraylist2
/* var nodearraylist2: nullable Object */;
9 val
* var2
/* : nullable Object */;
10 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
11 val
* var_tkwintrudenode2
/* var tkwintrudenode2: nullable Object */;
12 short int var3
/* : Bool */;
15 val
* var4
/* : AIntrudeVisibility */;
16 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable AIntrudeVisibility */;
17 long var5
/* : Int */;
18 long var6
/* : Int */;
22 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
23 var_nodearraylist2
= var1
;
24 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
25 var_nodearraylist1
= var2
;
26 var_tkwintrudenode2
= var_nodearraylist1
;
27 /* <var_tkwintrudenode2:nullable Object> isa nullable TKwintrude */
28 cltype
= type_nullable_parser_nodes__TKwintrude
.color
;
29 idtype
= type_nullable_parser_nodes__TKwintrude
.id
;
30 if(var_tkwintrudenode2
== NULL
) {
33 if(cltype
>= var_tkwintrudenode2
->type
->table_size
) {
36 var3
= var_tkwintrudenode2
->type
->type_table
[cltype
] == idtype
;
40 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 22928);
43 var4
= NEW_parser_nodes__AIntrudeVisibility(&type_parser_nodes__AIntrudeVisibility
);
44 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AIntrudeVisibility__init_aintrudevisibility
]))(var4
, var_tkwintrudenode2
) /* init_aintrudevisibility on <var4:AIntrudeVisibility>*/;
45 CHECK_NEW_parser_nodes__AIntrudeVisibility(var4
);
46 var_pvisibilitynode1
= var4
;
47 var_node_list
= var_pvisibilitynode1
;
48 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction526> */
49 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
50 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
53 /* method parser#ReduceAction526#action for (self: Object, Parser) */
54 void VIRTUAL_parser__ReduceAction526__action(val
* self
, val
* p0
) {
55 parser__ReduceAction526__action(self
, p0
);
58 /* method parser#ReduceAction527#action for (self: ReduceAction527, Parser) */
59 void parser__ReduceAction527__action(val
* self
, val
* p0
) {
60 val
* var_p
/* var p: Parser */;
61 val
* var
/* : null */;
62 val
* var_node_list
/* var node_list: nullable Object */;
63 val
* var1
/* : nullable Object */;
64 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
65 val
* var_tidnode2
/* var tidnode2: nullable Object */;
66 short int var2
/* : Bool */;
69 val
* var3
/* : AIdMethid */;
70 val
* var_pmethidnode1
/* var pmethidnode1: nullable AIdMethid */;
71 long var4
/* : Int */;
72 long var5
/* : Int */;
76 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
77 var_nodearraylist1
= var1
;
78 var_tidnode2
= var_nodearraylist1
;
79 /* <var_tidnode2:nullable Object> isa nullable TId */
80 cltype
= type_nullable_parser_nodes__TId
.color
;
81 idtype
= type_nullable_parser_nodes__TId
.id
;
82 if(var_tidnode2
== NULL
) {
85 if(cltype
>= var_tidnode2
->type
->table_size
) {
88 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
92 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 22943);
95 var3
= NEW_parser_nodes__AIdMethid(&type_parser_nodes__AIdMethid
);
96 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AIdMethid__init_aidmethid
]))(var3
, var_tidnode2
) /* init_aidmethid on <var3:AIdMethid>*/;
97 CHECK_NEW_parser_nodes__AIdMethid(var3
);
98 var_pmethidnode1
= var3
;
99 var_node_list
= var_pmethidnode1
;
100 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction527> */
101 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
102 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
105 /* method parser#ReduceAction527#action for (self: Object, Parser) */
106 void VIRTUAL_parser__ReduceAction527__action(val
* self
, val
* p0
) {
107 parser__ReduceAction527__action(self
, p0
);
110 /* method parser#ReduceAction528#action for (self: ReduceAction528, Parser) */
111 void parser__ReduceAction528__action(val
* self
, val
* p0
) {
112 val
* var_p
/* var p: Parser */;
113 val
* var
/* : null */;
114 val
* var_node_list
/* var node_list: nullable Object */;
115 val
* var1
/* : nullable Object */;
116 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
117 val
* var_tplusnode2
/* var tplusnode2: nullable Object */;
118 short int var2
/* : Bool */;
121 val
* var3
/* : APlusMethid */;
122 val
* var_pmethidnode1
/* var pmethidnode1: nullable APlusMethid */;
123 long var4
/* : Int */;
124 long var5
/* : Int */;
128 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
129 var_nodearraylist1
= var1
;
130 var_tplusnode2
= var_nodearraylist1
;
131 /* <var_tplusnode2:nullable Object> isa nullable TPlus */
132 cltype
= type_nullable_parser_nodes__TPlus
.color
;
133 idtype
= type_nullable_parser_nodes__TPlus
.id
;
134 if(var_tplusnode2
== NULL
) {
137 if(cltype
>= var_tplusnode2
->type
->table_size
) {
140 var2
= var_tplusnode2
->type
->type_table
[cltype
] == idtype
;
144 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 22958);
147 var3
= NEW_parser_nodes__APlusMethid(&type_parser_nodes__APlusMethid
);
148 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APlusMethid__init_aplusmethid
]))(var3
, var_tplusnode2
) /* init_aplusmethid on <var3:APlusMethid>*/;
149 CHECK_NEW_parser_nodes__APlusMethid(var3
);
150 var_pmethidnode1
= var3
;
151 var_node_list
= var_pmethidnode1
;
152 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction528> */
153 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
154 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
157 /* method parser#ReduceAction528#action for (self: Object, Parser) */
158 void VIRTUAL_parser__ReduceAction528__action(val
* self
, val
* p0
) {
159 parser__ReduceAction528__action(self
, p0
);
162 /* method parser#ReduceAction529#action for (self: ReduceAction529, Parser) */
163 void parser__ReduceAction529__action(val
* self
, val
* p0
) {
164 val
* var_p
/* var p: Parser */;
165 val
* var
/* : null */;
166 val
* var_node_list
/* var node_list: nullable Object */;
167 val
* var1
/* : nullable Object */;
168 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
169 val
* var_tminusnode2
/* var tminusnode2: nullable Object */;
170 short int var2
/* : Bool */;
173 val
* var3
/* : AMinusMethid */;
174 val
* var_pmethidnode1
/* var pmethidnode1: nullable AMinusMethid */;
175 long var4
/* : Int */;
176 long var5
/* : Int */;
180 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
181 var_nodearraylist1
= var1
;
182 var_tminusnode2
= var_nodearraylist1
;
183 /* <var_tminusnode2:nullable Object> isa nullable TMinus */
184 cltype
= type_nullable_parser_nodes__TMinus
.color
;
185 idtype
= type_nullable_parser_nodes__TMinus
.id
;
186 if(var_tminusnode2
== NULL
) {
189 if(cltype
>= var_tminusnode2
->type
->table_size
) {
192 var2
= var_tminusnode2
->type
->type_table
[cltype
] == idtype
;
196 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 22973);
199 var3
= NEW_parser_nodes__AMinusMethid(&type_parser_nodes__AMinusMethid
);
200 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AMinusMethid__init_aminusmethid
]))(var3
, var_tminusnode2
) /* init_aminusmethid on <var3:AMinusMethid>*/;
201 CHECK_NEW_parser_nodes__AMinusMethid(var3
);
202 var_pmethidnode1
= var3
;
203 var_node_list
= var_pmethidnode1
;
204 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction529> */
205 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
206 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
209 /* method parser#ReduceAction529#action for (self: Object, Parser) */
210 void VIRTUAL_parser__ReduceAction529__action(val
* self
, val
* p0
) {
211 parser__ReduceAction529__action(self
, p0
);
214 /* method parser#ReduceAction530#action for (self: ReduceAction530, Parser) */
215 void parser__ReduceAction530__action(val
* self
, val
* p0
) {
216 val
* var_p
/* var p: Parser */;
217 val
* var
/* : null */;
218 val
* var_node_list
/* var node_list: nullable Object */;
219 val
* var1
/* : nullable Object */;
220 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
221 val
* var_tstarnode2
/* var tstarnode2: nullable Object */;
222 short int var2
/* : Bool */;
225 val
* var3
/* : AStarMethid */;
226 val
* var_pmethidnode1
/* var pmethidnode1: nullable AStarMethid */;
227 long var4
/* : Int */;
228 long var5
/* : Int */;
232 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
233 var_nodearraylist1
= var1
;
234 var_tstarnode2
= var_nodearraylist1
;
235 /* <var_tstarnode2:nullable Object> isa nullable TStar */
236 cltype
= type_nullable_parser_nodes__TStar
.color
;
237 idtype
= type_nullable_parser_nodes__TStar
.id
;
238 if(var_tstarnode2
== NULL
) {
241 if(cltype
>= var_tstarnode2
->type
->table_size
) {
244 var2
= var_tstarnode2
->type
->type_table
[cltype
] == idtype
;
248 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 22988);
251 var3
= NEW_parser_nodes__AStarMethid(&type_parser_nodes__AStarMethid
);
252 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStarMethid__init_astarmethid
]))(var3
, var_tstarnode2
) /* init_astarmethid on <var3:AStarMethid>*/;
253 CHECK_NEW_parser_nodes__AStarMethid(var3
);
254 var_pmethidnode1
= var3
;
255 var_node_list
= var_pmethidnode1
;
256 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction530> */
257 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
258 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
261 /* method parser#ReduceAction530#action for (self: Object, Parser) */
262 void VIRTUAL_parser__ReduceAction530__action(val
* self
, val
* p0
) {
263 parser__ReduceAction530__action(self
, p0
);
266 /* method parser#ReduceAction531#action for (self: ReduceAction531, Parser) */
267 void parser__ReduceAction531__action(val
* self
, val
* p0
) {
268 val
* var_p
/* var p: Parser */;
269 val
* var
/* : null */;
270 val
* var_node_list
/* var node_list: nullable Object */;
271 val
* var1
/* : nullable Object */;
272 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
273 val
* var_tslashnode2
/* var tslashnode2: nullable Object */;
274 short int var2
/* : Bool */;
277 val
* var3
/* : ASlashMethid */;
278 val
* var_pmethidnode1
/* var pmethidnode1: nullable ASlashMethid */;
279 long var4
/* : Int */;
280 long var5
/* : Int */;
284 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
285 var_nodearraylist1
= var1
;
286 var_tslashnode2
= var_nodearraylist1
;
287 /* <var_tslashnode2:nullable Object> isa nullable TSlash */
288 cltype
= type_nullable_parser_nodes__TSlash
.color
;
289 idtype
= type_nullable_parser_nodes__TSlash
.id
;
290 if(var_tslashnode2
== NULL
) {
293 if(cltype
>= var_tslashnode2
->type
->table_size
) {
296 var2
= var_tslashnode2
->type
->type_table
[cltype
] == idtype
;
300 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23003);
303 var3
= NEW_parser_nodes__ASlashMethid(&type_parser_nodes__ASlashMethid
);
304 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASlashMethid__init_aslashmethid
]))(var3
, var_tslashnode2
) /* init_aslashmethid on <var3:ASlashMethid>*/;
305 CHECK_NEW_parser_nodes__ASlashMethid(var3
);
306 var_pmethidnode1
= var3
;
307 var_node_list
= var_pmethidnode1
;
308 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction531> */
309 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
310 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
313 /* method parser#ReduceAction531#action for (self: Object, Parser) */
314 void VIRTUAL_parser__ReduceAction531__action(val
* self
, val
* p0
) {
315 parser__ReduceAction531__action(self
, p0
);
318 /* method parser#ReduceAction532#action for (self: ReduceAction532, Parser) */
319 void parser__ReduceAction532__action(val
* self
, val
* p0
) {
320 val
* var_p
/* var p: Parser */;
321 val
* var
/* : null */;
322 val
* var_node_list
/* var node_list: nullable Object */;
323 val
* var1
/* : nullable Object */;
324 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
325 val
* var_tpercentnode2
/* var tpercentnode2: nullable Object */;
326 short int var2
/* : Bool */;
329 val
* var3
/* : APercentMethid */;
330 val
* var_pmethidnode1
/* var pmethidnode1: nullable APercentMethid */;
331 long var4
/* : Int */;
332 long var5
/* : Int */;
336 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
337 var_nodearraylist1
= var1
;
338 var_tpercentnode2
= var_nodearraylist1
;
339 /* <var_tpercentnode2:nullable Object> isa nullable TPercent */
340 cltype
= type_nullable_parser_nodes__TPercent
.color
;
341 idtype
= type_nullable_parser_nodes__TPercent
.id
;
342 if(var_tpercentnode2
== NULL
) {
345 if(cltype
>= var_tpercentnode2
->type
->table_size
) {
348 var2
= var_tpercentnode2
->type
->type_table
[cltype
] == idtype
;
352 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23018);
355 var3
= NEW_parser_nodes__APercentMethid(&type_parser_nodes__APercentMethid
);
356 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APercentMethid__init_apercentmethid
]))(var3
, var_tpercentnode2
) /* init_apercentmethid on <var3:APercentMethid>*/;
357 CHECK_NEW_parser_nodes__APercentMethid(var3
);
358 var_pmethidnode1
= var3
;
359 var_node_list
= var_pmethidnode1
;
360 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction532> */
361 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
362 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
365 /* method parser#ReduceAction532#action for (self: Object, Parser) */
366 void VIRTUAL_parser__ReduceAction532__action(val
* self
, val
* p0
) {
367 parser__ReduceAction532__action(self
, p0
);
370 /* method parser#ReduceAction533#action for (self: ReduceAction533, Parser) */
371 void parser__ReduceAction533__action(val
* self
, val
* p0
) {
372 val
* var_p
/* var p: Parser */;
373 val
* var
/* : null */;
374 val
* var_node_list
/* var node_list: nullable Object */;
375 val
* var1
/* : nullable Object */;
376 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
377 val
* var_teqnode2
/* var teqnode2: nullable Object */;
378 short int var2
/* : Bool */;
381 val
* var3
/* : AEqMethid */;
382 val
* var_pmethidnode1
/* var pmethidnode1: nullable AEqMethid */;
383 long var4
/* : Int */;
384 long var5
/* : Int */;
388 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
389 var_nodearraylist1
= var1
;
390 var_teqnode2
= var_nodearraylist1
;
391 /* <var_teqnode2:nullable Object> isa nullable TEq */
392 cltype
= type_nullable_parser_nodes__TEq
.color
;
393 idtype
= type_nullable_parser_nodes__TEq
.id
;
394 if(var_teqnode2
== NULL
) {
397 if(cltype
>= var_teqnode2
->type
->table_size
) {
400 var2
= var_teqnode2
->type
->type_table
[cltype
] == idtype
;
404 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23033);
407 var3
= NEW_parser_nodes__AEqMethid(&type_parser_nodes__AEqMethid
);
408 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AEqMethid__init_aeqmethid
]))(var3
, var_teqnode2
) /* init_aeqmethid on <var3:AEqMethid>*/;
409 CHECK_NEW_parser_nodes__AEqMethid(var3
);
410 var_pmethidnode1
= var3
;
411 var_node_list
= var_pmethidnode1
;
412 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction533> */
413 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
414 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
417 /* method parser#ReduceAction533#action for (self: Object, Parser) */
418 void VIRTUAL_parser__ReduceAction533__action(val
* self
, val
* p0
) {
419 parser__ReduceAction533__action(self
, p0
);
422 /* method parser#ReduceAction534#action for (self: ReduceAction534, Parser) */
423 void parser__ReduceAction534__action(val
* self
, val
* p0
) {
424 val
* var_p
/* var p: Parser */;
425 val
* var
/* : null */;
426 val
* var_node_list
/* var node_list: nullable Object */;
427 val
* var1
/* : nullable Object */;
428 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
429 val
* var_tnenode2
/* var tnenode2: nullable Object */;
430 short int var2
/* : Bool */;
433 val
* var3
/* : ANeMethid */;
434 val
* var_pmethidnode1
/* var pmethidnode1: nullable ANeMethid */;
435 long var4
/* : Int */;
436 long var5
/* : Int */;
440 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
441 var_nodearraylist1
= var1
;
442 var_tnenode2
= var_nodearraylist1
;
443 /* <var_tnenode2:nullable Object> isa nullable TNe */
444 cltype
= type_nullable_parser_nodes__TNe
.color
;
445 idtype
= type_nullable_parser_nodes__TNe
.id
;
446 if(var_tnenode2
== NULL
) {
449 if(cltype
>= var_tnenode2
->type
->table_size
) {
452 var2
= var_tnenode2
->type
->type_table
[cltype
] == idtype
;
456 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23048);
459 var3
= NEW_parser_nodes__ANeMethid(&type_parser_nodes__ANeMethid
);
460 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ANeMethid__init_anemethid
]))(var3
, var_tnenode2
) /* init_anemethid on <var3:ANeMethid>*/;
461 CHECK_NEW_parser_nodes__ANeMethid(var3
);
462 var_pmethidnode1
= var3
;
463 var_node_list
= var_pmethidnode1
;
464 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction534> */
465 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
466 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
469 /* method parser#ReduceAction534#action for (self: Object, Parser) */
470 void VIRTUAL_parser__ReduceAction534__action(val
* self
, val
* p0
) {
471 parser__ReduceAction534__action(self
, p0
);
474 /* method parser#ReduceAction535#action for (self: ReduceAction535, Parser) */
475 void parser__ReduceAction535__action(val
* self
, val
* p0
) {
476 val
* var_p
/* var p: Parser */;
477 val
* var
/* : null */;
478 val
* var_node_list
/* var node_list: nullable Object */;
479 val
* var1
/* : nullable Object */;
480 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
481 val
* var_tlenode2
/* var tlenode2: nullable Object */;
482 short int var2
/* : Bool */;
485 val
* var3
/* : ALeMethid */;
486 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALeMethid */;
487 long var4
/* : Int */;
488 long var5
/* : Int */;
492 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
493 var_nodearraylist1
= var1
;
494 var_tlenode2
= var_nodearraylist1
;
495 /* <var_tlenode2:nullable Object> isa nullable TLe */
496 cltype
= type_nullable_parser_nodes__TLe
.color
;
497 idtype
= type_nullable_parser_nodes__TLe
.id
;
498 if(var_tlenode2
== NULL
) {
501 if(cltype
>= var_tlenode2
->type
->table_size
) {
504 var2
= var_tlenode2
->type
->type_table
[cltype
] == idtype
;
508 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23063);
511 var3
= NEW_parser_nodes__ALeMethid(&type_parser_nodes__ALeMethid
);
512 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALeMethid__init_alemethid
]))(var3
, var_tlenode2
) /* init_alemethid on <var3:ALeMethid>*/;
513 CHECK_NEW_parser_nodes__ALeMethid(var3
);
514 var_pmethidnode1
= var3
;
515 var_node_list
= var_pmethidnode1
;
516 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction535> */
517 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
518 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
521 /* method parser#ReduceAction535#action for (self: Object, Parser) */
522 void VIRTUAL_parser__ReduceAction535__action(val
* self
, val
* p0
) {
523 parser__ReduceAction535__action(self
, p0
);
526 /* method parser#ReduceAction536#action for (self: ReduceAction536, Parser) */
527 void parser__ReduceAction536__action(val
* self
, val
* p0
) {
528 val
* var_p
/* var p: Parser */;
529 val
* var
/* : null */;
530 val
* var_node_list
/* var node_list: nullable Object */;
531 val
* var1
/* : nullable Object */;
532 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
533 val
* var_tgenode2
/* var tgenode2: nullable Object */;
534 short int var2
/* : Bool */;
537 val
* var3
/* : AGeMethid */;
538 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGeMethid */;
539 long var4
/* : Int */;
540 long var5
/* : Int */;
544 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
545 var_nodearraylist1
= var1
;
546 var_tgenode2
= var_nodearraylist1
;
547 /* <var_tgenode2:nullable Object> isa nullable TGe */
548 cltype
= type_nullable_parser_nodes__TGe
.color
;
549 idtype
= type_nullable_parser_nodes__TGe
.id
;
550 if(var_tgenode2
== NULL
) {
553 if(cltype
>= var_tgenode2
->type
->table_size
) {
556 var2
= var_tgenode2
->type
->type_table
[cltype
] == idtype
;
560 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23078);
563 var3
= NEW_parser_nodes__AGeMethid(&type_parser_nodes__AGeMethid
);
564 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGeMethid__init_agemethid
]))(var3
, var_tgenode2
) /* init_agemethid on <var3:AGeMethid>*/;
565 CHECK_NEW_parser_nodes__AGeMethid(var3
);
566 var_pmethidnode1
= var3
;
567 var_node_list
= var_pmethidnode1
;
568 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction536> */
569 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
570 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
573 /* method parser#ReduceAction536#action for (self: Object, Parser) */
574 void VIRTUAL_parser__ReduceAction536__action(val
* self
, val
* p0
) {
575 parser__ReduceAction536__action(self
, p0
);
578 /* method parser#ReduceAction537#action for (self: ReduceAction537, Parser) */
579 void parser__ReduceAction537__action(val
* self
, val
* p0
) {
580 val
* var_p
/* var p: Parser */;
581 val
* var
/* : null */;
582 val
* var_node_list
/* var node_list: nullable Object */;
583 val
* var1
/* : nullable Object */;
584 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
585 val
* var_tltnode2
/* var tltnode2: nullable Object */;
586 short int var2
/* : Bool */;
589 val
* var3
/* : ALtMethid */;
590 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALtMethid */;
591 long var4
/* : Int */;
592 long var5
/* : Int */;
596 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
597 var_nodearraylist1
= var1
;
598 var_tltnode2
= var_nodearraylist1
;
599 /* <var_tltnode2:nullable Object> isa nullable TLt */
600 cltype
= type_nullable_parser_nodes__TLt
.color
;
601 idtype
= type_nullable_parser_nodes__TLt
.id
;
602 if(var_tltnode2
== NULL
) {
605 if(cltype
>= var_tltnode2
->type
->table_size
) {
608 var2
= var_tltnode2
->type
->type_table
[cltype
] == idtype
;
612 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23093);
615 var3
= NEW_parser_nodes__ALtMethid(&type_parser_nodes__ALtMethid
);
616 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALtMethid__init_altmethid
]))(var3
, var_tltnode2
) /* init_altmethid on <var3:ALtMethid>*/;
617 CHECK_NEW_parser_nodes__ALtMethid(var3
);
618 var_pmethidnode1
= var3
;
619 var_node_list
= var_pmethidnode1
;
620 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction537> */
621 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
622 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
625 /* method parser#ReduceAction537#action for (self: Object, Parser) */
626 void VIRTUAL_parser__ReduceAction537__action(val
* self
, val
* p0
) {
627 parser__ReduceAction537__action(self
, p0
);
630 /* method parser#ReduceAction538#action for (self: ReduceAction538, Parser) */
631 void parser__ReduceAction538__action(val
* self
, val
* p0
) {
632 val
* var_p
/* var p: Parser */;
633 val
* var
/* : null */;
634 val
* var_node_list
/* var node_list: nullable Object */;
635 val
* var1
/* : nullable Object */;
636 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
637 val
* var_tgtnode2
/* var tgtnode2: nullable Object */;
638 short int var2
/* : Bool */;
641 val
* var3
/* : AGtMethid */;
642 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGtMethid */;
643 long var4
/* : Int */;
644 long var5
/* : Int */;
648 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
649 var_nodearraylist1
= var1
;
650 var_tgtnode2
= var_nodearraylist1
;
651 /* <var_tgtnode2:nullable Object> isa nullable TGt */
652 cltype
= type_nullable_parser_nodes__TGt
.color
;
653 idtype
= type_nullable_parser_nodes__TGt
.id
;
654 if(var_tgtnode2
== NULL
) {
657 if(cltype
>= var_tgtnode2
->type
->table_size
) {
660 var2
= var_tgtnode2
->type
->type_table
[cltype
] == idtype
;
664 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23108);
667 var3
= NEW_parser_nodes__AGtMethid(&type_parser_nodes__AGtMethid
);
668 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGtMethid__init_agtmethid
]))(var3
, var_tgtnode2
) /* init_agtmethid on <var3:AGtMethid>*/;
669 CHECK_NEW_parser_nodes__AGtMethid(var3
);
670 var_pmethidnode1
= var3
;
671 var_node_list
= var_pmethidnode1
;
672 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction538> */
673 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
674 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
677 /* method parser#ReduceAction538#action for (self: Object, Parser) */
678 void VIRTUAL_parser__ReduceAction538__action(val
* self
, val
* p0
) {
679 parser__ReduceAction538__action(self
, p0
);
682 /* method parser#ReduceAction539#action for (self: ReduceAction539, Parser) */
683 void parser__ReduceAction539__action(val
* self
, val
* p0
) {
684 val
* var_p
/* var p: Parser */;
685 val
* var
/* : null */;
686 val
* var_node_list
/* var node_list: nullable Object */;
687 val
* var1
/* : nullable Object */;
688 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
689 val
* var_tllnode2
/* var tllnode2: nullable Object */;
690 short int var2
/* : Bool */;
693 val
* var3
/* : ALlMethid */;
694 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALlMethid */;
695 long var4
/* : Int */;
696 long var5
/* : Int */;
700 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
701 var_nodearraylist1
= var1
;
702 var_tllnode2
= var_nodearraylist1
;
703 /* <var_tllnode2:nullable Object> isa nullable TLl */
704 cltype
= type_nullable_parser_nodes__TLl
.color
;
705 idtype
= type_nullable_parser_nodes__TLl
.id
;
706 if(var_tllnode2
== NULL
) {
709 if(cltype
>= var_tllnode2
->type
->table_size
) {
712 var2
= var_tllnode2
->type
->type_table
[cltype
] == idtype
;
716 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23123);
719 var3
= NEW_parser_nodes__ALlMethid(&type_parser_nodes__ALlMethid
);
720 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALlMethid__init_allmethid
]))(var3
, var_tllnode2
) /* init_allmethid on <var3:ALlMethid>*/;
721 CHECK_NEW_parser_nodes__ALlMethid(var3
);
722 var_pmethidnode1
= var3
;
723 var_node_list
= var_pmethidnode1
;
724 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction539> */
725 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
726 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
729 /* method parser#ReduceAction539#action for (self: Object, Parser) */
730 void VIRTUAL_parser__ReduceAction539__action(val
* self
, val
* p0
) {
731 parser__ReduceAction539__action(self
, p0
);
734 /* method parser#ReduceAction540#action for (self: ReduceAction540, Parser) */
735 void parser__ReduceAction540__action(val
* self
, val
* p0
) {
736 val
* var_p
/* var p: Parser */;
737 val
* var
/* : null */;
738 val
* var_node_list
/* var node_list: nullable Object */;
739 val
* var1
/* : nullable Object */;
740 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
741 val
* var_tggnode2
/* var tggnode2: nullable Object */;
742 short int var2
/* : Bool */;
745 val
* var3
/* : AGgMethid */;
746 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGgMethid */;
747 long var4
/* : Int */;
748 long var5
/* : Int */;
752 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
753 var_nodearraylist1
= var1
;
754 var_tggnode2
= var_nodearraylist1
;
755 /* <var_tggnode2:nullable Object> isa nullable TGg */
756 cltype
= type_nullable_parser_nodes__TGg
.color
;
757 idtype
= type_nullable_parser_nodes__TGg
.id
;
758 if(var_tggnode2
== NULL
) {
761 if(cltype
>= var_tggnode2
->type
->table_size
) {
764 var2
= var_tggnode2
->type
->type_table
[cltype
] == idtype
;
768 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23138);
771 var3
= NEW_parser_nodes__AGgMethid(&type_parser_nodes__AGgMethid
);
772 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGgMethid__init_aggmethid
]))(var3
, var_tggnode2
) /* init_aggmethid on <var3:AGgMethid>*/;
773 CHECK_NEW_parser_nodes__AGgMethid(var3
);
774 var_pmethidnode1
= var3
;
775 var_node_list
= var_pmethidnode1
;
776 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction540> */
777 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
778 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
781 /* method parser#ReduceAction540#action for (self: Object, Parser) */
782 void VIRTUAL_parser__ReduceAction540__action(val
* self
, val
* p0
) {
783 parser__ReduceAction540__action(self
, p0
);
786 /* method parser#ReduceAction541#action for (self: ReduceAction541, Parser) */
787 void parser__ReduceAction541__action(val
* self
, val
* p0
) {
788 val
* var_p
/* var p: Parser */;
789 val
* var
/* : null */;
790 val
* var_node_list
/* var node_list: nullable Object */;
791 val
* var1
/* : nullable Object */;
792 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
793 val
* var2
/* : nullable Object */;
794 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
795 val
* var_tobranode2
/* var tobranode2: nullable Object */;
796 short int var3
/* : Bool */;
799 val
* var_tcbranode3
/* var tcbranode3: nullable Object */;
800 short int var4
/* : Bool */;
803 val
* var7
/* : ABraMethid */;
804 val
* var_pmethidnode1
/* var pmethidnode1: nullable ABraMethid */;
805 long var8
/* : Int */;
806 long var9
/* : Int */;
810 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
811 var_nodearraylist2
= var1
;
812 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
813 var_nodearraylist1
= var2
;
814 var_tobranode2
= var_nodearraylist1
;
815 /* <var_tobranode2:nullable Object> isa nullable TObra */
816 cltype
= type_nullable_parser_nodes__TObra
.color
;
817 idtype
= type_nullable_parser_nodes__TObra
.id
;
818 if(var_tobranode2
== NULL
) {
821 if(cltype
>= var_tobranode2
->type
->table_size
) {
824 var3
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
828 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23154);
831 var_tcbranode3
= var_nodearraylist2
;
832 /* <var_tcbranode3:nullable Object> isa nullable TCbra */
833 cltype5
= type_nullable_parser_nodes__TCbra
.color
;
834 idtype6
= type_nullable_parser_nodes__TCbra
.id
;
835 if(var_tcbranode3
== NULL
) {
838 if(cltype5
>= var_tcbranode3
->type
->table_size
) {
841 var4
= var_tcbranode3
->type
->type_table
[cltype5
] == idtype6
;
845 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23156);
848 var7
= NEW_parser_nodes__ABraMethid(&type_parser_nodes__ABraMethid
);
849 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABraMethid__init_abramethid
]))(var7
, var_tobranode2
, var_tcbranode3
) /* init_abramethid on <var7:ABraMethid>*/;
850 CHECK_NEW_parser_nodes__ABraMethid(var7
);
851 var_pmethidnode1
= var7
;
852 var_node_list
= var_pmethidnode1
;
853 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction541> */
854 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
855 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
858 /* method parser#ReduceAction541#action for (self: Object, Parser) */
859 void VIRTUAL_parser__ReduceAction541__action(val
* self
, val
* p0
) {
860 parser__ReduceAction541__action(self
, p0
);
863 /* method parser#ReduceAction542#action for (self: ReduceAction542, Parser) */
864 void parser__ReduceAction542__action(val
* self
, val
* p0
) {
865 val
* var_p
/* var p: Parser */;
866 val
* var
/* : null */;
867 val
* var_node_list
/* var node_list: nullable Object */;
868 val
* var1
/* : nullable Object */;
869 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
870 val
* var_tstarshipnode2
/* var tstarshipnode2: nullable Object */;
871 short int var2
/* : Bool */;
874 val
* var3
/* : AStarshipMethid */;
875 val
* var_pmethidnode1
/* var pmethidnode1: nullable AStarshipMethid */;
876 long var4
/* : Int */;
877 long var5
/* : Int */;
881 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
882 var_nodearraylist1
= var1
;
883 var_tstarshipnode2
= var_nodearraylist1
;
884 /* <var_tstarshipnode2:nullable Object> isa nullable TStarship */
885 cltype
= type_nullable_parser_nodes__TStarship
.color
;
886 idtype
= type_nullable_parser_nodes__TStarship
.id
;
887 if(var_tstarshipnode2
== NULL
) {
890 if(cltype
>= var_tstarshipnode2
->type
->table_size
) {
893 var2
= var_tstarshipnode2
->type
->type_table
[cltype
] == idtype
;
897 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23172);
900 var3
= NEW_parser_nodes__AStarshipMethid(&type_parser_nodes__AStarshipMethid
);
901 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStarshipMethid__init_astarshipmethid
]))(var3
, var_tstarshipnode2
) /* init_astarshipmethid on <var3:AStarshipMethid>*/;
902 CHECK_NEW_parser_nodes__AStarshipMethid(var3
);
903 var_pmethidnode1
= var3
;
904 var_node_list
= var_pmethidnode1
;
905 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction542> */
906 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
907 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
910 /* method parser#ReduceAction542#action for (self: Object, Parser) */
911 void VIRTUAL_parser__ReduceAction542__action(val
* self
, val
* p0
) {
912 parser__ReduceAction542__action(self
, p0
);
915 /* method parser#ReduceAction543#action for (self: ReduceAction543, Parser) */
916 void parser__ReduceAction543__action(val
* self
, val
* p0
) {
917 val
* var_p
/* var p: Parser */;
918 val
* var
/* : null */;
919 val
* var_node_list
/* var node_list: nullable Object */;
920 val
* var1
/* : nullable Object */;
921 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
922 val
* var2
/* : nullable Object */;
923 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
924 val
* var_tidnode2
/* var tidnode2: nullable Object */;
925 short int var3
/* : Bool */;
928 val
* var_tassignnode3
/* var tassignnode3: nullable Object */;
929 short int var4
/* : Bool */;
932 val
* var7
/* : AAssignMethid */;
933 val
* var_pmethidnode1
/* var pmethidnode1: nullable AAssignMethid */;
934 long var8
/* : Int */;
935 long var9
/* : Int */;
939 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
940 var_nodearraylist2
= var1
;
941 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
942 var_nodearraylist1
= var2
;
943 var_tidnode2
= var_nodearraylist1
;
944 /* <var_tidnode2:nullable Object> isa nullable TId */
945 cltype
= type_nullable_parser_nodes__TId
.color
;
946 idtype
= type_nullable_parser_nodes__TId
.id
;
947 if(var_tidnode2
== NULL
) {
950 if(cltype
>= var_tidnode2
->type
->table_size
) {
953 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
957 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23188);
960 var_tassignnode3
= var_nodearraylist2
;
961 /* <var_tassignnode3:nullable Object> isa nullable TAssign */
962 cltype5
= type_nullable_parser_nodes__TAssign
.color
;
963 idtype6
= type_nullable_parser_nodes__TAssign
.id
;
964 if(var_tassignnode3
== NULL
) {
967 if(cltype5
>= var_tassignnode3
->type
->table_size
) {
970 var4
= var_tassignnode3
->type
->type_table
[cltype5
] == idtype6
;
974 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23190);
977 var7
= NEW_parser_nodes__AAssignMethid(&type_parser_nodes__AAssignMethid
);
978 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AAssignMethid__init_aassignmethid
]))(var7
, var_tidnode2
, var_tassignnode3
) /* init_aassignmethid on <var7:AAssignMethid>*/;
979 CHECK_NEW_parser_nodes__AAssignMethid(var7
);
980 var_pmethidnode1
= var7
;
981 var_node_list
= var_pmethidnode1
;
982 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction543> */
983 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
984 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
987 /* method parser#ReduceAction543#action for (self: Object, Parser) */
988 void VIRTUAL_parser__ReduceAction543__action(val
* self
, val
* p0
) {
989 parser__ReduceAction543__action(self
, p0
);
992 /* method parser#ReduceAction544#action for (self: ReduceAction544, Parser) */
993 void parser__ReduceAction544__action(val
* self
, val
* p0
) {
994 val
* var_p
/* var p: Parser */;
995 val
* var
/* : null */;
996 val
* var_node_list
/* var node_list: nullable Object */;
997 val
* var1
/* : nullable Object */;
998 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
999 val
* var2
/* : nullable Object */;
1000 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1001 val
* var3
/* : nullable Object */;
1002 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1003 val
* var_tobranode2
/* var tobranode2: nullable Object */;
1004 short int var4
/* : Bool */;
1007 val
* var_tcbranode3
/* var tcbranode3: nullable Object */;
1008 short int var5
/* : Bool */;
1011 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
1012 short int var8
/* : Bool */;
1015 val
* var11
/* : ABraassignMethid */;
1016 val
* var_pmethidnode1
/* var pmethidnode1: nullable ABraassignMethid */;
1017 long var12
/* : Int */;
1018 long var13
/* : Int */;
1021 var_node_list
= var
;
1022 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1023 var_nodearraylist3
= var1
;
1024 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1025 var_nodearraylist2
= var2
;
1026 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1027 var_nodearraylist1
= var3
;
1028 var_tobranode2
= var_nodearraylist1
;
1029 /* <var_tobranode2:nullable Object> isa nullable TObra */
1030 cltype
= type_nullable_parser_nodes__TObra
.color
;
1031 idtype
= type_nullable_parser_nodes__TObra
.id
;
1032 if(var_tobranode2
== NULL
) {
1035 if(cltype
>= var_tobranode2
->type
->table_size
) {
1038 var4
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
1042 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23208);
1045 var_tcbranode3
= var_nodearraylist2
;
1046 /* <var_tcbranode3:nullable Object> isa nullable TCbra */
1047 cltype6
= type_nullable_parser_nodes__TCbra
.color
;
1048 idtype7
= type_nullable_parser_nodes__TCbra
.id
;
1049 if(var_tcbranode3
== NULL
) {
1052 if(cltype6
>= var_tcbranode3
->type
->table_size
) {
1055 var5
= var_tcbranode3
->type
->type_table
[cltype6
] == idtype7
;
1059 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23210);
1062 var_tassignnode4
= var_nodearraylist3
;
1063 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
1064 cltype9
= type_nullable_parser_nodes__TAssign
.color
;
1065 idtype10
= type_nullable_parser_nodes__TAssign
.id
;
1066 if(var_tassignnode4
== NULL
) {
1069 if(cltype9
>= var_tassignnode4
->type
->table_size
) {
1072 var8
= var_tassignnode4
->type
->type_table
[cltype9
] == idtype10
;
1076 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23212);
1079 var11
= NEW_parser_nodes__ABraassignMethid(&type_parser_nodes__ABraassignMethid
);
1080 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABraassignMethid__init_abraassignmethid
]))(var11
, var_tobranode2
, var_tcbranode3
, var_tassignnode4
) /* init_abraassignmethid on <var11:ABraassignMethid>*/;
1081 CHECK_NEW_parser_nodes__ABraassignMethid(var11
);
1082 var_pmethidnode1
= var11
;
1083 var_node_list
= var_pmethidnode1
;
1084 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction544> */
1085 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
1086 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
1089 /* method parser#ReduceAction544#action for (self: Object, Parser) */
1090 void VIRTUAL_parser__ReduceAction544__action(val
* self
, val
* p0
) {
1091 parser__ReduceAction544__action(self
, p0
);
1094 /* method parser#ReduceAction545#action for (self: ReduceAction545, Parser) */
1095 void parser__ReduceAction545__action(val
* self
, val
* p0
) {
1096 val
* var_p
/* var p: Parser */;
1097 val
* var
/* : null */;
1098 val
* var_node_list
/* var node_list: nullable Object */;
1099 val
* var1
/* : nullable Object */;
1100 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1101 val
* var2
/* : nullable Object */;
1102 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1103 val
* var3
/* : nullable Object */;
1104 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1105 val
* var4
/* : nullable Object */;
1106 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1107 val
* var5
/* : nullable Object */;
1108 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1109 val
* var6
/* : Array[Object] */;
1110 val
* var_listnode3
/* var listnode3: Array[Object] */;
1111 val
* var7
/* : Array[Object] */;
1112 val
* var_listnode6
/* var listnode6: Array[Object] */;
1113 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1114 short int var8
/* : Bool */;
1117 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
1118 short int var9
/* : Bool */;
1121 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
1122 short int var12
/* : Bool */;
1125 val
* var15
/* : ASignature */;
1126 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1127 long var16
/* : Int */;
1128 long var17
/* : Int */;
1131 var_node_list
= var
;
1132 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1133 var_nodearraylist5
= var1
;
1134 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1135 var_nodearraylist4
= var2
;
1136 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1137 var_nodearraylist3
= var3
;
1138 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1139 var_nodearraylist2
= var4
;
1140 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1141 var_nodearraylist1
= var5
;
1142 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
1143 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
1144 CHECK_NEW_array__Array(var6
);
1145 var_listnode3
= var6
;
1146 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
1147 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
1148 CHECK_NEW_array__Array(var7
);
1149 var_listnode6
= var7
;
1150 var_toparnode2
= var_nodearraylist1
;
1151 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1152 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1153 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1154 if(var_toparnode2
== NULL
) {
1157 if(cltype
>= var_toparnode2
->type
->table_size
) {
1160 var8
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1164 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23235);
1167 var_tcparnode4
= var_nodearraylist3
;
1168 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
1169 cltype10
= type_nullable_parser_nodes__TCpar
.color
;
1170 idtype11
= type_nullable_parser_nodes__TCpar
.id
;
1171 if(var_tcparnode4
== NULL
) {
1174 if(cltype10
>= var_tcparnode4
->type
->table_size
) {
1177 var9
= var_tcparnode4
->type
->type_table
[cltype10
] == idtype11
;
1181 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23237);
1184 var_ptypenode5
= var_nodearraylist4
;
1185 /* <var_ptypenode5:nullable Object> isa nullable AType */
1186 cltype13
= type_nullable_parser_nodes__AType
.color
;
1187 idtype14
= type_nullable_parser_nodes__AType
.id
;
1188 if(var_ptypenode5
== NULL
) {
1191 if(cltype13
>= var_ptypenode5
->type
->table_size
) {
1194 var12
= var_ptypenode5
->type
->type_table
[cltype13
] == idtype14
;
1198 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23239);
1201 var15
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1202 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var15
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var_ptypenode5
, var_listnode6
) /* init_asignature on <var15:ASignature>*/;
1203 CHECK_NEW_parser_nodes__ASignature(var15
);
1204 var_psignaturenode1
= var15
;
1205 var_node_list
= var_psignaturenode1
;
1206 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction545> */
1207 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
1208 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
1211 /* method parser#ReduceAction545#action for (self: Object, Parser) */
1212 void VIRTUAL_parser__ReduceAction545__action(val
* self
, val
* p0
) {
1213 parser__ReduceAction545__action(self
, p0
);
1216 /* method parser#ReduceAction546#action for (self: ReduceAction546, Parser) */
1217 void parser__ReduceAction546__action(val
* self
, val
* p0
) {
1218 val
* var_p
/* var p: Parser */;
1219 val
* var
/* : null */;
1220 val
* var_node_list
/* var node_list: nullable Object */;
1221 val
* var1
/* : nullable Object */;
1222 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1223 val
* var2
/* : nullable Object */;
1224 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1225 val
* var3
/* : nullable Object */;
1226 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1227 val
* var4
/* : nullable Object */;
1228 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1229 val
* var5
/* : nullable Object */;
1230 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1231 val
* var6
/* : nullable Object */;
1232 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1233 val
* var7
/* : Array[Object] */;
1234 val
* var_listnode4
/* var listnode4: Array[Object] */;
1235 val
* var8
/* : Array[Object] */;
1236 val
* var_listnode7
/* var listnode7: Array[Object] */;
1237 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1238 short int var9
/* : Bool */;
1241 val
* var_listnode3
/* var listnode3: nullable Object */;
1242 short int var10
/* : Bool */;
1245 val
* var13
/* : Array[Object] */;
1246 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
1247 short int var14
/* : Bool */;
1250 val
* var_ptypenode6
/* var ptypenode6: nullable Object */;
1251 short int var17
/* : Bool */;
1254 val
* var20
/* : ASignature */;
1255 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1256 long var21
/* : Int */;
1257 long var22
/* : Int */;
1260 var_node_list
= var
;
1261 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1262 var_nodearraylist6
= var1
;
1263 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1264 var_nodearraylist5
= var2
;
1265 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1266 var_nodearraylist4
= var3
;
1267 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1268 var_nodearraylist3
= var4
;
1269 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1270 var_nodearraylist2
= var5
;
1271 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1272 var_nodearraylist1
= var6
;
1273 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
1274 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
1275 CHECK_NEW_array__Array(var7
);
1276 var_listnode4
= var7
;
1277 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
1278 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
1279 CHECK_NEW_array__Array(var8
);
1280 var_listnode7
= var8
;
1281 var_toparnode2
= var_nodearraylist1
;
1282 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1283 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1284 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1285 if(var_toparnode2
== NULL
) {
1288 if(cltype
>= var_toparnode2
->type
->table_size
) {
1291 var9
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1295 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23265);
1298 var_listnode3
= var_nodearraylist3
;
1299 /* <var_listnode3:nullable Object> isa Array[Object] */
1300 cltype11
= type_array__Arraykernel__Object
.color
;
1301 idtype12
= type_array__Arraykernel__Object
.id
;
1302 if(var_listnode3
== NULL
) {
1305 if(cltype11
>= var_listnode3
->type
->table_size
) {
1308 var10
= var_listnode3
->type
->type_table
[cltype11
] == idtype12
;
1312 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23267);
1315 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction546>*/;
1316 var_listnode4
= var13
;
1317 var_tcparnode5
= var_nodearraylist4
;
1318 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
1319 cltype15
= type_nullable_parser_nodes__TCpar
.color
;
1320 idtype16
= type_nullable_parser_nodes__TCpar
.id
;
1321 if(var_tcparnode5
== NULL
) {
1324 if(cltype15
>= var_tcparnode5
->type
->table_size
) {
1327 var14
= var_tcparnode5
->type
->type_table
[cltype15
] == idtype16
;
1331 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23270);
1334 var_ptypenode6
= var_nodearraylist5
;
1335 /* <var_ptypenode6:nullable Object> isa nullable AType */
1336 cltype18
= type_nullable_parser_nodes__AType
.color
;
1337 idtype19
= type_nullable_parser_nodes__AType
.id
;
1338 if(var_ptypenode6
== NULL
) {
1341 if(cltype18
>= var_ptypenode6
->type
->table_size
) {
1344 var17
= var_ptypenode6
->type
->type_table
[cltype18
] == idtype19
;
1348 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23272);
1351 var20
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1352 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var20
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var_ptypenode6
, var_listnode7
) /* init_asignature on <var20:ASignature>*/;
1353 CHECK_NEW_parser_nodes__ASignature(var20
);
1354 var_psignaturenode1
= var20
;
1355 var_node_list
= var_psignaturenode1
;
1356 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction546> */
1357 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
1358 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
1361 /* method parser#ReduceAction546#action for (self: Object, Parser) */
1362 void VIRTUAL_parser__ReduceAction546__action(val
* self
, val
* p0
) {
1363 parser__ReduceAction546__action(self
, p0
);
1366 /* method parser#ReduceAction547#action for (self: ReduceAction547, Parser) */
1367 void parser__ReduceAction547__action(val
* self
, val
* p0
) {
1368 val
* var_p
/* var p: Parser */;
1369 val
* var
/* : null */;
1370 val
* var_node_list
/* var node_list: nullable Object */;
1371 val
* var1
/* : nullable Object */;
1372 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1373 val
* var2
/* : nullable Object */;
1374 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1375 val
* var3
/* : nullable Object */;
1376 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1377 val
* var4
/* : nullable Object */;
1378 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1379 val
* var5
/* : nullable Object */;
1380 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1381 val
* var6
/* : nullable Object */;
1382 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1383 val
* var7
/* : Array[Object] */;
1384 val
* var_listnode3
/* var listnode3: Array[Object] */;
1385 val
* var8
/* : Array[Object] */;
1386 val
* var_listnode7
/* var listnode7: Array[Object] */;
1387 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1388 short int var9
/* : Bool */;
1391 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
1392 short int var10
/* : Bool */;
1395 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
1396 short int var13
/* : Bool */;
1399 val
* var_listnode6
/* var listnode6: nullable Object */;
1400 short int var16
/* : Bool */;
1403 val
* var19
/* : Array[Object] */;
1404 val
* var20
/* : ASignature */;
1405 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1406 long var21
/* : Int */;
1407 long var22
/* : Int */;
1410 var_node_list
= var
;
1411 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1412 var_nodearraylist6
= var1
;
1413 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1414 var_nodearraylist5
= var2
;
1415 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1416 var_nodearraylist4
= var3
;
1417 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1418 var_nodearraylist3
= var4
;
1419 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1420 var_nodearraylist2
= var5
;
1421 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1422 var_nodearraylist1
= var6
;
1423 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
1424 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
1425 CHECK_NEW_array__Array(var7
);
1426 var_listnode3
= var7
;
1427 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
1428 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
1429 CHECK_NEW_array__Array(var8
);
1430 var_listnode7
= var8
;
1431 var_toparnode2
= var_nodearraylist1
;
1432 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1433 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1434 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1435 if(var_toparnode2
== NULL
) {
1438 if(cltype
>= var_toparnode2
->type
->table_size
) {
1441 var9
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1445 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23298);
1448 var_tcparnode4
= var_nodearraylist3
;
1449 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
1450 cltype11
= type_nullable_parser_nodes__TCpar
.color
;
1451 idtype12
= type_nullable_parser_nodes__TCpar
.id
;
1452 if(var_tcparnode4
== NULL
) {
1455 if(cltype11
>= var_tcparnode4
->type
->table_size
) {
1458 var10
= var_tcparnode4
->type
->type_table
[cltype11
] == idtype12
;
1462 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23300);
1465 var_ptypenode5
= var_nodearraylist4
;
1466 /* <var_ptypenode5:nullable Object> isa nullable AType */
1467 cltype14
= type_nullable_parser_nodes__AType
.color
;
1468 idtype15
= type_nullable_parser_nodes__AType
.id
;
1469 if(var_ptypenode5
== NULL
) {
1472 if(cltype14
>= var_ptypenode5
->type
->table_size
) {
1475 var13
= var_ptypenode5
->type
->type_table
[cltype14
] == idtype15
;
1479 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23302);
1482 var_listnode6
= var_nodearraylist6
;
1483 /* <var_listnode6:nullable Object> isa Array[Object] */
1484 cltype17
= type_array__Arraykernel__Object
.color
;
1485 idtype18
= type_array__Arraykernel__Object
.id
;
1486 if(var_listnode6
== NULL
) {
1489 if(cltype17
>= var_listnode6
->type
->table_size
) {
1492 var16
= var_listnode6
->type
->type_table
[cltype17
] == idtype18
;
1496 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23304);
1499 var19
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode7
, var_listnode6
) /* concat on <self:ReduceAction547>*/;
1500 var_listnode7
= var19
;
1501 var20
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1502 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var20
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var_ptypenode5
, var_listnode7
) /* init_asignature on <var20:ASignature>*/;
1503 CHECK_NEW_parser_nodes__ASignature(var20
);
1504 var_psignaturenode1
= var20
;
1505 var_node_list
= var_psignaturenode1
;
1506 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction547> */
1507 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
1508 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
1511 /* method parser#ReduceAction547#action for (self: Object, Parser) */
1512 void VIRTUAL_parser__ReduceAction547__action(val
* self
, val
* p0
) {
1513 parser__ReduceAction547__action(self
, p0
);
1516 /* method parser#ReduceAction548#action for (self: ReduceAction548, Parser) */
1517 void parser__ReduceAction548__action(val
* self
, val
* p0
) {
1518 val
* var_p
/* var p: Parser */;
1519 val
* var
/* : null */;
1520 val
* var_node_list
/* var node_list: nullable Object */;
1521 val
* var1
/* : nullable Object */;
1522 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1523 val
* var2
/* : nullable Object */;
1524 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1525 val
* var3
/* : nullable Object */;
1526 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1527 val
* var4
/* : nullable Object */;
1528 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1529 val
* var5
/* : nullable Object */;
1530 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1531 val
* var6
/* : nullable Object */;
1532 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1533 val
* var7
/* : nullable Object */;
1534 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1535 val
* var8
/* : Array[Object] */;
1536 val
* var_listnode4
/* var listnode4: Array[Object] */;
1537 val
* var9
/* : Array[Object] */;
1538 val
* var_listnode8
/* var listnode8: Array[Object] */;
1539 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1540 short int var10
/* : Bool */;
1543 val
* var_listnode3
/* var listnode3: nullable Object */;
1544 short int var11
/* : Bool */;
1547 val
* var14
/* : Array[Object] */;
1548 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
1549 short int var15
/* : Bool */;
1552 val
* var_ptypenode6
/* var ptypenode6: nullable Object */;
1553 short int var18
/* : Bool */;
1556 val
* var_listnode7
/* var listnode7: nullable Object */;
1557 short int var21
/* : Bool */;
1560 val
* var24
/* : Array[Object] */;
1561 val
* var25
/* : ASignature */;
1562 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1563 long var26
/* : Int */;
1564 long var27
/* : Int */;
1567 var_node_list
= var
;
1568 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1569 var_nodearraylist7
= var1
;
1570 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1571 var_nodearraylist6
= var2
;
1572 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1573 var_nodearraylist5
= var3
;
1574 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1575 var_nodearraylist4
= var4
;
1576 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1577 var_nodearraylist3
= var5
;
1578 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1579 var_nodearraylist2
= var6
;
1580 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1581 var_nodearraylist1
= var7
;
1582 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
1583 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
1584 CHECK_NEW_array__Array(var8
);
1585 var_listnode4
= var8
;
1586 var9
= NEW_array__Array(&type_array__Arraykernel__Object
);
1587 ((void (*)(val
*))(var9
->class->vft
[COLOR_array__Array__init
]))(var9
) /* init on <var9:Array[Object]>*/;
1588 CHECK_NEW_array__Array(var9
);
1589 var_listnode8
= var9
;
1590 var_toparnode2
= var_nodearraylist1
;
1591 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1592 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1593 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1594 if(var_toparnode2
== NULL
) {
1597 if(cltype
>= var_toparnode2
->type
->table_size
) {
1600 var10
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1604 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23332);
1607 var_listnode3
= var_nodearraylist3
;
1608 /* <var_listnode3:nullable Object> isa Array[Object] */
1609 cltype12
= type_array__Arraykernel__Object
.color
;
1610 idtype13
= type_array__Arraykernel__Object
.id
;
1611 if(var_listnode3
== NULL
) {
1614 if(cltype12
>= var_listnode3
->type
->table_size
) {
1617 var11
= var_listnode3
->type
->type_table
[cltype12
] == idtype13
;
1621 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23334);
1624 var14
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction548>*/;
1625 var_listnode4
= var14
;
1626 var_tcparnode5
= var_nodearraylist4
;
1627 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
1628 cltype16
= type_nullable_parser_nodes__TCpar
.color
;
1629 idtype17
= type_nullable_parser_nodes__TCpar
.id
;
1630 if(var_tcparnode5
== NULL
) {
1633 if(cltype16
>= var_tcparnode5
->type
->table_size
) {
1636 var15
= var_tcparnode5
->type
->type_table
[cltype16
] == idtype17
;
1640 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23337);
1643 var_ptypenode6
= var_nodearraylist5
;
1644 /* <var_ptypenode6:nullable Object> isa nullable AType */
1645 cltype19
= type_nullable_parser_nodes__AType
.color
;
1646 idtype20
= type_nullable_parser_nodes__AType
.id
;
1647 if(var_ptypenode6
== NULL
) {
1650 if(cltype19
>= var_ptypenode6
->type
->table_size
) {
1653 var18
= var_ptypenode6
->type
->type_table
[cltype19
] == idtype20
;
1657 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23339);
1660 var_listnode7
= var_nodearraylist7
;
1661 /* <var_listnode7:nullable Object> isa Array[Object] */
1662 cltype22
= type_array__Arraykernel__Object
.color
;
1663 idtype23
= type_array__Arraykernel__Object
.id
;
1664 if(var_listnode7
== NULL
) {
1667 if(cltype22
>= var_listnode7
->type
->table_size
) {
1670 var21
= var_listnode7
->type
->type_table
[cltype22
] == idtype23
;
1674 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23341);
1677 var24
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode8
, var_listnode7
) /* concat on <self:ReduceAction548>*/;
1678 var_listnode8
= var24
;
1679 var25
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1680 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var25
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var25
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var_ptypenode6
, var_listnode8
) /* init_asignature on <var25:ASignature>*/;
1681 CHECK_NEW_parser_nodes__ASignature(var25
);
1682 var_psignaturenode1
= var25
;
1683 var_node_list
= var_psignaturenode1
;
1684 var26
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction548> */
1685 var27
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var26
) /* go_to on <var_p:Parser>*/;
1686 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var27
, var_node_list
) /* push on <var_p:Parser>*/;
1689 /* method parser#ReduceAction548#action for (self: Object, Parser) */
1690 void VIRTUAL_parser__ReduceAction548__action(val
* self
, val
* p0
) {
1691 parser__ReduceAction548__action(self
, p0
);
1694 /* method parser#ReduceAction549#action for (self: ReduceAction549, Parser) */
1695 void parser__ReduceAction549__action(val
* self
, val
* p0
) {
1696 val
* var_p
/* var p: Parser */;
1697 val
* var
/* : null */;
1698 val
* var_node_list
/* var node_list: nullable Object */;
1699 val
* var1
/* : nullable Object */;
1700 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1701 val
* var2
/* : nullable Object */;
1702 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1703 val
* var3
/* : nullable Object */;
1704 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1705 val
* var4
/* : nullable Object */;
1706 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1707 val
* var5
/* : Array[Object] */;
1708 val
* var_listnode3
/* var listnode3: Array[Object] */;
1709 val
* var6
/* : Array[Object] */;
1710 val
* var_listnode6
/* var listnode6: Array[Object] */;
1711 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1712 short int var7
/* : Bool */;
1715 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
1716 short int var8
/* : Bool */;
1719 val
* var11
/* : ASignature */;
1720 val
* var12
/* : null */;
1721 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1722 long var13
/* : Int */;
1723 long var14
/* : Int */;
1726 var_node_list
= var
;
1727 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1728 var_nodearraylist4
= var1
;
1729 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1730 var_nodearraylist3
= var2
;
1731 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1732 var_nodearraylist2
= var3
;
1733 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1734 var_nodearraylist1
= var4
;
1735 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
1736 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
1737 CHECK_NEW_array__Array(var5
);
1738 var_listnode3
= var5
;
1739 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
1740 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
1741 CHECK_NEW_array__Array(var6
);
1742 var_listnode6
= var6
;
1743 var_toparnode2
= var_nodearraylist1
;
1744 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1745 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1746 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1747 if(var_toparnode2
== NULL
) {
1750 if(cltype
>= var_toparnode2
->type
->table_size
) {
1753 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1757 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23366);
1760 var_tcparnode4
= var_nodearraylist3
;
1761 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
1762 cltype9
= type_nullable_parser_nodes__TCpar
.color
;
1763 idtype10
= type_nullable_parser_nodes__TCpar
.id
;
1764 if(var_tcparnode4
== NULL
) {
1767 if(cltype9
>= var_tcparnode4
->type
->table_size
) {
1770 var8
= var_tcparnode4
->type
->type_table
[cltype9
] == idtype10
;
1774 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23368);
1777 var11
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1779 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var11
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var12
, var_listnode6
) /* init_asignature on <var11:ASignature>*/;
1780 CHECK_NEW_parser_nodes__ASignature(var11
);
1781 var_psignaturenode1
= var11
;
1782 var_node_list
= var_psignaturenode1
;
1783 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction549> */
1784 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
1785 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
1788 /* method parser#ReduceAction549#action for (self: Object, Parser) */
1789 void VIRTUAL_parser__ReduceAction549__action(val
* self
, val
* p0
) {
1790 parser__ReduceAction549__action(self
, p0
);
1793 /* method parser#ReduceAction550#action for (self: ReduceAction550, Parser) */
1794 void parser__ReduceAction550__action(val
* self
, val
* p0
) {
1795 val
* var_p
/* var p: Parser */;
1796 val
* var
/* : null */;
1797 val
* var_node_list
/* var node_list: nullable Object */;
1798 val
* var1
/* : nullable Object */;
1799 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1800 val
* var2
/* : nullable Object */;
1801 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1802 val
* var3
/* : nullable Object */;
1803 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1804 val
* var4
/* : nullable Object */;
1805 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1806 val
* var5
/* : nullable Object */;
1807 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1808 val
* var6
/* : Array[Object] */;
1809 val
* var_listnode4
/* var listnode4: Array[Object] */;
1810 val
* var7
/* : Array[Object] */;
1811 val
* var_listnode7
/* var listnode7: Array[Object] */;
1812 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1813 short int var8
/* : Bool */;
1816 val
* var_listnode3
/* var listnode3: nullable Object */;
1817 short int var9
/* : Bool */;
1820 val
* var12
/* : Array[Object] */;
1821 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
1822 short int var13
/* : Bool */;
1825 val
* var16
/* : ASignature */;
1826 val
* var17
/* : null */;
1827 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1828 long var18
/* : Int */;
1829 long var19
/* : Int */;
1832 var_node_list
= var
;
1833 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1834 var_nodearraylist5
= var1
;
1835 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1836 var_nodearraylist4
= var2
;
1837 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1838 var_nodearraylist3
= var3
;
1839 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1840 var_nodearraylist2
= var4
;
1841 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1842 var_nodearraylist1
= var5
;
1843 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
1844 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
1845 CHECK_NEW_array__Array(var6
);
1846 var_listnode4
= var6
;
1847 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
1848 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
1849 CHECK_NEW_array__Array(var7
);
1850 var_listnode7
= var7
;
1851 var_toparnode2
= var_nodearraylist1
;
1852 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1853 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1854 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1855 if(var_toparnode2
== NULL
) {
1858 if(cltype
>= var_toparnode2
->type
->table_size
) {
1861 var8
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1865 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23393);
1868 var_listnode3
= var_nodearraylist3
;
1869 /* <var_listnode3:nullable Object> isa Array[Object] */
1870 cltype10
= type_array__Arraykernel__Object
.color
;
1871 idtype11
= type_array__Arraykernel__Object
.id
;
1872 if(var_listnode3
== NULL
) {
1875 if(cltype10
>= var_listnode3
->type
->table_size
) {
1878 var9
= var_listnode3
->type
->type_table
[cltype10
] == idtype11
;
1882 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23395);
1885 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction550>*/;
1886 var_listnode4
= var12
;
1887 var_tcparnode5
= var_nodearraylist4
;
1888 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
1889 cltype14
= type_nullable_parser_nodes__TCpar
.color
;
1890 idtype15
= type_nullable_parser_nodes__TCpar
.id
;
1891 if(var_tcparnode5
== NULL
) {
1894 if(cltype14
>= var_tcparnode5
->type
->table_size
) {
1897 var13
= var_tcparnode5
->type
->type_table
[cltype14
] == idtype15
;
1901 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23398);
1904 var16
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1906 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var16
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var17
, var_listnode7
) /* init_asignature on <var16:ASignature>*/;
1907 CHECK_NEW_parser_nodes__ASignature(var16
);
1908 var_psignaturenode1
= var16
;
1909 var_node_list
= var_psignaturenode1
;
1910 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction550> */
1911 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
1912 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
1915 /* method parser#ReduceAction550#action for (self: Object, Parser) */
1916 void VIRTUAL_parser__ReduceAction550__action(val
* self
, val
* p0
) {
1917 parser__ReduceAction550__action(self
, p0
);
1920 /* method parser#ReduceAction551#action for (self: ReduceAction551, Parser) */
1921 void parser__ReduceAction551__action(val
* self
, val
* p0
) {
1922 val
* var_p
/* var p: Parser */;
1923 val
* var
/* : null */;
1924 val
* var_node_list
/* var node_list: nullable Object */;
1925 val
* var1
/* : nullable Object */;
1926 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1927 val
* var2
/* : nullable Object */;
1928 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1929 val
* var3
/* : nullable Object */;
1930 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1931 val
* var4
/* : nullable Object */;
1932 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1933 val
* var5
/* : nullable Object */;
1934 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1935 val
* var6
/* : Array[Object] */;
1936 val
* var_listnode3
/* var listnode3: Array[Object] */;
1937 val
* var7
/* : Array[Object] */;
1938 val
* var_listnode7
/* var listnode7: Array[Object] */;
1939 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1940 short int var8
/* : Bool */;
1943 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
1944 short int var9
/* : Bool */;
1947 val
* var_listnode6
/* var listnode6: nullable Object */;
1948 short int var12
/* : Bool */;
1951 val
* var15
/* : Array[Object] */;
1952 val
* var16
/* : ASignature */;
1953 val
* var17
/* : null */;
1954 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1955 long var18
/* : Int */;
1956 long var19
/* : Int */;
1959 var_node_list
= var
;
1960 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1961 var_nodearraylist5
= var1
;
1962 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1963 var_nodearraylist4
= var2
;
1964 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1965 var_nodearraylist3
= var3
;
1966 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1967 var_nodearraylist2
= var4
;
1968 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1969 var_nodearraylist1
= var5
;
1970 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
1971 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
1972 CHECK_NEW_array__Array(var6
);
1973 var_listnode3
= var6
;
1974 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
1975 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
1976 CHECK_NEW_array__Array(var7
);
1977 var_listnode7
= var7
;
1978 var_toparnode2
= var_nodearraylist1
;
1979 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1980 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1981 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1982 if(var_toparnode2
== NULL
) {
1985 if(cltype
>= var_toparnode2
->type
->table_size
) {
1988 var8
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1992 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23423);
1995 var_tcparnode4
= var_nodearraylist3
;
1996 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
1997 cltype10
= type_nullable_parser_nodes__TCpar
.color
;
1998 idtype11
= type_nullable_parser_nodes__TCpar
.id
;
1999 if(var_tcparnode4
== NULL
) {
2002 if(cltype10
>= var_tcparnode4
->type
->table_size
) {
2005 var9
= var_tcparnode4
->type
->type_table
[cltype10
] == idtype11
;
2009 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23425);
2012 var_listnode6
= var_nodearraylist5
;
2013 /* <var_listnode6:nullable Object> isa Array[Object] */
2014 cltype13
= type_array__Arraykernel__Object
.color
;
2015 idtype14
= type_array__Arraykernel__Object
.id
;
2016 if(var_listnode6
== NULL
) {
2019 if(cltype13
>= var_listnode6
->type
->table_size
) {
2022 var12
= var_listnode6
->type
->type_table
[cltype13
] == idtype14
;
2026 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23427);
2029 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode7
, var_listnode6
) /* concat on <self:ReduceAction551>*/;
2030 var_listnode7
= var15
;
2031 var16
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2033 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var16
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var17
, var_listnode7
) /* init_asignature on <var16:ASignature>*/;
2034 CHECK_NEW_parser_nodes__ASignature(var16
);
2035 var_psignaturenode1
= var16
;
2036 var_node_list
= var_psignaturenode1
;
2037 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction551> */
2038 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
2039 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
2042 /* method parser#ReduceAction551#action for (self: Object, Parser) */
2043 void VIRTUAL_parser__ReduceAction551__action(val
* self
, val
* p0
) {
2044 parser__ReduceAction551__action(self
, p0
);
2047 /* method parser#ReduceAction552#action for (self: ReduceAction552, Parser) */
2048 void parser__ReduceAction552__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_nodearraylist6
/* var nodearraylist6: nullable Object */;
2054 val
* var2
/* : nullable Object */;
2055 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2056 val
* var3
/* : nullable Object */;
2057 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2058 val
* var4
/* : nullable Object */;
2059 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2060 val
* var5
/* : nullable Object */;
2061 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2062 val
* var6
/* : nullable Object */;
2063 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2064 val
* var7
/* : Array[Object] */;
2065 val
* var_listnode4
/* var listnode4: Array[Object] */;
2066 val
* var8
/* : Array[Object] */;
2067 val
* var_listnode8
/* var listnode8: Array[Object] */;
2068 val
* var_toparnode2
/* var toparnode2: nullable Object */;
2069 short int var9
/* : Bool */;
2072 val
* var_listnode3
/* var listnode3: nullable Object */;
2073 short int var10
/* : Bool */;
2076 val
* var13
/* : Array[Object] */;
2077 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
2078 short int var14
/* : Bool */;
2081 val
* var_listnode7
/* var listnode7: nullable Object */;
2082 short int var17
/* : Bool */;
2085 val
* var20
/* : Array[Object] */;
2086 val
* var21
/* : ASignature */;
2087 val
* var22
/* : null */;
2088 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2089 long var23
/* : Int */;
2090 long var24
/* : Int */;
2093 var_node_list
= var
;
2094 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2095 var_nodearraylist6
= var1
;
2096 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2097 var_nodearraylist5
= var2
;
2098 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2099 var_nodearraylist4
= var3
;
2100 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2101 var_nodearraylist3
= var4
;
2102 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2103 var_nodearraylist2
= var5
;
2104 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2105 var_nodearraylist1
= var6
;
2106 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
2107 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
2108 CHECK_NEW_array__Array(var7
);
2109 var_listnode4
= var7
;
2110 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
2111 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
2112 CHECK_NEW_array__Array(var8
);
2113 var_listnode8
= var8
;
2114 var_toparnode2
= var_nodearraylist1
;
2115 /* <var_toparnode2:nullable Object> isa nullable TOpar */
2116 cltype
= type_nullable_parser_nodes__TOpar
.color
;
2117 idtype
= type_nullable_parser_nodes__TOpar
.id
;
2118 if(var_toparnode2
== NULL
) {
2121 if(cltype
>= var_toparnode2
->type
->table_size
) {
2124 var9
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
2128 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23454);
2131 var_listnode3
= var_nodearraylist3
;
2132 /* <var_listnode3:nullable Object> isa Array[Object] */
2133 cltype11
= type_array__Arraykernel__Object
.color
;
2134 idtype12
= type_array__Arraykernel__Object
.id
;
2135 if(var_listnode3
== NULL
) {
2138 if(cltype11
>= var_listnode3
->type
->table_size
) {
2141 var10
= var_listnode3
->type
->type_table
[cltype11
] == idtype12
;
2145 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23456);
2148 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction552>*/;
2149 var_listnode4
= var13
;
2150 var_tcparnode5
= var_nodearraylist4
;
2151 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
2152 cltype15
= type_nullable_parser_nodes__TCpar
.color
;
2153 idtype16
= type_nullable_parser_nodes__TCpar
.id
;
2154 if(var_tcparnode5
== NULL
) {
2157 if(cltype15
>= var_tcparnode5
->type
->table_size
) {
2160 var14
= var_tcparnode5
->type
->type_table
[cltype15
] == idtype16
;
2164 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23459);
2167 var_listnode7
= var_nodearraylist6
;
2168 /* <var_listnode7:nullable Object> isa Array[Object] */
2169 cltype18
= type_array__Arraykernel__Object
.color
;
2170 idtype19
= type_array__Arraykernel__Object
.id
;
2171 if(var_listnode7
== NULL
) {
2174 if(cltype18
>= var_listnode7
->type
->table_size
) {
2177 var17
= var_listnode7
->type
->type_table
[cltype18
] == idtype19
;
2181 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23461);
2184 var20
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode8
, var_listnode7
) /* concat on <self:ReduceAction552>*/;
2185 var_listnode8
= var20
;
2186 var21
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2188 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var21
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var22
, var_listnode8
) /* init_asignature on <var21:ASignature>*/;
2189 CHECK_NEW_parser_nodes__ASignature(var21
);
2190 var_psignaturenode1
= var21
;
2191 var_node_list
= var_psignaturenode1
;
2192 var23
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction552> */
2193 var24
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var23
) /* go_to on <var_p:Parser>*/;
2194 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var24
, var_node_list
) /* push on <var_p:Parser>*/;
2197 /* method parser#ReduceAction552#action for (self: Object, Parser) */
2198 void VIRTUAL_parser__ReduceAction552__action(val
* self
, val
* p0
) {
2199 parser__ReduceAction552__action(self
, p0
);
2202 /* method parser#ReduceAction553#action for (self: ReduceAction553, Parser) */
2203 void parser__ReduceAction553__action(val
* self
, val
* p0
) {
2204 val
* var_p
/* var p: Parser */;
2205 val
* var
/* : null */;
2206 val
* var_node_list
/* var node_list: nullable Object */;
2207 val
* var1
/* : nullable Object */;
2208 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2209 val
* var2
/* : nullable Object */;
2210 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2211 val
* var3
/* : Array[Object] */;
2212 val
* var_listnode3
/* var listnode3: Array[Object] */;
2213 val
* var4
/* : Array[Object] */;
2214 val
* var_listnode6
/* var listnode6: Array[Object] */;
2215 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
2216 short int var5
/* : Bool */;
2219 val
* var6
/* : ASignature */;
2220 val
* var7
/* : null */;
2221 val
* var8
/* : null */;
2222 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2223 long var9
/* : Int */;
2224 long var10
/* : Int */;
2227 var_node_list
= var
;
2228 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2229 var_nodearraylist2
= var1
;
2230 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2231 var_nodearraylist1
= var2
;
2232 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
2233 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
2234 CHECK_NEW_array__Array(var3
);
2235 var_listnode3
= var3
;
2236 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
2237 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
2238 CHECK_NEW_array__Array(var4
);
2239 var_listnode6
= var4
;
2240 var_ptypenode5
= var_nodearraylist1
;
2241 /* <var_ptypenode5:nullable Object> isa nullable AType */
2242 cltype
= type_nullable_parser_nodes__AType
.color
;
2243 idtype
= type_nullable_parser_nodes__AType
.id
;
2244 if(var_ptypenode5
== NULL
) {
2247 if(cltype
>= var_ptypenode5
->type
->table_size
) {
2250 var5
= var_ptypenode5
->type
->type_table
[cltype
] == idtype
;
2254 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23484);
2257 var6
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2260 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var6
, var7
, var_listnode3
, var8
, var_ptypenode5
, var_listnode6
) /* init_asignature on <var6:ASignature>*/;
2261 CHECK_NEW_parser_nodes__ASignature(var6
);
2262 var_psignaturenode1
= var6
;
2263 var_node_list
= var_psignaturenode1
;
2264 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction553> */
2265 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
2266 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
2269 /* method parser#ReduceAction553#action for (self: Object, Parser) */
2270 void VIRTUAL_parser__ReduceAction553__action(val
* self
, val
* p0
) {
2271 parser__ReduceAction553__action(self
, p0
);
2274 /* method parser#ReduceAction554#action for (self: ReduceAction554, Parser) */
2275 void parser__ReduceAction554__action(val
* self
, val
* p0
) {
2276 val
* var_p
/* var p: Parser */;
2277 val
* var
/* : null */;
2278 val
* var_node_list
/* var node_list: nullable Object */;
2279 val
* var1
/* : nullable Object */;
2280 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2281 val
* var2
/* : nullable Object */;
2282 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2283 val
* var3
/* : nullable Object */;
2284 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2285 val
* var4
/* : Array[Object] */;
2286 val
* var_listnode3
/* var listnode3: Array[Object] */;
2287 val
* var5
/* : Array[Object] */;
2288 val
* var_listnode7
/* var listnode7: Array[Object] */;
2289 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
2290 short int var6
/* : Bool */;
2293 val
* var_listnode6
/* var listnode6: nullable Object */;
2294 short int var7
/* : Bool */;
2297 val
* var10
/* : Array[Object] */;
2298 val
* var11
/* : ASignature */;
2299 val
* var12
/* : null */;
2300 val
* var13
/* : null */;
2301 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2302 long var14
/* : Int */;
2303 long var15
/* : Int */;
2306 var_node_list
= var
;
2307 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2308 var_nodearraylist3
= var1
;
2309 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2310 var_nodearraylist2
= var2
;
2311 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2312 var_nodearraylist1
= var3
;
2313 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
2314 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
2315 CHECK_NEW_array__Array(var4
);
2316 var_listnode3
= var4
;
2317 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
2318 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
2319 CHECK_NEW_array__Array(var5
);
2320 var_listnode7
= var5
;
2321 var_ptypenode5
= var_nodearraylist1
;
2322 /* <var_ptypenode5:nullable Object> isa nullable AType */
2323 cltype
= type_nullable_parser_nodes__AType
.color
;
2324 idtype
= type_nullable_parser_nodes__AType
.id
;
2325 if(var_ptypenode5
== NULL
) {
2328 if(cltype
>= var_ptypenode5
->type
->table_size
) {
2331 var6
= var_ptypenode5
->type
->type_table
[cltype
] == idtype
;
2335 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23507);
2338 var_listnode6
= var_nodearraylist3
;
2339 /* <var_listnode6:nullable Object> isa Array[Object] */
2340 cltype8
= type_array__Arraykernel__Object
.color
;
2341 idtype9
= type_array__Arraykernel__Object
.id
;
2342 if(var_listnode6
== NULL
) {
2345 if(cltype8
>= var_listnode6
->type
->table_size
) {
2348 var7
= var_listnode6
->type
->type_table
[cltype8
] == idtype9
;
2352 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23509);
2355 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode7
, var_listnode6
) /* concat on <self:ReduceAction554>*/;
2356 var_listnode7
= var10
;
2357 var11
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2360 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var11
, var12
, var_listnode3
, var13
, var_ptypenode5
, var_listnode7
) /* init_asignature on <var11:ASignature>*/;
2361 CHECK_NEW_parser_nodes__ASignature(var11
);
2362 var_psignaturenode1
= var11
;
2363 var_node_list
= var_psignaturenode1
;
2364 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction554> */
2365 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
2366 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
2369 /* method parser#ReduceAction554#action for (self: Object, Parser) */
2370 void VIRTUAL_parser__ReduceAction554__action(val
* self
, val
* p0
) {
2371 parser__ReduceAction554__action(self
, p0
);
2374 /* method parser#ReduceAction555#action for (self: ReduceAction555, Parser) */
2375 void parser__ReduceAction555__action(val
* self
, val
* p0
) {
2376 val
* var_p
/* var p: Parser */;
2377 val
* var
/* : null */;
2378 val
* var_node_list
/* var node_list: nullable Object */;
2379 val
* var1
/* : nullable Object */;
2380 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2381 val
* var2
/* : Array[Object] */;
2382 val
* var_listnode3
/* var listnode3: Array[Object] */;
2383 val
* var3
/* : Array[Object] */;
2384 val
* var_listnode6
/* var listnode6: Array[Object] */;
2385 val
* var4
/* : ASignature */;
2386 val
* var5
/* : null */;
2387 val
* var6
/* : null */;
2388 val
* var7
/* : null */;
2389 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2390 long var8
/* : Int */;
2391 long var9
/* : Int */;
2394 var_node_list
= var
;
2395 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2396 var_nodearraylist1
= var1
;
2397 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
2398 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
2399 CHECK_NEW_array__Array(var2
);
2400 var_listnode3
= var2
;
2401 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
2402 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
2403 CHECK_NEW_array__Array(var3
);
2404 var_listnode6
= var3
;
2405 var4
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2409 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var4
, var5
, var_listnode3
, var6
, var7
, var_listnode6
) /* init_asignature on <var4:ASignature>*/;
2410 CHECK_NEW_parser_nodes__ASignature(var4
);
2411 var_psignaturenode1
= var4
;
2412 var_node_list
= var_psignaturenode1
;
2413 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction555> */
2414 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
2415 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
2418 /* method parser#ReduceAction555#action for (self: Object, Parser) */
2419 void VIRTUAL_parser__ReduceAction555__action(val
* self
, val
* p0
) {
2420 parser__ReduceAction555__action(self
, p0
);
2423 /* method parser#ReduceAction556#action for (self: ReduceAction556, Parser) */
2424 void parser__ReduceAction556__action(val
* self
, val
* p0
) {
2425 val
* var_p
/* var p: Parser */;
2426 val
* var
/* : null */;
2427 val
* var_node_list
/* var node_list: nullable Object */;
2428 val
* var1
/* : nullable Object */;
2429 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2430 val
* var2
/* : nullable Object */;
2431 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2432 val
* var3
/* : Array[Object] */;
2433 val
* var_listnode3
/* var listnode3: Array[Object] */;
2434 val
* var4
/* : Array[Object] */;
2435 val
* var_listnode7
/* var listnode7: Array[Object] */;
2436 val
* var_listnode6
/* var listnode6: nullable Object */;
2437 short int var5
/* : Bool */;
2440 val
* var6
/* : Array[Object] */;
2441 val
* var7
/* : ASignature */;
2442 val
* var8
/* : null */;
2443 val
* var9
/* : null */;
2444 val
* var10
/* : null */;
2445 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2446 long var11
/* : Int */;
2447 long var12
/* : Int */;
2450 var_node_list
= var
;
2451 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2452 var_nodearraylist2
= var1
;
2453 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2454 var_nodearraylist1
= var2
;
2455 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
2456 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
2457 CHECK_NEW_array__Array(var3
);
2458 var_listnode3
= var3
;
2459 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
2460 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
2461 CHECK_NEW_array__Array(var4
);
2462 var_listnode7
= var4
;
2463 var_listnode6
= var_nodearraylist2
;
2464 /* <var_listnode6:nullable Object> isa Array[Object] */
2465 cltype
= type_array__Arraykernel__Object
.color
;
2466 idtype
= type_array__Arraykernel__Object
.id
;
2467 if(var_listnode6
== NULL
) {
2470 if(cltype
>= var_listnode6
->type
->table_size
) {
2473 var5
= var_listnode6
->type
->type_table
[cltype
] == idtype
;
2477 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23551);
2480 var6
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode7
, var_listnode6
) /* concat on <self:ReduceAction556>*/;
2481 var_listnode7
= var6
;
2482 var7
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2486 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var7
, var8
, var_listnode3
, var9
, var10
, var_listnode7
) /* init_asignature on <var7:ASignature>*/;
2487 CHECK_NEW_parser_nodes__ASignature(var7
);
2488 var_psignaturenode1
= var7
;
2489 var_node_list
= var_psignaturenode1
;
2490 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction556> */
2491 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
2492 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
2495 /* method parser#ReduceAction556#action for (self: Object, Parser) */
2496 void VIRTUAL_parser__ReduceAction556__action(val
* self
, val
* p0
) {
2497 parser__ReduceAction556__action(self
, p0
);
2500 /* method parser#ReduceAction557#action for (self: ReduceAction557, Parser) */
2501 void parser__ReduceAction557__action(val
* self
, val
* p0
) {
2502 val
* var_p
/* var p: Parser */;
2503 val
* var
/* : null */;
2504 val
* var_node_list
/* var node_list: nullable Object */;
2505 val
* var1
/* : nullable Object */;
2506 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2507 val
* var2
/* : nullable Object */;
2508 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2509 val
* var3
/* : nullable Object */;
2510 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2511 val
* var4
/* : Array[Object] */;
2512 val
* var_listnode3
/* var listnode3: Array[Object] */;
2513 val
* var5
/* : Array[Object] */;
2514 val
* var_listnode6
/* var listnode6: Array[Object] */;
2515 val
* var_toparnode2
/* var toparnode2: nullable Object */;
2516 short int var6
/* : Bool */;
2519 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
2520 short int var7
/* : Bool */;
2523 val
* var10
/* : ASignature */;
2524 val
* var11
/* : null */;
2525 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2526 long var12
/* : Int */;
2527 long var13
/* : Int */;
2530 var_node_list
= var
;
2531 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2532 var_nodearraylist3
= var1
;
2533 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2534 var_nodearraylist2
= var2
;
2535 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2536 var_nodearraylist1
= var3
;
2537 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
2538 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
2539 CHECK_NEW_array__Array(var4
);
2540 var_listnode3
= var4
;
2541 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
2542 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
2543 CHECK_NEW_array__Array(var5
);
2544 var_listnode6
= var5
;
2545 var_toparnode2
= var_nodearraylist1
;
2546 /* <var_toparnode2:nullable Object> isa nullable TOpar */
2547 cltype
= type_nullable_parser_nodes__TOpar
.color
;
2548 idtype
= type_nullable_parser_nodes__TOpar
.id
;
2549 if(var_toparnode2
== NULL
) {
2552 if(cltype
>= var_toparnode2
->type
->table_size
) {
2555 var6
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
2559 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23575);
2562 var_tcparnode4
= var_nodearraylist3
;
2563 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
2564 cltype8
= type_nullable_parser_nodes__TCpar
.color
;
2565 idtype9
= type_nullable_parser_nodes__TCpar
.id
;
2566 if(var_tcparnode4
== NULL
) {
2569 if(cltype8
>= var_tcparnode4
->type
->table_size
) {
2572 var7
= var_tcparnode4
->type
->type_table
[cltype8
] == idtype9
;
2576 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23577);
2579 var10
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2581 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var10
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var11
, var_listnode6
) /* init_asignature on <var10:ASignature>*/;
2582 CHECK_NEW_parser_nodes__ASignature(var10
);
2583 var_psignaturenode1
= var10
;
2584 var_node_list
= var_psignaturenode1
;
2585 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction557> */
2586 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
2587 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
2590 /* method parser#ReduceAction557#action for (self: Object, Parser) */
2591 void VIRTUAL_parser__ReduceAction557__action(val
* self
, val
* p0
) {
2592 parser__ReduceAction557__action(self
, p0
);
2595 /* method parser#ReduceAction558#action for (self: ReduceAction558, Parser) */
2596 void parser__ReduceAction558__action(val
* self
, val
* p0
) {
2597 val
* var_p
/* var p: Parser */;
2598 val
* var
/* : null */;
2599 val
* var_node_list
/* var node_list: nullable Object */;
2600 val
* var1
/* : nullable Object */;
2601 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2602 val
* var2
/* : nullable Object */;
2603 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2604 val
* var3
/* : nullable Object */;
2605 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2606 val
* var4
/* : nullable Object */;
2607 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2608 val
* var5
/* : Array[Object] */;
2609 val
* var_listnode4
/* var listnode4: Array[Object] */;
2610 val
* var6
/* : Array[Object] */;
2611 val
* var_listnode7
/* var listnode7: Array[Object] */;
2612 val
* var_toparnode2
/* var toparnode2: nullable Object */;
2613 short int var7
/* : Bool */;
2616 val
* var_listnode3
/* var listnode3: nullable Object */;
2617 short int var8
/* : Bool */;
2620 val
* var11
/* : Array[Object] */;
2621 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
2622 short int var12
/* : Bool */;
2625 val
* var15
/* : ASignature */;
2626 val
* var16
/* : null */;
2627 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2628 long var17
/* : Int */;
2629 long var18
/* : Int */;
2632 var_node_list
= var
;
2633 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2634 var_nodearraylist4
= var1
;
2635 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2636 var_nodearraylist3
= var2
;
2637 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2638 var_nodearraylist2
= var3
;
2639 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2640 var_nodearraylist1
= var4
;
2641 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
2642 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
2643 CHECK_NEW_array__Array(var5
);
2644 var_listnode4
= var5
;
2645 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
2646 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
2647 CHECK_NEW_array__Array(var6
);
2648 var_listnode7
= var6
;
2649 var_toparnode2
= var_nodearraylist1
;
2650 /* <var_toparnode2:nullable Object> isa nullable TOpar */
2651 cltype
= type_nullable_parser_nodes__TOpar
.color
;
2652 idtype
= type_nullable_parser_nodes__TOpar
.id
;
2653 if(var_toparnode2
== NULL
) {
2656 if(cltype
>= var_toparnode2
->type
->table_size
) {
2659 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
2663 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23601);
2666 var_listnode3
= var_nodearraylist3
;
2667 /* <var_listnode3:nullable Object> isa Array[Object] */
2668 cltype9
= type_array__Arraykernel__Object
.color
;
2669 idtype10
= type_array__Arraykernel__Object
.id
;
2670 if(var_listnode3
== NULL
) {
2673 if(cltype9
>= var_listnode3
->type
->table_size
) {
2676 var8
= var_listnode3
->type
->type_table
[cltype9
] == idtype10
;
2680 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23603);
2683 var11
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction558>*/;
2684 var_listnode4
= var11
;
2685 var_tcparnode5
= var_nodearraylist4
;
2686 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
2687 cltype13
= type_nullable_parser_nodes__TCpar
.color
;
2688 idtype14
= type_nullable_parser_nodes__TCpar
.id
;
2689 if(var_tcparnode5
== NULL
) {
2692 if(cltype13
>= var_tcparnode5
->type
->table_size
) {
2695 var12
= var_tcparnode5
->type
->type_table
[cltype13
] == idtype14
;
2699 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23606);
2702 var15
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2704 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var15
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var16
, var_listnode7
) /* init_asignature on <var15:ASignature>*/;
2705 CHECK_NEW_parser_nodes__ASignature(var15
);
2706 var_psignaturenode1
= var15
;
2707 var_node_list
= var_psignaturenode1
;
2708 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction558> */
2709 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
2710 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
2713 /* method parser#ReduceAction558#action for (self: Object, Parser) */
2714 void VIRTUAL_parser__ReduceAction558__action(val
* self
, val
* p0
) {
2715 parser__ReduceAction558__action(self
, p0
);
2718 /* method parser#ReduceAction559#action for (self: ReduceAction559, Parser) */
2719 void parser__ReduceAction559__action(val
* self
, val
* p0
) {
2720 val
* var_p
/* var p: Parser */;
2721 val
* var
/* : null */;
2722 val
* var_node_list
/* var node_list: nullable Object */;
2723 val
* var1
/* : nullable Object */;
2724 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2725 val
* var2
/* : nullable Object */;
2726 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2727 val
* var3
/* : nullable Object */;
2728 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2729 val
* var4
/* : nullable Object */;
2730 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2731 val
* var5
/* : Array[Object] */;
2732 val
* var_listnode3
/* var listnode3: Array[Object] */;
2733 val
* var6
/* : Array[Object] */;
2734 val
* var_listnode6
/* var listnode6: Array[Object] */;
2735 val
* var_toparnode2
/* var toparnode2: nullable Object */;
2736 short int var7
/* : Bool */;
2739 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
2740 short int var8
/* : Bool */;
2743 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
2744 short int var11
/* : Bool */;
2747 val
* var14
/* : ASignature */;
2748 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2749 long var15
/* : Int */;
2750 long var16
/* : Int */;
2753 var_node_list
= var
;
2754 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2755 var_nodearraylist4
= var1
;
2756 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2757 var_nodearraylist3
= var2
;
2758 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2759 var_nodearraylist2
= var3
;
2760 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2761 var_nodearraylist1
= var4
;
2762 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
2763 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
2764 CHECK_NEW_array__Array(var5
);
2765 var_listnode3
= var5
;
2766 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
2767 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
2768 CHECK_NEW_array__Array(var6
);
2769 var_listnode6
= var6
;
2770 var_toparnode2
= var_nodearraylist1
;
2771 /* <var_toparnode2:nullable Object> isa nullable TOpar */
2772 cltype
= type_nullable_parser_nodes__TOpar
.color
;
2773 idtype
= type_nullable_parser_nodes__TOpar
.id
;
2774 if(var_toparnode2
== NULL
) {
2777 if(cltype
>= var_toparnode2
->type
->table_size
) {
2780 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
2784 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23630);
2787 var_tcparnode4
= var_nodearraylist3
;
2788 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
2789 cltype9
= type_nullable_parser_nodes__TCpar
.color
;
2790 idtype10
= type_nullable_parser_nodes__TCpar
.id
;
2791 if(var_tcparnode4
== NULL
) {
2794 if(cltype9
>= var_tcparnode4
->type
->table_size
) {
2797 var8
= var_tcparnode4
->type
->type_table
[cltype9
] == idtype10
;
2801 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23632);
2804 var_ptypenode5
= var_nodearraylist4
;
2805 /* <var_ptypenode5:nullable Object> isa nullable AType */
2806 cltype12
= type_nullable_parser_nodes__AType
.color
;
2807 idtype13
= type_nullable_parser_nodes__AType
.id
;
2808 if(var_ptypenode5
== NULL
) {
2811 if(cltype12
>= var_ptypenode5
->type
->table_size
) {
2814 var11
= var_ptypenode5
->type
->type_table
[cltype12
] == idtype13
;
2818 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23634);
2821 var14
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2822 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var14
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var_ptypenode5
, var_listnode6
) /* init_asignature on <var14:ASignature>*/;
2823 CHECK_NEW_parser_nodes__ASignature(var14
);
2824 var_psignaturenode1
= var14
;
2825 var_node_list
= var_psignaturenode1
;
2826 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction559> */
2827 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
2828 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
2831 /* method parser#ReduceAction559#action for (self: Object, Parser) */
2832 void VIRTUAL_parser__ReduceAction559__action(val
* self
, val
* p0
) {
2833 parser__ReduceAction559__action(self
, p0
);
2836 /* method parser#ReduceAction560#action for (self: ReduceAction560, Parser) */
2837 void parser__ReduceAction560__action(val
* self
, val
* p0
) {
2838 val
* var_p
/* var p: Parser */;
2839 val
* var
/* : null */;
2840 val
* var_node_list
/* var node_list: nullable Object */;
2841 val
* var1
/* : nullable Object */;
2842 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2843 val
* var2
/* : nullable Object */;
2844 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2845 val
* var3
/* : nullable Object */;
2846 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2847 val
* var4
/* : nullable Object */;
2848 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2849 val
* var5
/* : nullable Object */;
2850 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2851 val
* var6
/* : Array[Object] */;
2852 val
* var_listnode4
/* var listnode4: Array[Object] */;
2853 val
* var7
/* : Array[Object] */;
2854 val
* var_listnode7
/* var listnode7: Array[Object] */;
2855 val
* var_toparnode2
/* var toparnode2: nullable Object */;
2856 short int var8
/* : Bool */;
2859 val
* var_listnode3
/* var listnode3: nullable Object */;
2860 short int var9
/* : Bool */;
2863 val
* var12
/* : Array[Object] */;
2864 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
2865 short int var13
/* : Bool */;
2868 val
* var_ptypenode6
/* var ptypenode6: nullable Object */;
2869 short int var16
/* : Bool */;
2872 val
* var19
/* : ASignature */;
2873 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2874 long var20
/* : Int */;
2875 long var21
/* : Int */;
2878 var_node_list
= var
;
2879 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2880 var_nodearraylist5
= var1
;
2881 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2882 var_nodearraylist4
= var2
;
2883 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2884 var_nodearraylist3
= var3
;
2885 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2886 var_nodearraylist2
= var4
;
2887 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2888 var_nodearraylist1
= var5
;
2889 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
2890 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
2891 CHECK_NEW_array__Array(var6
);
2892 var_listnode4
= var6
;
2893 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
2894 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
2895 CHECK_NEW_array__Array(var7
);
2896 var_listnode7
= var7
;
2897 var_toparnode2
= var_nodearraylist1
;
2898 /* <var_toparnode2:nullable Object> isa nullable TOpar */
2899 cltype
= type_nullable_parser_nodes__TOpar
.color
;
2900 idtype
= type_nullable_parser_nodes__TOpar
.id
;
2901 if(var_toparnode2
== NULL
) {
2904 if(cltype
>= var_toparnode2
->type
->table_size
) {
2907 var8
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
2911 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23659);
2914 var_listnode3
= var_nodearraylist3
;
2915 /* <var_listnode3:nullable Object> isa Array[Object] */
2916 cltype10
= type_array__Arraykernel__Object
.color
;
2917 idtype11
= type_array__Arraykernel__Object
.id
;
2918 if(var_listnode3
== NULL
) {
2921 if(cltype10
>= var_listnode3
->type
->table_size
) {
2924 var9
= var_listnode3
->type
->type_table
[cltype10
] == idtype11
;
2928 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23661);
2931 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction560>*/;
2932 var_listnode4
= var12
;
2933 var_tcparnode5
= var_nodearraylist4
;
2934 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
2935 cltype14
= type_nullable_parser_nodes__TCpar
.color
;
2936 idtype15
= type_nullable_parser_nodes__TCpar
.id
;
2937 if(var_tcparnode5
== NULL
) {
2940 if(cltype14
>= var_tcparnode5
->type
->table_size
) {
2943 var13
= var_tcparnode5
->type
->type_table
[cltype14
] == idtype15
;
2947 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23664);
2950 var_ptypenode6
= var_nodearraylist5
;
2951 /* <var_ptypenode6:nullable Object> isa nullable AType */
2952 cltype17
= type_nullable_parser_nodes__AType
.color
;
2953 idtype18
= type_nullable_parser_nodes__AType
.id
;
2954 if(var_ptypenode6
== NULL
) {
2957 if(cltype17
>= var_ptypenode6
->type
->table_size
) {
2960 var16
= var_ptypenode6
->type
->type_table
[cltype17
] == idtype18
;
2964 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23666);
2967 var19
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2968 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var19
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var_ptypenode6
, var_listnode7
) /* init_asignature on <var19:ASignature>*/;
2969 CHECK_NEW_parser_nodes__ASignature(var19
);
2970 var_psignaturenode1
= var19
;
2971 var_node_list
= var_psignaturenode1
;
2972 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction560> */
2973 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
2974 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
2977 /* method parser#ReduceAction560#action for (self: Object, Parser) */
2978 void VIRTUAL_parser__ReduceAction560__action(val
* self
, val
* p0
) {
2979 parser__ReduceAction560__action(self
, p0
);
2982 /* method parser#ReduceAction561#action for (self: ReduceAction561, Parser) */
2983 void parser__ReduceAction561__action(val
* self
, val
* p0
) {
2984 val
* var_p
/* var p: Parser */;
2985 val
* var
/* : null */;
2986 val
* var_node_list
/* var node_list: nullable Object */;
2987 val
* var1
/* : Array[Object] */;
2988 val
* var_listnode3
/* var listnode3: Array[Object] */;
2989 val
* var2
/* : Array[Object] */;
2990 val
* var_listnode6
/* var listnode6: Array[Object] */;
2991 val
* var3
/* : ASignature */;
2992 val
* var4
/* : null */;
2993 val
* var5
/* : null */;
2994 val
* var6
/* : null */;
2995 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2996 long var7
/* : Int */;
2997 long var8
/* : Int */;
3000 var_node_list
= var
;
3001 var1
= NEW_array__Array(&type_array__Arraykernel__Object
);
3002 ((void (*)(val
*))(var1
->class->vft
[COLOR_array__Array__init
]))(var1
) /* init on <var1:Array[Object]>*/;
3003 CHECK_NEW_array__Array(var1
);
3004 var_listnode3
= var1
;
3005 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
3006 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
3007 CHECK_NEW_array__Array(var2
);
3008 var_listnode6
= var2
;
3009 var3
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
3013 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var3
, var4
, var_listnode3
, var5
, var6
, var_listnode6
) /* init_asignature on <var3:ASignature>*/;
3014 CHECK_NEW_parser_nodes__ASignature(var3
);
3015 var_psignaturenode1
= var3
;
3016 var_node_list
= var_psignaturenode1
;
3017 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction561> */
3018 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
3019 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
3022 /* method parser#ReduceAction561#action for (self: Object, Parser) */
3023 void VIRTUAL_parser__ReduceAction561__action(val
* self
, val
* p0
) {
3024 parser__ReduceAction561__action(self
, p0
);
3027 /* method parser#ReduceAction562#action for (self: ReduceAction562, Parser) */
3028 void parser__ReduceAction562__action(val
* self
, val
* p0
) {
3029 val
* var_p
/* var p: Parser */;
3030 val
* var
/* : null */;
3031 val
* var_node_list
/* var node_list: nullable Object */;
3032 val
* var1
/* : nullable Object */;
3033 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3034 val
* var2
/* : Array[Object] */;
3035 val
* var_listnode3
/* var listnode3: Array[Object] */;
3036 val
* var3
/* : Array[Object] */;
3037 val
* var_listnode6
/* var listnode6: Array[Object] */;
3038 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
3039 short int var4
/* : Bool */;
3042 val
* var5
/* : ASignature */;
3043 val
* var6
/* : null */;
3044 val
* var7
/* : null */;
3045 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
3046 long var8
/* : Int */;
3047 long var9
/* : Int */;
3050 var_node_list
= var
;
3051 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3052 var_nodearraylist1
= var1
;
3053 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
3054 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
3055 CHECK_NEW_array__Array(var2
);
3056 var_listnode3
= var2
;
3057 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
3058 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
3059 CHECK_NEW_array__Array(var3
);
3060 var_listnode6
= var3
;
3061 var_ptypenode5
= var_nodearraylist1
;
3062 /* <var_ptypenode5:nullable Object> isa nullable AType */
3063 cltype
= type_nullable_parser_nodes__AType
.color
;
3064 idtype
= type_nullable_parser_nodes__AType
.id
;
3065 if(var_ptypenode5
== NULL
) {
3068 if(cltype
>= var_ptypenode5
->type
->table_size
) {
3071 var4
= var_ptypenode5
->type
->type_table
[cltype
] == idtype
;
3075 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23705);
3078 var5
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
3081 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var5
, var6
, var_listnode3
, var7
, var_ptypenode5
, var_listnode6
) /* init_asignature on <var5:ASignature>*/;
3082 CHECK_NEW_parser_nodes__ASignature(var5
);
3083 var_psignaturenode1
= var5
;
3084 var_node_list
= var_psignaturenode1
;
3085 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction562> */
3086 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3087 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3090 /* method parser#ReduceAction562#action for (self: Object, Parser) */
3091 void VIRTUAL_parser__ReduceAction562__action(val
* self
, val
* p0
) {
3092 parser__ReduceAction562__action(self
, p0
);
3095 /* method parser#ReduceAction563#action for (self: ReduceAction563, Parser) */
3096 void parser__ReduceAction563__action(val
* self
, val
* p0
) {
3097 val
* var_p
/* var p: Parser */;
3098 val
* var
/* : null */;
3099 val
* var_node_list
/* var node_list: nullable Object */;
3100 val
* var1
/* : nullable Object */;
3101 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3102 val
* var2
/* : nullable Object */;
3103 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3104 val
* var3
/* : Array[Object] */;
3105 val
* var_listnode2
/* var listnode2: Array[Object] */;
3106 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
3107 val
* var4
/* : null */;
3108 short int var5
/* : Bool */;
3109 long var6
/* : Int */;
3110 long var7
/* : Int */;
3113 var_node_list
= var
;
3114 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3115 var_nodearraylist2
= var1
;
3116 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3117 var_nodearraylist1
= var2
;
3118 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
3119 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
3120 CHECK_NEW_array__Array(var3
);
3121 var_listnode2
= var3
;
3122 var_pparamnode1
= var_nodearraylist1
;
3124 if (var_pparamnode1
== NULL
) {
3125 var5
= 0; /* is null */
3127 var5
= 1; /* arg is null and recv is not */
3130 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_pparamnode1
) /* add on <var_listnode2:Array[Object]>*/;
3133 var_node_list
= var_listnode2
;
3134 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction563> */
3135 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
3136 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
3139 /* method parser#ReduceAction563#action for (self: Object, Parser) */
3140 void VIRTUAL_parser__ReduceAction563__action(val
* self
, val
* p0
) {
3141 parser__ReduceAction563__action(self
, p0
);
3144 /* method parser#ReduceAction564#action for (self: ReduceAction564, Parser) */
3145 void parser__ReduceAction564__action(val
* self
, val
* p0
) {
3146 val
* var_p
/* var p: Parser */;
3147 val
* var
/* : null */;
3148 val
* var_node_list
/* var node_list: nullable Object */;
3149 val
* var1
/* : nullable Object */;
3150 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3151 val
* var2
/* : nullable Object */;
3152 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3153 val
* var3
/* : nullable Object */;
3154 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3155 val
* var4
/* : Array[Object] */;
3156 val
* var_listnode3
/* var listnode3: Array[Object] */;
3157 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
3158 val
* var_listnode2
/* var listnode2: nullable Object */;
3159 short int var5
/* : Bool */;
3162 val
* var6
/* : null */;
3163 short int var7
/* : Bool */;
3164 val
* var8
/* : Array[Object] */;
3165 long var9
/* : Int */;
3166 long var10
/* : Int */;
3169 var_node_list
= var
;
3170 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3171 var_nodearraylist3
= var1
;
3172 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3173 var_nodearraylist2
= var2
;
3174 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3175 var_nodearraylist1
= var3
;
3176 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
3177 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
3178 CHECK_NEW_array__Array(var4
);
3179 var_listnode3
= var4
;
3180 var_pparamnode1
= var_nodearraylist1
;
3181 var_listnode2
= var_nodearraylist2
;
3182 /* <var_listnode2:nullable Object> isa Array[Object] */
3183 cltype
= type_array__Arraykernel__Object
.color
;
3184 idtype
= type_array__Arraykernel__Object
.id
;
3185 if(var_listnode2
== NULL
) {
3188 if(cltype
>= var_listnode2
->type
->table_size
) {
3191 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
3195 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23744);
3199 if (var_pparamnode1
== NULL
) {
3200 var7
= 0; /* is null */
3202 var7
= 1; /* arg is null and recv is not */
3205 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pparamnode1
) /* add on <var_listnode3:Array[Object]>*/;
3208 var8
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction564>*/;
3209 var_listnode3
= var8
;
3210 var_node_list
= var_listnode3
;
3211 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction564> */
3212 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
3213 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
3216 /* method parser#ReduceAction564#action for (self: Object, Parser) */
3217 void VIRTUAL_parser__ReduceAction564__action(val
* self
, val
* p0
) {
3218 parser__ReduceAction564__action(self
, p0
);
3221 /* method parser#ReduceAction565#action for (self: ReduceAction565, Parser) */
3222 void parser__ReduceAction565__action(val
* self
, val
* p0
) {
3223 val
* var_p
/* var p: Parser */;
3224 val
* var
/* : null */;
3225 val
* var_node_list
/* var node_list: nullable Object */;
3226 val
* var1
/* : nullable Object */;
3227 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3228 val
* var2
/* : nullable Object */;
3229 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3230 val
* var3
/* : nullable Object */;
3231 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3232 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
3233 long var4
/* : Int */;
3234 long var5
/* : Int */;
3237 var_node_list
= var
;
3238 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3239 var_nodearraylist3
= var1
;
3240 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3241 var_nodearraylist2
= var2
;
3242 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3243 var_nodearraylist1
= var3
;
3244 var_pparamnode1
= var_nodearraylist3
;
3245 var_node_list
= var_pparamnode1
;
3246 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction565> */
3247 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3248 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3251 /* method parser#ReduceAction565#action for (self: Object, Parser) */
3252 void VIRTUAL_parser__ReduceAction565__action(val
* self
, val
* p0
) {
3253 parser__ReduceAction565__action(self
, p0
);
3256 /* method parser#ReduceAction566#action for (self: ReduceAction566, Parser) */
3257 void parser__ReduceAction566__action(val
* self
, val
* p0
) {
3258 val
* var_p
/* var p: Parser */;
3259 val
* var
/* : null */;
3260 val
* var_node_list
/* var node_list: nullable Object */;
3261 val
* var1
/* : nullable Object */;
3262 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3263 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3264 short int var2
/* : Bool */;
3267 val
* var3
/* : AParam */;
3268 val
* var4
/* : null */;
3269 val
* var5
/* : null */;
3270 val
* var6
/* : null */;
3271 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
3272 long var7
/* : Int */;
3273 long var8
/* : Int */;
3276 var_node_list
= var
;
3277 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3278 var_nodearraylist1
= var1
;
3279 var_tidnode2
= var_nodearraylist1
;
3280 /* <var_tidnode2:nullable Object> isa nullable TId */
3281 cltype
= type_nullable_parser_nodes__TId
.color
;
3282 idtype
= type_nullable_parser_nodes__TId
.id
;
3283 if(var_tidnode2
== NULL
) {
3286 if(cltype
>= var_tidnode2
->type
->table_size
) {
3289 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3293 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23773);
3296 var3
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
3300 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var3
, var_tidnode2
, var4
, var5
, var6
) /* init_aparam on <var3:AParam>*/;
3301 CHECK_NEW_parser_nodes__AParam(var3
);
3302 var_pparamnode1
= var3
;
3303 var_node_list
= var_pparamnode1
;
3304 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction566> */
3305 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
3306 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
3309 /* method parser#ReduceAction566#action for (self: Object, Parser) */
3310 void VIRTUAL_parser__ReduceAction566__action(val
* self
, val
* p0
) {
3311 parser__ReduceAction566__action(self
, p0
);
3314 /* method parser#ReduceAction567#action for (self: ReduceAction567, Parser) */
3315 void parser__ReduceAction567__action(val
* self
, val
* p0
) {
3316 val
* var_p
/* var p: Parser */;
3317 val
* var
/* : null */;
3318 val
* var_node_list
/* var node_list: nullable Object */;
3319 val
* var1
/* : nullable Object */;
3320 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3321 val
* var2
/* : nullable Object */;
3322 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3323 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3324 short int var3
/* : Bool */;
3327 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
3328 short int var4
/* : Bool */;
3331 val
* var7
/* : AParam */;
3332 val
* var8
/* : null */;
3333 val
* var9
/* : null */;
3334 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
3335 long var10
/* : Int */;
3336 long var11
/* : Int */;
3339 var_node_list
= var
;
3340 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3341 var_nodearraylist2
= var1
;
3342 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3343 var_nodearraylist1
= var2
;
3344 var_tidnode2
= var_nodearraylist1
;
3345 /* <var_tidnode2:nullable Object> isa nullable TId */
3346 cltype
= type_nullable_parser_nodes__TId
.color
;
3347 idtype
= type_nullable_parser_nodes__TId
.id
;
3348 if(var_tidnode2
== NULL
) {
3351 if(cltype
>= var_tidnode2
->type
->table_size
) {
3354 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3358 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23792);
3361 var_pannotationsnode5
= var_nodearraylist2
;
3362 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
3363 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
3364 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
3365 if(var_pannotationsnode5
== NULL
) {
3368 if(cltype5
>= var_pannotationsnode5
->type
->table_size
) {
3371 var4
= var_pannotationsnode5
->type
->type_table
[cltype5
] == idtype6
;
3375 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23794);
3378 var7
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
3381 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var7
, var_tidnode2
, var8
, var9
, var_pannotationsnode5
) /* init_aparam on <var7:AParam>*/;
3382 CHECK_NEW_parser_nodes__AParam(var7
);
3383 var_pparamnode1
= var7
;
3384 var_node_list
= var_pparamnode1
;
3385 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction567> */
3386 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3387 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3390 /* method parser#ReduceAction567#action for (self: Object, Parser) */
3391 void VIRTUAL_parser__ReduceAction567__action(val
* self
, val
* p0
) {
3392 parser__ReduceAction567__action(self
, p0
);
3395 /* method parser#ReduceAction568#action for (self: ReduceAction568, Parser) */
3396 void parser__ReduceAction568__action(val
* self
, val
* p0
) {
3397 val
* var_p
/* var p: Parser */;
3398 val
* var
/* : null */;
3399 val
* var_node_list
/* var node_list: nullable Object */;
3400 val
* var1
/* : nullable Object */;
3401 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3402 val
* var2
/* : nullable Object */;
3403 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3404 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3405 short int var3
/* : Bool */;
3408 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
3409 short int var4
/* : Bool */;
3412 val
* var7
/* : AParam */;
3413 val
* var8
/* : null */;
3414 val
* var9
/* : null */;
3415 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
3416 long var10
/* : Int */;
3417 long var11
/* : Int */;
3420 var_node_list
= var
;
3421 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3422 var_nodearraylist2
= var1
;
3423 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3424 var_nodearraylist1
= var2
;
3425 var_tidnode2
= var_nodearraylist1
;
3426 /* <var_tidnode2:nullable Object> isa nullable TId */
3427 cltype
= type_nullable_parser_nodes__TId
.color
;
3428 idtype
= type_nullable_parser_nodes__TId
.id
;
3429 if(var_tidnode2
== NULL
) {
3432 if(cltype
>= var_tidnode2
->type
->table_size
) {
3435 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3439 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23813);
3442 var_ptypenode3
= var_nodearraylist2
;
3443 /* <var_ptypenode3:nullable Object> isa nullable AType */
3444 cltype5
= type_nullable_parser_nodes__AType
.color
;
3445 idtype6
= type_nullable_parser_nodes__AType
.id
;
3446 if(var_ptypenode3
== NULL
) {
3449 if(cltype5
>= var_ptypenode3
->type
->table_size
) {
3452 var4
= var_ptypenode3
->type
->type_table
[cltype5
] == idtype6
;
3456 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23815);
3459 var7
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
3462 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var7
, var_tidnode2
, var_ptypenode3
, var8
, var9
) /* init_aparam on <var7:AParam>*/;
3463 CHECK_NEW_parser_nodes__AParam(var7
);
3464 var_pparamnode1
= var7
;
3465 var_node_list
= var_pparamnode1
;
3466 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction568> */
3467 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3468 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3471 /* method parser#ReduceAction568#action for (self: Object, Parser) */
3472 void VIRTUAL_parser__ReduceAction568__action(val
* self
, val
* p0
) {
3473 parser__ReduceAction568__action(self
, p0
);
3476 /* method parser#ReduceAction569#action for (self: ReduceAction569, Parser) */
3477 void parser__ReduceAction569__action(val
* self
, val
* p0
) {
3478 val
* var_p
/* var p: Parser */;
3479 val
* var
/* : null */;
3480 val
* var_node_list
/* var node_list: nullable Object */;
3481 val
* var1
/* : nullable Object */;
3482 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3483 val
* var2
/* : nullable Object */;
3484 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3485 val
* var3
/* : nullable Object */;
3486 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3487 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3488 short int var4
/* : Bool */;
3491 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
3492 short int var5
/* : Bool */;
3495 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
3496 short int var8
/* : Bool */;
3499 val
* var11
/* : AParam */;
3500 val
* var12
/* : null */;
3501 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
3502 long var13
/* : Int */;
3503 long var14
/* : Int */;
3506 var_node_list
= var
;
3507 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3508 var_nodearraylist3
= var1
;
3509 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3510 var_nodearraylist2
= var2
;
3511 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3512 var_nodearraylist1
= var3
;
3513 var_tidnode2
= var_nodearraylist1
;
3514 /* <var_tidnode2:nullable Object> isa nullable TId */
3515 cltype
= type_nullable_parser_nodes__TId
.color
;
3516 idtype
= type_nullable_parser_nodes__TId
.id
;
3517 if(var_tidnode2
== NULL
) {
3520 if(cltype
>= var_tidnode2
->type
->table_size
) {
3523 var4
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3527 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23835);
3530 var_ptypenode3
= var_nodearraylist3
;
3531 /* <var_ptypenode3:nullable Object> isa nullable AType */
3532 cltype6
= type_nullable_parser_nodes__AType
.color
;
3533 idtype7
= type_nullable_parser_nodes__AType
.id
;
3534 if(var_ptypenode3
== NULL
) {
3537 if(cltype6
>= var_ptypenode3
->type
->table_size
) {
3540 var5
= var_ptypenode3
->type
->type_table
[cltype6
] == idtype7
;
3544 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23837);
3547 var_pannotationsnode5
= var_nodearraylist2
;
3548 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
3549 cltype9
= type_nullable_parser_nodes__AAnnotations
.color
;
3550 idtype10
= type_nullable_parser_nodes__AAnnotations
.id
;
3551 if(var_pannotationsnode5
== NULL
) {
3554 if(cltype9
>= var_pannotationsnode5
->type
->table_size
) {
3557 var8
= var_pannotationsnode5
->type
->type_table
[cltype9
] == idtype10
;
3561 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23839);
3564 var11
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
3566 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var11
, var_tidnode2
, var_ptypenode3
, var12
, var_pannotationsnode5
) /* init_aparam on <var11:AParam>*/;
3567 CHECK_NEW_parser_nodes__AParam(var11
);
3568 var_pparamnode1
= var11
;
3569 var_node_list
= var_pparamnode1
;
3570 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction569> */
3571 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
3572 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
3575 /* method parser#ReduceAction569#action for (self: Object, Parser) */
3576 void VIRTUAL_parser__ReduceAction569__action(val
* self
, val
* p0
) {
3577 parser__ReduceAction569__action(self
, p0
);
3580 /* method parser#ReduceAction570#action for (self: ReduceAction570, Parser) */
3581 void parser__ReduceAction570__action(val
* self
, val
* p0
) {
3582 val
* var_p
/* var p: Parser */;
3583 val
* var
/* : null */;
3584 val
* var_node_list
/* var node_list: nullable Object */;
3585 val
* var1
/* : nullable Object */;
3586 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3587 val
* var2
/* : nullable Object */;
3588 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3589 val
* var3
/* : nullable Object */;
3590 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3591 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3592 short int var4
/* : Bool */;
3595 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
3596 short int var5
/* : Bool */;
3599 val
* var_tdotdotdotnode4
/* var tdotdotdotnode4: nullable Object */;
3600 short int var8
/* : Bool */;
3603 val
* var11
/* : AParam */;
3604 val
* var12
/* : null */;
3605 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
3606 long var13
/* : Int */;
3607 long var14
/* : Int */;
3610 var_node_list
= var
;
3611 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3612 var_nodearraylist3
= var1
;
3613 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3614 var_nodearraylist2
= var2
;
3615 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3616 var_nodearraylist1
= var3
;
3617 var_tidnode2
= var_nodearraylist1
;
3618 /* <var_tidnode2:nullable Object> isa nullable TId */
3619 cltype
= type_nullable_parser_nodes__TId
.color
;
3620 idtype
= type_nullable_parser_nodes__TId
.id
;
3621 if(var_tidnode2
== NULL
) {
3624 if(cltype
>= var_tidnode2
->type
->table_size
) {
3627 var4
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3631 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23859);
3634 var_ptypenode3
= var_nodearraylist2
;
3635 /* <var_ptypenode3:nullable Object> isa nullable AType */
3636 cltype6
= type_nullable_parser_nodes__AType
.color
;
3637 idtype7
= type_nullable_parser_nodes__AType
.id
;
3638 if(var_ptypenode3
== NULL
) {
3641 if(cltype6
>= var_ptypenode3
->type
->table_size
) {
3644 var5
= var_ptypenode3
->type
->type_table
[cltype6
] == idtype7
;
3648 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23861);
3651 var_tdotdotdotnode4
= var_nodearraylist3
;
3652 /* <var_tdotdotdotnode4:nullable Object> isa nullable TDotdotdot */
3653 cltype9
= type_nullable_parser_nodes__TDotdotdot
.color
;
3654 idtype10
= type_nullable_parser_nodes__TDotdotdot
.id
;
3655 if(var_tdotdotdotnode4
== NULL
) {
3658 if(cltype9
>= var_tdotdotdotnode4
->type
->table_size
) {
3661 var8
= var_tdotdotdotnode4
->type
->type_table
[cltype9
] == idtype10
;
3665 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23863);
3668 var11
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
3670 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var11
, var_tidnode2
, var_ptypenode3
, var_tdotdotdotnode4
, var12
) /* init_aparam on <var11:AParam>*/;
3671 CHECK_NEW_parser_nodes__AParam(var11
);
3672 var_pparamnode1
= var11
;
3673 var_node_list
= var_pparamnode1
;
3674 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction570> */
3675 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
3676 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
3679 /* method parser#ReduceAction570#action for (self: Object, Parser) */
3680 void VIRTUAL_parser__ReduceAction570__action(val
* self
, val
* p0
) {
3681 parser__ReduceAction570__action(self
, p0
);
3684 /* method parser#ReduceAction571#action for (self: ReduceAction571, Parser) */
3685 void parser__ReduceAction571__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_nodearraylist4
/* var nodearraylist4: nullable Object */;
3691 val
* var2
/* : nullable Object */;
3692 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3693 val
* var3
/* : nullable Object */;
3694 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3695 val
* var4
/* : nullable Object */;
3696 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3697 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3698 short int var5
/* : Bool */;
3701 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
3702 short int var6
/* : Bool */;
3705 val
* var_tdotdotdotnode4
/* var tdotdotdotnode4: nullable Object */;
3706 short int var9
/* : Bool */;
3709 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
3710 short int var12
/* : Bool */;
3713 val
* var15
/* : AParam */;
3714 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
3715 long var16
/* : Int */;
3716 long var17
/* : Int */;
3719 var_node_list
= var
;
3720 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3721 var_nodearraylist4
= var1
;
3722 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3723 var_nodearraylist3
= var2
;
3724 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3725 var_nodearraylist2
= var3
;
3726 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3727 var_nodearraylist1
= var4
;
3728 var_tidnode2
= var_nodearraylist1
;
3729 /* <var_tidnode2:nullable Object> isa nullable TId */
3730 cltype
= type_nullable_parser_nodes__TId
.color
;
3731 idtype
= type_nullable_parser_nodes__TId
.id
;
3732 if(var_tidnode2
== NULL
) {
3735 if(cltype
>= var_tidnode2
->type
->table_size
) {
3738 var5
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3742 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23884);
3745 var_ptypenode3
= var_nodearraylist3
;
3746 /* <var_ptypenode3:nullable Object> isa nullable AType */
3747 cltype7
= type_nullable_parser_nodes__AType
.color
;
3748 idtype8
= type_nullable_parser_nodes__AType
.id
;
3749 if(var_ptypenode3
== NULL
) {
3752 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
3755 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
3759 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23886);
3762 var_tdotdotdotnode4
= var_nodearraylist4
;
3763 /* <var_tdotdotdotnode4:nullable Object> isa nullable TDotdotdot */
3764 cltype10
= type_nullable_parser_nodes__TDotdotdot
.color
;
3765 idtype11
= type_nullable_parser_nodes__TDotdotdot
.id
;
3766 if(var_tdotdotdotnode4
== NULL
) {
3769 if(cltype10
>= var_tdotdotdotnode4
->type
->table_size
) {
3772 var9
= var_tdotdotdotnode4
->type
->type_table
[cltype10
] == idtype11
;
3776 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23888);
3779 var_pannotationsnode5
= var_nodearraylist2
;
3780 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
3781 cltype13
= type_nullable_parser_nodes__AAnnotations
.color
;
3782 idtype14
= type_nullable_parser_nodes__AAnnotations
.id
;
3783 if(var_pannotationsnode5
== NULL
) {
3786 if(cltype13
>= var_pannotationsnode5
->type
->table_size
) {
3789 var12
= var_pannotationsnode5
->type
->type_table
[cltype13
] == idtype14
;
3793 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23890);
3796 var15
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
3797 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var15
, var_tidnode2
, var_ptypenode3
, var_tdotdotdotnode4
, var_pannotationsnode5
) /* init_aparam on <var15:AParam>*/;
3798 CHECK_NEW_parser_nodes__AParam(var15
);
3799 var_pparamnode1
= var15
;
3800 var_node_list
= var_pparamnode1
;
3801 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction571> */
3802 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
3803 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
3806 /* method parser#ReduceAction571#action for (self: Object, Parser) */
3807 void VIRTUAL_parser__ReduceAction571__action(val
* self
, val
* p0
) {
3808 parser__ReduceAction571__action(self
, p0
);
3811 /* method parser#ReduceAction572#action for (self: ReduceAction572, Parser) */
3812 void parser__ReduceAction572__action(val
* self
, val
* p0
) {
3813 val
* var_p
/* var p: Parser */;
3814 val
* var
/* : null */;
3815 val
* var_node_list
/* var node_list: nullable Object */;
3816 val
* var1
/* : nullable Object */;
3817 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3818 val
* var2
/* : Array[Object] */;
3819 val
* var_listnode2
/* var listnode2: Array[Object] */;
3820 val
* var_listnode1
/* var listnode1: nullable Object */;
3821 short int var3
/* : Bool */;
3824 val
* var4
/* : Array[Object] */;
3825 long var5
/* : Int */;
3826 long var6
/* : Int */;
3829 var_node_list
= var
;
3830 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3831 var_nodearraylist1
= var1
;
3832 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
3833 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
3834 CHECK_NEW_array__Array(var2
);
3835 var_listnode2
= var2
;
3836 var_listnode1
= var_nodearraylist1
;
3837 /* <var_listnode1:nullable Object> isa Array[Object] */
3838 cltype
= type_array__Arraykernel__Object
.color
;
3839 idtype
= type_array__Arraykernel__Object
.id
;
3840 if(var_listnode1
== NULL
) {
3843 if(cltype
>= var_listnode1
->type
->table_size
) {
3846 var3
= var_listnode1
->type
->type_table
[cltype
] == idtype
;
3850 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23909);
3853 var4
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode2
, var_listnode1
) /* concat on <self:ReduceAction572>*/;
3854 var_listnode2
= var4
;
3855 var_node_list
= var_listnode2
;
3856 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction572> */
3857 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3858 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3861 /* method parser#ReduceAction572#action for (self: Object, Parser) */
3862 void VIRTUAL_parser__ReduceAction572__action(val
* self
, val
* p0
) {
3863 parser__ReduceAction572__action(self
, p0
);
3866 /* method parser#ReduceAction573#action for (self: ReduceAction573, Parser) */
3867 void parser__ReduceAction573__action(val
* self
, val
* p0
) {
3868 val
* var_p
/* var p: Parser */;
3869 val
* var
/* : null */;
3870 val
* var_node_list
/* var node_list: nullable Object */;
3871 val
* var1
/* : nullable Object */;
3872 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3873 val
* var2
/* : nullable Object */;
3874 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3875 val
* var3
/* : nullable Object */;
3876 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3877 val
* var4
/* : nullable Object */;
3878 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3879 val
* var_tbangnode3
/* var tbangnode3: nullable Object */;
3880 short int var5
/* : Bool */;
3883 val
* var_tidnode4
/* var tidnode4: nullable Object */;
3884 short int var6
/* : Bool */;
3887 val
* var_psignaturenode5
/* var psignaturenode5: nullable Object */;
3888 short int var9
/* : Bool */;
3891 val
* var12
/* : AClosureDecl */;
3892 val
* var13
/* : null */;
3893 val
* var14
/* : null */;
3894 val
* var_pclosuredeclnode1
/* var pclosuredeclnode1: nullable AClosureDecl */;
3895 long var15
/* : Int */;
3896 long var16
/* : Int */;
3899 var_node_list
= var
;
3900 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3901 var_nodearraylist4
= var1
;
3902 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3903 var_nodearraylist3
= var2
;
3904 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3905 var_nodearraylist2
= var3
;
3906 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3907 var_nodearraylist1
= var4
;
3908 var_tbangnode3
= var_nodearraylist1
;
3909 /* <var_tbangnode3:nullable Object> isa nullable TBang */
3910 cltype
= type_nullable_parser_nodes__TBang
.color
;
3911 idtype
= type_nullable_parser_nodes__TBang
.id
;
3912 if(var_tbangnode3
== NULL
) {
3915 if(cltype
>= var_tbangnode3
->type
->table_size
) {
3918 var5
= var_tbangnode3
->type
->type_table
[cltype
] == idtype
;
3922 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23925);
3925 var_tidnode4
= var_nodearraylist2
;
3926 /* <var_tidnode4:nullable Object> isa nullable TId */
3927 cltype7
= type_nullable_parser_nodes__TId
.color
;
3928 idtype8
= type_nullable_parser_nodes__TId
.id
;
3929 if(var_tidnode4
== NULL
) {
3932 if(cltype7
>= var_tidnode4
->type
->table_size
) {
3935 var6
= var_tidnode4
->type
->type_table
[cltype7
] == idtype8
;
3939 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23927);
3942 var_psignaturenode5
= var_nodearraylist3
;
3943 /* <var_psignaturenode5:nullable Object> isa nullable ASignature */
3944 cltype10
= type_nullable_parser_nodes__ASignature
.color
;
3945 idtype11
= type_nullable_parser_nodes__ASignature
.id
;
3946 if(var_psignaturenode5
== NULL
) {
3949 if(cltype10
>= var_psignaturenode5
->type
->table_size
) {
3952 var9
= var_psignaturenode5
->type
->type_table
[cltype10
] == idtype11
;
3956 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23929);
3959 var12
= NEW_parser_nodes__AClosureDecl(&type_parser_nodes__AClosureDecl
);
3962 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AClosureDecl__init_aclosuredecl
]))(var12
, var13
, var_tbangnode3
, var_tidnode4
, var_psignaturenode5
, var14
) /* init_aclosuredecl on <var12:AClosureDecl>*/;
3963 CHECK_NEW_parser_nodes__AClosureDecl(var12
);
3964 var_pclosuredeclnode1
= var12
;
3965 var_node_list
= var_pclosuredeclnode1
;
3966 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction573> */
3967 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
3968 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
3971 /* method parser#ReduceAction573#action for (self: Object, Parser) */
3972 void VIRTUAL_parser__ReduceAction573__action(val
* self
, val
* p0
) {
3973 parser__ReduceAction573__action(self
, p0
);
3976 /* method parser#ReduceAction574#action for (self: ReduceAction574, Parser) */
3977 void parser__ReduceAction574__action(val
* self
, val
* p0
) {
3978 val
* var_p
/* var p: Parser */;
3979 val
* var
/* : null */;
3980 val
* var_node_list
/* var node_list: nullable Object */;
3981 val
* var1
/* : nullable Object */;
3982 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3983 val
* var2
/* : nullable Object */;
3984 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3985 val
* var3
/* : nullable Object */;
3986 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3987 val
* var4
/* : nullable Object */;
3988 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3989 val
* var5
/* : nullable Object */;
3990 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3991 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
3992 short int var6
/* : Bool */;
3995 val
* var_tbangnode3
/* var tbangnode3: nullable Object */;
3996 short int var7
/* : Bool */;
3999 val
* var_tidnode4
/* var tidnode4: nullable Object */;
4000 short int var10
/* : Bool */;
4003 val
* var_psignaturenode5
/* var psignaturenode5: nullable Object */;
4004 short int var13
/* : Bool */;
4007 val
* var16
/* : AClosureDecl */;
4008 val
* var17
/* : null */;
4009 val
* var_pclosuredeclnode1
/* var pclosuredeclnode1: nullable AClosureDecl */;
4010 long var18
/* : Int */;
4011 long var19
/* : Int */;
4014 var_node_list
= var
;
4015 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4016 var_nodearraylist5
= var1
;
4017 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4018 var_nodearraylist4
= var2
;
4019 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4020 var_nodearraylist3
= var3
;
4021 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4022 var_nodearraylist2
= var4
;
4023 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4024 var_nodearraylist1
= var5
;
4025 var_tkwbreaknode2
= var_nodearraylist1
;
4026 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
4027 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
4028 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
4029 if(var_tkwbreaknode2
== NULL
) {
4032 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
4035 var6
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
4039 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23952);
4042 var_tbangnode3
= var_nodearraylist2
;
4043 /* <var_tbangnode3:nullable Object> isa nullable TBang */
4044 cltype8
= type_nullable_parser_nodes__TBang
.color
;
4045 idtype9
= type_nullable_parser_nodes__TBang
.id
;
4046 if(var_tbangnode3
== NULL
) {
4049 if(cltype8
>= var_tbangnode3
->type
->table_size
) {
4052 var7
= var_tbangnode3
->type
->type_table
[cltype8
] == idtype9
;
4056 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23954);
4059 var_tidnode4
= var_nodearraylist3
;
4060 /* <var_tidnode4:nullable Object> isa nullable TId */
4061 cltype11
= type_nullable_parser_nodes__TId
.color
;
4062 idtype12
= type_nullable_parser_nodes__TId
.id
;
4063 if(var_tidnode4
== NULL
) {
4066 if(cltype11
>= var_tidnode4
->type
->table_size
) {
4069 var10
= var_tidnode4
->type
->type_table
[cltype11
] == idtype12
;
4073 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23956);
4076 var_psignaturenode5
= var_nodearraylist4
;
4077 /* <var_psignaturenode5:nullable Object> isa nullable ASignature */
4078 cltype14
= type_nullable_parser_nodes__ASignature
.color
;
4079 idtype15
= type_nullable_parser_nodes__ASignature
.id
;
4080 if(var_psignaturenode5
== NULL
) {
4083 if(cltype14
>= var_psignaturenode5
->type
->table_size
) {
4086 var13
= var_psignaturenode5
->type
->type_table
[cltype14
] == idtype15
;
4090 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23958);
4093 var16
= NEW_parser_nodes__AClosureDecl(&type_parser_nodes__AClosureDecl
);
4095 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AClosureDecl__init_aclosuredecl
]))(var16
, var_tkwbreaknode2
, var_tbangnode3
, var_tidnode4
, var_psignaturenode5
, var17
) /* init_aclosuredecl on <var16:AClosureDecl>*/;
4096 CHECK_NEW_parser_nodes__AClosureDecl(var16
);
4097 var_pclosuredeclnode1
= var16
;
4098 var_node_list
= var_pclosuredeclnode1
;
4099 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction574> */
4100 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
4101 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
4104 /* method parser#ReduceAction574#action for (self: Object, Parser) */
4105 void VIRTUAL_parser__ReduceAction574__action(val
* self
, val
* p0
) {
4106 parser__ReduceAction574__action(self
, p0
);
4109 /* method parser#ReduceAction575#action for (self: ReduceAction575, Parser) */
4110 void parser__ReduceAction575__action(val
* self
, val
* p0
) {
4111 val
* var_p
/* var p: Parser */;
4112 val
* var
/* : null */;
4113 val
* var_node_list
/* var node_list: nullable Object */;
4114 val
* var1
/* : nullable Object */;
4115 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4116 val
* var2
/* : nullable Object */;
4117 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4118 val
* var3
/* : nullable Object */;
4119 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4120 val
* var4
/* : nullable Object */;
4121 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4122 val
* var5
/* : nullable Object */;
4123 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4124 val
* var6
/* : nullable Object */;
4125 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4126 val
* var_tbangnode3
/* var tbangnode3: nullable Object */;
4127 short int var7
/* : Bool */;
4130 val
* var_tidnode4
/* var tidnode4: nullable Object */;
4131 short int var8
/* : Bool */;
4134 val
* var_psignaturenode5
/* var psignaturenode5: nullable Object */;
4135 short int var11
/* : Bool */;
4138 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4139 short int var14
/* : Bool */;
4142 val
* var17
/* : AClosureDecl */;
4143 val
* var18
/* : null */;
4144 val
* var_pclosuredeclnode1
/* var pclosuredeclnode1: nullable AClosureDecl */;
4145 long var19
/* : Int */;
4146 long var20
/* : Int */;
4149 var_node_list
= var
;
4150 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4151 var_nodearraylist6
= var1
;
4152 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4153 var_nodearraylist5
= var2
;
4154 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4155 var_nodearraylist4
= var3
;
4156 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4157 var_nodearraylist3
= var4
;
4158 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4159 var_nodearraylist2
= var5
;
4160 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4161 var_nodearraylist1
= var6
;
4162 var_tbangnode3
= var_nodearraylist1
;
4163 /* <var_tbangnode3:nullable Object> isa nullable TBang */
4164 cltype
= type_nullable_parser_nodes__TBang
.color
;
4165 idtype
= type_nullable_parser_nodes__TBang
.id
;
4166 if(var_tbangnode3
== NULL
) {
4169 if(cltype
>= var_tbangnode3
->type
->table_size
) {
4172 var7
= var_tbangnode3
->type
->type_table
[cltype
] == idtype
;
4176 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23982);
4179 var_tidnode4
= var_nodearraylist2
;
4180 /* <var_tidnode4:nullable Object> isa nullable TId */
4181 cltype9
= type_nullable_parser_nodes__TId
.color
;
4182 idtype10
= type_nullable_parser_nodes__TId
.id
;
4183 if(var_tidnode4
== NULL
) {
4186 if(cltype9
>= var_tidnode4
->type
->table_size
) {
4189 var8
= var_tidnode4
->type
->type_table
[cltype9
] == idtype10
;
4193 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23984);
4196 var_psignaturenode5
= var_nodearraylist3
;
4197 /* <var_psignaturenode5:nullable Object> isa nullable ASignature */
4198 cltype12
= type_nullable_parser_nodes__ASignature
.color
;
4199 idtype13
= type_nullable_parser_nodes__ASignature
.id
;
4200 if(var_psignaturenode5
== NULL
) {
4203 if(cltype12
>= var_psignaturenode5
->type
->table_size
) {
4206 var11
= var_psignaturenode5
->type
->type_table
[cltype12
] == idtype13
;
4210 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23986);
4213 var_pexprnode6
= var_nodearraylist5
;
4214 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4215 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
4216 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
4217 if(var_pexprnode6
== NULL
) {
4220 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
4223 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
4227 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 23988);
4230 var17
= NEW_parser_nodes__AClosureDecl(&type_parser_nodes__AClosureDecl
);
4232 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AClosureDecl__init_aclosuredecl
]))(var17
, var18
, var_tbangnode3
, var_tidnode4
, var_psignaturenode5
, var_pexprnode6
) /* init_aclosuredecl on <var17:AClosureDecl>*/;
4233 CHECK_NEW_parser_nodes__AClosureDecl(var17
);
4234 var_pclosuredeclnode1
= var17
;
4235 var_node_list
= var_pclosuredeclnode1
;
4236 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction575> */
4237 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
4238 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
4241 /* method parser#ReduceAction575#action for (self: Object, Parser) */
4242 void VIRTUAL_parser__ReduceAction575__action(val
* self
, val
* p0
) {
4243 parser__ReduceAction575__action(self
, p0
);
4246 /* method parser#ReduceAction576#action for (self: ReduceAction576, Parser) */
4247 void parser__ReduceAction576__action(val
* self
, val
* p0
) {
4248 val
* var_p
/* var p: Parser */;
4249 val
* var
/* : null */;
4250 val
* var_node_list
/* var node_list: nullable Object */;
4251 val
* var1
/* : nullable Object */;
4252 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4253 val
* var2
/* : nullable Object */;
4254 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4255 val
* var3
/* : nullable Object */;
4256 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4257 val
* var4
/* : nullable Object */;
4258 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4259 val
* var5
/* : nullable Object */;
4260 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4261 val
* var6
/* : nullable Object */;
4262 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4263 val
* var7
/* : nullable Object */;
4264 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4265 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
4266 short int var8
/* : Bool */;
4269 val
* var_tbangnode3
/* var tbangnode3: nullable Object */;
4270 short int var9
/* : Bool */;
4273 val
* var_tidnode4
/* var tidnode4: nullable Object */;
4274 short int var12
/* : Bool */;
4277 val
* var_psignaturenode5
/* var psignaturenode5: nullable Object */;
4278 short int var15
/* : Bool */;
4281 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4282 short int var18
/* : Bool */;
4285 val
* var21
/* : AClosureDecl */;
4286 val
* var_pclosuredeclnode1
/* var pclosuredeclnode1: nullable AClosureDecl */;
4287 long var22
/* : Int */;
4288 long var23
/* : Int */;
4291 var_node_list
= var
;
4292 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4293 var_nodearraylist7
= var1
;
4294 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4295 var_nodearraylist6
= var2
;
4296 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4297 var_nodearraylist5
= var3
;
4298 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4299 var_nodearraylist4
= var4
;
4300 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4301 var_nodearraylist3
= var5
;
4302 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4303 var_nodearraylist2
= var6
;
4304 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4305 var_nodearraylist1
= var7
;
4306 var_tkwbreaknode2
= var_nodearraylist1
;
4307 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
4308 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
4309 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
4310 if(var_tkwbreaknode2
== NULL
) {
4313 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
4316 var8
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
4320 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24013);
4323 var_tbangnode3
= var_nodearraylist2
;
4324 /* <var_tbangnode3:nullable Object> isa nullable TBang */
4325 cltype10
= type_nullable_parser_nodes__TBang
.color
;
4326 idtype11
= type_nullable_parser_nodes__TBang
.id
;
4327 if(var_tbangnode3
== NULL
) {
4330 if(cltype10
>= var_tbangnode3
->type
->table_size
) {
4333 var9
= var_tbangnode3
->type
->type_table
[cltype10
] == idtype11
;
4337 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24015);
4340 var_tidnode4
= var_nodearraylist3
;
4341 /* <var_tidnode4:nullable Object> isa nullable TId */
4342 cltype13
= type_nullable_parser_nodes__TId
.color
;
4343 idtype14
= type_nullable_parser_nodes__TId
.id
;
4344 if(var_tidnode4
== NULL
) {
4347 if(cltype13
>= var_tidnode4
->type
->table_size
) {
4350 var12
= var_tidnode4
->type
->type_table
[cltype13
] == idtype14
;
4354 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24017);
4357 var_psignaturenode5
= var_nodearraylist4
;
4358 /* <var_psignaturenode5:nullable Object> isa nullable ASignature */
4359 cltype16
= type_nullable_parser_nodes__ASignature
.color
;
4360 idtype17
= type_nullable_parser_nodes__ASignature
.id
;
4361 if(var_psignaturenode5
== NULL
) {
4364 if(cltype16
>= var_psignaturenode5
->type
->table_size
) {
4367 var15
= var_psignaturenode5
->type
->type_table
[cltype16
] == idtype17
;
4371 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24019);
4374 var_pexprnode6
= var_nodearraylist6
;
4375 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4376 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
4377 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
4378 if(var_pexprnode6
== NULL
) {
4381 if(cltype19
>= var_pexprnode6
->type
->table_size
) {
4384 var18
= var_pexprnode6
->type
->type_table
[cltype19
] == idtype20
;
4388 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24021);
4391 var21
= NEW_parser_nodes__AClosureDecl(&type_parser_nodes__AClosureDecl
);
4392 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__AClosureDecl__init_aclosuredecl
]))(var21
, var_tkwbreaknode2
, var_tbangnode3
, var_tidnode4
, var_psignaturenode5
, var_pexprnode6
) /* init_aclosuredecl on <var21:AClosureDecl>*/;
4393 CHECK_NEW_parser_nodes__AClosureDecl(var21
);
4394 var_pclosuredeclnode1
= var21
;
4395 var_node_list
= var_pclosuredeclnode1
;
4396 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction576> */
4397 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
4398 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
4401 /* method parser#ReduceAction576#action for (self: Object, Parser) */
4402 void VIRTUAL_parser__ReduceAction576__action(val
* self
, val
* p0
) {
4403 parser__ReduceAction576__action(self
, p0
);
4406 /* method parser#ReduceAction577#action for (self: ReduceAction577, Parser) */
4407 void parser__ReduceAction577__action(val
* self
, val
* p0
) {
4408 val
* var_p
/* var p: Parser */;
4409 val
* var
/* : null */;
4410 val
* var_node_list
/* var node_list: nullable Object */;
4411 val
* var1
/* : nullable Object */;
4412 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4413 val
* var2
/* : nullable Object */;
4414 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4415 val
* var3
/* : nullable Object */;
4416 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4417 val
* var4
/* : nullable Object */;
4418 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4419 val
* var5
/* : nullable Object */;
4420 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4421 val
* var6
/* : nullable Object */;
4422 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4423 val
* var7
/* : nullable Object */;
4424 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4425 val
* var_tbangnode3
/* var tbangnode3: nullable Object */;
4426 short int var8
/* : Bool */;
4429 val
* var_tidnode4
/* var tidnode4: nullable Object */;
4430 short int var9
/* : Bool */;
4433 val
* var_psignaturenode5
/* var psignaturenode5: nullable Object */;
4434 short int var12
/* : Bool */;
4437 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4438 short int var15
/* : Bool */;
4441 val
* var18
/* : AClosureDecl */;
4442 val
* var19
/* : null */;
4443 val
* var_pclosuredeclnode1
/* var pclosuredeclnode1: nullable AClosureDecl */;
4444 long var20
/* : Int */;
4445 long var21
/* : Int */;
4448 var_node_list
= var
;
4449 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4450 var_nodearraylist7
= var1
;
4451 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4452 var_nodearraylist6
= var2
;
4453 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4454 var_nodearraylist5
= var3
;
4455 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4456 var_nodearraylist4
= var4
;
4457 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4458 var_nodearraylist3
= var5
;
4459 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4460 var_nodearraylist2
= var6
;
4461 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4462 var_nodearraylist1
= var7
;
4463 var_tbangnode3
= var_nodearraylist1
;
4464 /* <var_tbangnode3:nullable Object> isa nullable TBang */
4465 cltype
= type_nullable_parser_nodes__TBang
.color
;
4466 idtype
= type_nullable_parser_nodes__TBang
.id
;
4467 if(var_tbangnode3
== NULL
) {
4470 if(cltype
>= var_tbangnode3
->type
->table_size
) {
4473 var8
= var_tbangnode3
->type
->type_table
[cltype
] == idtype
;
4477 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24046);
4480 var_tidnode4
= var_nodearraylist2
;
4481 /* <var_tidnode4:nullable Object> isa nullable TId */
4482 cltype10
= type_nullable_parser_nodes__TId
.color
;
4483 idtype11
= type_nullable_parser_nodes__TId
.id
;
4484 if(var_tidnode4
== NULL
) {
4487 if(cltype10
>= var_tidnode4
->type
->table_size
) {
4490 var9
= var_tidnode4
->type
->type_table
[cltype10
] == idtype11
;
4494 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24048);
4497 var_psignaturenode5
= var_nodearraylist3
;
4498 /* <var_psignaturenode5:nullable Object> isa nullable ASignature */
4499 cltype13
= type_nullable_parser_nodes__ASignature
.color
;
4500 idtype14
= type_nullable_parser_nodes__ASignature
.id
;
4501 if(var_psignaturenode5
== NULL
) {
4504 if(cltype13
>= var_psignaturenode5
->type
->table_size
) {
4507 var12
= var_psignaturenode5
->type
->type_table
[cltype13
] == idtype14
;
4511 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24050);
4514 var_pexprnode6
= var_nodearraylist6
;
4515 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4516 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
4517 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
4518 if(var_pexprnode6
== NULL
) {
4521 if(cltype16
>= var_pexprnode6
->type
->table_size
) {
4524 var15
= var_pexprnode6
->type
->type_table
[cltype16
] == idtype17
;
4528 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24052);
4531 var18
= NEW_parser_nodes__AClosureDecl(&type_parser_nodes__AClosureDecl
);
4533 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__AClosureDecl__init_aclosuredecl
]))(var18
, var19
, var_tbangnode3
, var_tidnode4
, var_psignaturenode5
, var_pexprnode6
) /* init_aclosuredecl on <var18:AClosureDecl>*/;
4534 CHECK_NEW_parser_nodes__AClosureDecl(var18
);
4535 var_pclosuredeclnode1
= var18
;
4536 var_node_list
= var_pclosuredeclnode1
;
4537 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction577> */
4538 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
4539 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
4542 /* method parser#ReduceAction577#action for (self: Object, Parser) */
4543 void VIRTUAL_parser__ReduceAction577__action(val
* self
, val
* p0
) {
4544 parser__ReduceAction577__action(self
, p0
);
4547 /* method parser#ReduceAction578#action for (self: ReduceAction578, Parser) */
4548 void parser__ReduceAction578__action(val
* self
, val
* p0
) {
4549 val
* var_p
/* var p: Parser */;
4550 val
* var
/* : null */;
4551 val
* var_node_list
/* var node_list: nullable Object */;
4552 val
* var1
/* : nullable Object */;
4553 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4554 val
* var2
/* : nullable Object */;
4555 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4556 val
* var3
/* : nullable Object */;
4557 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4558 val
* var4
/* : nullable Object */;
4559 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4560 val
* var5
/* : nullable Object */;
4561 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4562 val
* var6
/* : nullable Object */;
4563 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4564 val
* var7
/* : nullable Object */;
4565 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4566 val
* var8
/* : nullable Object */;
4567 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4568 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
4569 short int var9
/* : Bool */;
4572 val
* var_tbangnode3
/* var tbangnode3: nullable Object */;
4573 short int var10
/* : Bool */;
4576 val
* var_tidnode4
/* var tidnode4: nullable Object */;
4577 short int var13
/* : Bool */;
4580 val
* var_psignaturenode5
/* var psignaturenode5: nullable Object */;
4581 short int var16
/* : Bool */;
4584 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4585 short int var19
/* : Bool */;
4588 val
* var22
/* : AClosureDecl */;
4589 val
* var_pclosuredeclnode1
/* var pclosuredeclnode1: nullable AClosureDecl */;
4590 long var23
/* : Int */;
4591 long var24
/* : Int */;
4594 var_node_list
= var
;
4595 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4596 var_nodearraylist8
= var1
;
4597 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4598 var_nodearraylist7
= var2
;
4599 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4600 var_nodearraylist6
= var3
;
4601 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4602 var_nodearraylist5
= var4
;
4603 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4604 var_nodearraylist4
= var5
;
4605 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4606 var_nodearraylist3
= var6
;
4607 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4608 var_nodearraylist2
= var7
;
4609 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4610 var_nodearraylist1
= var8
;
4611 var_tkwbreaknode2
= var_nodearraylist1
;
4612 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
4613 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
4614 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
4615 if(var_tkwbreaknode2
== NULL
) {
4618 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
4621 var9
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
4625 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24078);
4628 var_tbangnode3
= var_nodearraylist2
;
4629 /* <var_tbangnode3:nullable Object> isa nullable TBang */
4630 cltype11
= type_nullable_parser_nodes__TBang
.color
;
4631 idtype12
= type_nullable_parser_nodes__TBang
.id
;
4632 if(var_tbangnode3
== NULL
) {
4635 if(cltype11
>= var_tbangnode3
->type
->table_size
) {
4638 var10
= var_tbangnode3
->type
->type_table
[cltype11
] == idtype12
;
4642 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24080);
4645 var_tidnode4
= var_nodearraylist3
;
4646 /* <var_tidnode4:nullable Object> isa nullable TId */
4647 cltype14
= type_nullable_parser_nodes__TId
.color
;
4648 idtype15
= type_nullable_parser_nodes__TId
.id
;
4649 if(var_tidnode4
== NULL
) {
4652 if(cltype14
>= var_tidnode4
->type
->table_size
) {
4655 var13
= var_tidnode4
->type
->type_table
[cltype14
] == idtype15
;
4659 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24082);
4662 var_psignaturenode5
= var_nodearraylist4
;
4663 /* <var_psignaturenode5:nullable Object> isa nullable ASignature */
4664 cltype17
= type_nullable_parser_nodes__ASignature
.color
;
4665 idtype18
= type_nullable_parser_nodes__ASignature
.id
;
4666 if(var_psignaturenode5
== NULL
) {
4669 if(cltype17
>= var_psignaturenode5
->type
->table_size
) {
4672 var16
= var_psignaturenode5
->type
->type_table
[cltype17
] == idtype18
;
4676 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24084);
4679 var_pexprnode6
= var_nodearraylist7
;
4680 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4681 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
4682 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
4683 if(var_pexprnode6
== NULL
) {
4686 if(cltype20
>= var_pexprnode6
->type
->table_size
) {
4689 var19
= var_pexprnode6
->type
->type_table
[cltype20
] == idtype21
;
4693 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24086);
4696 var22
= NEW_parser_nodes__AClosureDecl(&type_parser_nodes__AClosureDecl
);
4697 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var22
->class->vft
[COLOR_parser_prod__AClosureDecl__init_aclosuredecl
]))(var22
, var_tkwbreaknode2
, var_tbangnode3
, var_tidnode4
, var_psignaturenode5
, var_pexprnode6
) /* init_aclosuredecl on <var22:AClosureDecl>*/;
4698 CHECK_NEW_parser_nodes__AClosureDecl(var22
);
4699 var_pclosuredeclnode1
= var22
;
4700 var_node_list
= var_pclosuredeclnode1
;
4701 var23
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction578> */
4702 var24
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var23
) /* go_to on <var_p:Parser>*/;
4703 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var24
, var_node_list
) /* push on <var_p:Parser>*/;
4706 /* method parser#ReduceAction578#action for (self: Object, Parser) */
4707 void VIRTUAL_parser__ReduceAction578__action(val
* self
, val
* p0
) {
4708 parser__ReduceAction578__action(self
, p0
);
4711 /* method parser#ReduceAction579#action for (self: ReduceAction579, Parser) */
4712 void parser__ReduceAction579__action(val
* self
, val
* p0
) {
4713 val
* var_p
/* var p: Parser */;
4714 val
* var
/* : null */;
4715 val
* var_node_list
/* var node_list: nullable Object */;
4716 val
* var1
/* : nullable Object */;
4717 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4718 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4719 short int var2
/* : Bool */;
4722 val
* var3
/* : AReturnExpr */;
4723 val
* var4
/* : null */;
4724 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
4725 long var5
/* : Int */;
4726 long var6
/* : Int */;
4729 var_node_list
= var
;
4730 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4731 var_nodearraylist1
= var1
;
4732 var_pexprnode3
= var_nodearraylist1
;
4733 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4734 cltype
= type_nullable_parser_nodes__AExpr
.color
;
4735 idtype
= type_nullable_parser_nodes__AExpr
.id
;
4736 if(var_pexprnode3
== NULL
) {
4739 if(cltype
>= var_pexprnode3
->type
->table_size
) {
4742 var2
= var_pexprnode3
->type
->type_table
[cltype
] == idtype
;
4746 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24105);
4749 var3
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
4751 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var3
, var4
, var_pexprnode3
) /* init_areturnexpr on <var3:AReturnExpr>*/;
4752 CHECK_NEW_parser_nodes__AReturnExpr(var3
);
4753 var_pexprnode1
= var3
;
4754 var_node_list
= var_pexprnode1
;
4755 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction579> */
4756 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
4757 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
4760 /* method parser#ReduceAction579#action for (self: Object, Parser) */
4761 void VIRTUAL_parser__ReduceAction579__action(val
* self
, val
* p0
) {
4762 parser__ReduceAction579__action(self
, p0
);
4765 /* method parser#ReduceAction580#action for (self: ReduceAction580, Parser) */
4766 void parser__ReduceAction580__action(val
* self
, val
* p0
) {
4767 val
* var_p
/* var p: Parser */;
4768 val
* var
/* : null */;
4769 val
* var_node_list
/* var node_list: nullable Object */;
4770 val
* var1
/* : nullable Object */;
4771 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4772 val
* var2
/* : nullable Object */;
4773 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4774 val
* var3
/* : nullable Object */;
4775 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4776 val
* var4
/* : Array[Object] */;
4777 val
* var_listnode4
/* var listnode4: Array[Object] */;
4778 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
4779 short int var5
/* : Bool */;
4782 val
* var_pexterncallnode3
/* var pexterncallnode3: nullable Object */;
4783 short int var6
/* : Bool */;
4786 val
* var9
/* : null */;
4787 short int var10
/* : Bool */;
4788 val
* var11
/* : AExternCalls */;
4789 val
* var_pexterncallsnode1
/* var pexterncallsnode1: nullable AExternCalls */;
4790 long var12
/* : Int */;
4791 long var13
/* : Int */;
4794 var_node_list
= var
;
4795 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4796 var_nodearraylist3
= var1
;
4797 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4798 var_nodearraylist2
= var2
;
4799 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4800 var_nodearraylist1
= var3
;
4801 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
4802 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
4803 CHECK_NEW_array__Array(var4
);
4804 var_listnode4
= var4
;
4805 var_tkwimportnode2
= var_nodearraylist1
;
4806 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
4807 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
4808 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
4809 if(var_tkwimportnode2
== NULL
) {
4812 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
4815 var5
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
4819 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24124);
4822 var_pexterncallnode3
= var_nodearraylist3
;
4823 /* <var_pexterncallnode3:nullable Object> isa nullable AExternCall */
4824 cltype7
= type_nullable_parser_nodes__AExternCall
.color
;
4825 idtype8
= type_nullable_parser_nodes__AExternCall
.id
;
4826 if(var_pexterncallnode3
== NULL
) {
4829 if(cltype7
>= var_pexterncallnode3
->type
->table_size
) {
4832 var6
= var_pexterncallnode3
->type
->type_table
[cltype7
] == idtype8
;
4836 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24126);
4840 if (var_pexterncallnode3
== NULL
) {
4841 var10
= 0; /* is null */
4843 var10
= 1; /* arg is null and recv is not */
4846 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexterncallnode3
) /* add on <var_listnode4:Array[Object]>*/;
4849 var11
= NEW_parser_nodes__AExternCalls(&type_parser_nodes__AExternCalls
);
4850 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AExternCalls__init_aexterncalls
]))(var11
, var_tkwimportnode2
, var_listnode4
) /* init_aexterncalls on <var11:AExternCalls>*/;
4851 CHECK_NEW_parser_nodes__AExternCalls(var11
);
4852 var_pexterncallsnode1
= var11
;
4853 var_node_list
= var_pexterncallsnode1
;
4854 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction580> */
4855 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
4856 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
4859 /* method parser#ReduceAction580#action for (self: Object, Parser) */
4860 void VIRTUAL_parser__ReduceAction580__action(val
* self
, val
* p0
) {
4861 parser__ReduceAction580__action(self
, p0
);
4864 /* method parser#ReduceAction581#action for (self: ReduceAction581, Parser) */
4865 void parser__ReduceAction581__action(val
* self
, val
* p0
) {
4866 val
* var_p
/* var p: Parser */;
4867 val
* var
/* : null */;
4868 val
* var_node_list
/* var node_list: nullable Object */;
4869 val
* var1
/* : nullable Object */;
4870 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4871 val
* var2
/* : nullable Object */;
4872 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4873 val
* var3
/* : nullable Object */;
4874 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4875 val
* var4
/* : nullable Object */;
4876 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4877 val
* var5
/* : Array[Object] */;
4878 val
* var_listnode5
/* var listnode5: Array[Object] */;
4879 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
4880 short int var6
/* : Bool */;
4883 val
* var_pexterncallnode3
/* var pexterncallnode3: nullable Object */;
4884 short int var7
/* : Bool */;
4887 val
* var_listnode4
/* var listnode4: nullable Object */;
4888 short int var10
/* : Bool */;
4891 val
* var13
/* : null */;
4892 short int var14
/* : Bool */;
4893 val
* var15
/* : Array[Object] */;
4894 val
* var16
/* : AExternCalls */;
4895 val
* var_pexterncallsnode1
/* var pexterncallsnode1: nullable AExternCalls */;
4896 long var17
/* : Int */;
4897 long var18
/* : Int */;
4900 var_node_list
= var
;
4901 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4902 var_nodearraylist4
= var1
;
4903 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4904 var_nodearraylist3
= var2
;
4905 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4906 var_nodearraylist2
= var3
;
4907 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4908 var_nodearraylist1
= var4
;
4909 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
4910 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
4911 CHECK_NEW_array__Array(var5
);
4912 var_listnode5
= var5
;
4913 var_tkwimportnode2
= var_nodearraylist1
;
4914 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
4915 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
4916 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
4917 if(var_tkwimportnode2
== NULL
) {
4920 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
4923 var6
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
4927 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24149);
4930 var_pexterncallnode3
= var_nodearraylist3
;
4931 /* <var_pexterncallnode3:nullable Object> isa nullable AExternCall */
4932 cltype8
= type_nullable_parser_nodes__AExternCall
.color
;
4933 idtype9
= type_nullable_parser_nodes__AExternCall
.id
;
4934 if(var_pexterncallnode3
== NULL
) {
4937 if(cltype8
>= var_pexterncallnode3
->type
->table_size
) {
4940 var7
= var_pexterncallnode3
->type
->type_table
[cltype8
] == idtype9
;
4944 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24151);
4947 var_listnode4
= var_nodearraylist4
;
4948 /* <var_listnode4:nullable Object> isa Array[Object] */
4949 cltype11
= type_array__Arraykernel__Object
.color
;
4950 idtype12
= type_array__Arraykernel__Object
.id
;
4951 if(var_listnode4
== NULL
) {
4954 if(cltype11
>= var_listnode4
->type
->table_size
) {
4957 var10
= var_listnode4
->type
->type_table
[cltype11
] == idtype12
;
4961 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24153);
4965 if (var_pexterncallnode3
== NULL
) {
4966 var14
= 0; /* is null */
4968 var14
= 1; /* arg is null and recv is not */
4971 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pexterncallnode3
) /* add on <var_listnode5:Array[Object]>*/;
4974 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction581>*/;
4975 var_listnode5
= var15
;
4976 var16
= NEW_parser_nodes__AExternCalls(&type_parser_nodes__AExternCalls
);
4977 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AExternCalls__init_aexterncalls
]))(var16
, var_tkwimportnode2
, var_listnode5
) /* init_aexterncalls on <var16:AExternCalls>*/;
4978 CHECK_NEW_parser_nodes__AExternCalls(var16
);
4979 var_pexterncallsnode1
= var16
;
4980 var_node_list
= var_pexterncallsnode1
;
4981 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction581> */
4982 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
4983 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
4986 /* method parser#ReduceAction581#action for (self: Object, Parser) */
4987 void VIRTUAL_parser__ReduceAction581__action(val
* self
, val
* p0
) {
4988 parser__ReduceAction581__action(self
, p0
);
4991 /* method parser#ReduceAction582#action for (self: ReduceAction582, Parser) */
4992 void parser__ReduceAction582__action(val
* self
, val
* p0
) {
4993 val
* var_p
/* var p: Parser */;
4994 val
* var
/* : null */;
4995 val
* var_node_list
/* var node_list: nullable Object */;
4996 val
* var1
/* : nullable Object */;
4997 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4998 val
* var2
/* : nullable Object */;
4999 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5000 val
* var3
/* : nullable Object */;
5001 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5002 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable Object */;
5003 long var4
/* : Int */;
5004 long var5
/* : Int */;
5007 var_node_list
= var
;
5008 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5009 var_nodearraylist3
= var1
;
5010 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5011 var_nodearraylist2
= var2
;
5012 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5013 var_nodearraylist1
= var3
;
5014 var_pexterncallnode1
= var_nodearraylist3
;
5015 var_node_list
= var_pexterncallnode1
;
5016 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction582> */
5017 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5018 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5021 /* method parser#ReduceAction582#action for (self: Object, Parser) */
5022 void VIRTUAL_parser__ReduceAction582__action(val
* self
, val
* p0
) {
5023 parser__ReduceAction582__action(self
, p0
);
5026 /* method parser#ReduceAction583#action for (self: ReduceAction583, Parser) */
5027 void parser__ReduceAction583__action(val
* self
, val
* p0
) {
5028 val
* var_p
/* var p: Parser */;
5029 val
* var
/* : null */;
5030 val
* var_node_list
/* var node_list: nullable Object */;
5031 val
* var1
/* : nullable Object */;
5032 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5033 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable Object */;
5034 long var2
/* : Int */;
5035 long var3
/* : Int */;
5038 var_node_list
= var
;
5039 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5040 var_nodearraylist1
= var1
;
5041 var_pexterncallnode1
= var_nodearraylist1
;
5042 var_node_list
= var_pexterncallnode1
;
5043 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction583> */
5044 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
5045 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
5048 /* method parser#ReduceAction583#action for (self: Object, Parser) */
5049 void VIRTUAL_parser__ReduceAction583__action(val
* self
, val
* p0
) {
5050 parser__ReduceAction583__action(self
, p0
);
5053 /* method parser#ReduceAction585#action for (self: ReduceAction585, Parser) */
5054 void parser__ReduceAction585__action(val
* self
, val
* p0
) {
5055 val
* var_p
/* var p: Parser */;
5056 val
* var
/* : null */;
5057 val
* var_node_list
/* var node_list: nullable Object */;
5058 val
* var1
/* : nullable Object */;
5059 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5060 val
* var_tkwsupernode2
/* var tkwsupernode2: nullable Object */;
5061 short int var2
/* : Bool */;
5064 val
* var3
/* : ASuperExternCall */;
5065 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ASuperExternCall */;
5066 long var4
/* : Int */;
5067 long var5
/* : Int */;
5070 var_node_list
= var
;
5071 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5072 var_nodearraylist1
= var1
;
5073 var_tkwsupernode2
= var_nodearraylist1
;
5074 /* <var_tkwsupernode2:nullable Object> isa nullable TKwsuper */
5075 cltype
= type_nullable_parser_nodes__TKwsuper
.color
;
5076 idtype
= type_nullable_parser_nodes__TKwsuper
.id
;
5077 if(var_tkwsupernode2
== NULL
) {
5080 if(cltype
>= var_tkwsupernode2
->type
->table_size
) {
5083 var2
= var_tkwsupernode2
->type
->type_table
[cltype
] == idtype
;
5087 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24197);
5090 var3
= NEW_parser_nodes__ASuperExternCall(&type_parser_nodes__ASuperExternCall
);
5091 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASuperExternCall__init_asuperexterncall
]))(var3
, var_tkwsupernode2
) /* init_asuperexterncall on <var3:ASuperExternCall>*/;
5092 CHECK_NEW_parser_nodes__ASuperExternCall(var3
);
5093 var_pexterncallnode1
= var3
;
5094 var_node_list
= var_pexterncallnode1
;
5095 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction585> */
5096 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5097 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5100 /* method parser#ReduceAction585#action for (self: Object, Parser) */
5101 void VIRTUAL_parser__ReduceAction585__action(val
* self
, val
* p0
) {
5102 parser__ReduceAction585__action(self
, p0
);
5105 /* method parser#ReduceAction586#action for (self: ReduceAction586, Parser) */
5106 void parser__ReduceAction586__action(val
* self
, val
* p0
) {
5107 val
* var_p
/* var p: Parser */;
5108 val
* var
/* : null */;
5109 val
* var_node_list
/* var node_list: nullable Object */;
5110 val
* var1
/* : nullable Object */;
5111 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5112 val
* var_pmethidnode2
/* var pmethidnode2: nullable Object */;
5113 short int var2
/* : Bool */;
5116 val
* var3
/* : ALocalPropExternCall */;
5117 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ALocalPropExternCall */;
5118 long var4
/* : Int */;
5119 long var5
/* : Int */;
5122 var_node_list
= var
;
5123 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5124 var_nodearraylist1
= var1
;
5125 var_pmethidnode2
= var_nodearraylist1
;
5126 /* <var_pmethidnode2:nullable Object> isa nullable AMethid */
5127 cltype
= type_nullable_parser_nodes__AMethid
.color
;
5128 idtype
= type_nullable_parser_nodes__AMethid
.id
;
5129 if(var_pmethidnode2
== NULL
) {
5132 if(cltype
>= var_pmethidnode2
->type
->table_size
) {
5135 var2
= var_pmethidnode2
->type
->type_table
[cltype
] == idtype
;
5139 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24212);
5142 var3
= NEW_parser_nodes__ALocalPropExternCall(&type_parser_nodes__ALocalPropExternCall
);
5143 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALocalPropExternCall__init_alocalpropexterncall
]))(var3
, var_pmethidnode2
) /* init_alocalpropexterncall on <var3:ALocalPropExternCall>*/;
5144 CHECK_NEW_parser_nodes__ALocalPropExternCall(var3
);
5145 var_pexterncallnode1
= var3
;
5146 var_node_list
= var_pexterncallnode1
;
5147 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction586> */
5148 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5149 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5152 /* method parser#ReduceAction586#action for (self: Object, Parser) */
5153 void VIRTUAL_parser__ReduceAction586__action(val
* self
, val
* p0
) {
5154 parser__ReduceAction586__action(self
, p0
);
5157 /* method parser#ReduceAction587#action for (self: ReduceAction587, Parser) */
5158 void parser__ReduceAction587__action(val
* self
, val
* p0
) {
5159 val
* var_p
/* var p: Parser */;
5160 val
* var
/* : null */;
5161 val
* var_node_list
/* var node_list: nullable Object */;
5162 val
* var1
/* : nullable Object */;
5163 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5164 val
* var2
/* : nullable Object */;
5165 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5166 val
* var3
/* : nullable Object */;
5167 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5168 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
5169 short int var4
/* : Bool */;
5172 val
* var_tquadnode3
/* var tquadnode3: nullable Object */;
5173 short int var5
/* : Bool */;
5176 val
* var_pmethidnode4
/* var pmethidnode4: nullable Object */;
5177 short int var8
/* : Bool */;
5180 val
* var11
/* : AFullPropExternCall */;
5181 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AFullPropExternCall */;
5182 long var12
/* : Int */;
5183 long var13
/* : Int */;
5186 var_node_list
= var
;
5187 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5188 var_nodearraylist3
= var1
;
5189 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5190 var_nodearraylist2
= var2
;
5191 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5192 var_nodearraylist1
= var3
;
5193 var_tclassidnode2
= var_nodearraylist1
;
5194 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
5195 cltype
= type_nullable_parser_nodes__TClassid
.color
;
5196 idtype
= type_nullable_parser_nodes__TClassid
.id
;
5197 if(var_tclassidnode2
== NULL
) {
5200 if(cltype
>= var_tclassidnode2
->type
->table_size
) {
5203 var4
= var_tclassidnode2
->type
->type_table
[cltype
] == idtype
;
5207 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24229);
5210 var_tquadnode3
= var_nodearraylist2
;
5211 /* <var_tquadnode3:nullable Object> isa nullable TQuad */
5212 cltype6
= type_nullable_parser_nodes__TQuad
.color
;
5213 idtype7
= type_nullable_parser_nodes__TQuad
.id
;
5214 if(var_tquadnode3
== NULL
) {
5217 if(cltype6
>= var_tquadnode3
->type
->table_size
) {
5220 var5
= var_tquadnode3
->type
->type_table
[cltype6
] == idtype7
;
5224 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24231);
5227 var_pmethidnode4
= var_nodearraylist3
;
5228 /* <var_pmethidnode4:nullable Object> isa nullable AMethid */
5229 cltype9
= type_nullable_parser_nodes__AMethid
.color
;
5230 idtype10
= type_nullable_parser_nodes__AMethid
.id
;
5231 if(var_pmethidnode4
== NULL
) {
5234 if(cltype9
>= var_pmethidnode4
->type
->table_size
) {
5237 var8
= var_pmethidnode4
->type
->type_table
[cltype9
] == idtype10
;
5241 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24233);
5244 var11
= NEW_parser_nodes__AFullPropExternCall(&type_parser_nodes__AFullPropExternCall
);
5245 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AFullPropExternCall__init_afullpropexterncall
]))(var11
, var_tclassidnode2
, var_tquadnode3
, var_pmethidnode4
) /* init_afullpropexterncall on <var11:AFullPropExternCall>*/;
5246 CHECK_NEW_parser_nodes__AFullPropExternCall(var11
);
5247 var_pexterncallnode1
= var11
;
5248 var_node_list
= var_pexterncallnode1
;
5249 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction587> */
5250 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
5251 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
5254 /* method parser#ReduceAction587#action for (self: Object, Parser) */
5255 void VIRTUAL_parser__ReduceAction587__action(val
* self
, val
* p0
) {
5256 parser__ReduceAction587__action(self
, p0
);
5259 /* method parser#ReduceAction588#action for (self: ReduceAction588, Parser) */
5260 void parser__ReduceAction588__action(val
* self
, val
* p0
) {
5261 val
* var_p
/* var p: Parser */;
5262 val
* var
/* : null */;
5263 val
* var_node_list
/* var node_list: nullable Object */;
5264 val
* var1
/* : nullable Object */;
5265 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5266 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
5267 short int var2
/* : Bool */;
5270 val
* var3
/* : AInitPropExternCall */;
5271 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AInitPropExternCall */;
5272 long var4
/* : Int */;
5273 long var5
/* : Int */;
5276 var_node_list
= var
;
5277 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5278 var_nodearraylist1
= var1
;
5279 var_tclassidnode2
= var_nodearraylist1
;
5280 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
5281 cltype
= type_nullable_parser_nodes__TClassid
.color
;
5282 idtype
= type_nullable_parser_nodes__TClassid
.id
;
5283 if(var_tclassidnode2
== NULL
) {
5286 if(cltype
>= var_tclassidnode2
->type
->table_size
) {
5289 var2
= var_tclassidnode2
->type
->type_table
[cltype
] == idtype
;
5293 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24250);
5296 var3
= NEW_parser_nodes__AInitPropExternCall(&type_parser_nodes__AInitPropExternCall
);
5297 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AInitPropExternCall__init_ainitpropexterncall
]))(var3
, var_tclassidnode2
) /* init_ainitpropexterncall on <var3:AInitPropExternCall>*/;
5298 CHECK_NEW_parser_nodes__AInitPropExternCall(var3
);
5299 var_pexterncallnode1
= var3
;
5300 var_node_list
= var_pexterncallnode1
;
5301 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction588> */
5302 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5303 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5306 /* method parser#ReduceAction588#action for (self: Object, Parser) */
5307 void VIRTUAL_parser__ReduceAction588__action(val
* self
, val
* p0
) {
5308 parser__ReduceAction588__action(self
, p0
);
5311 /* method parser#ReduceAction589#action for (self: ReduceAction589, Parser) */
5312 void parser__ReduceAction589__action(val
* self
, val
* p0
) {
5313 val
* var_p
/* var p: Parser */;
5314 val
* var
/* : null */;
5315 val
* var_node_list
/* var node_list: nullable Object */;
5316 val
* var1
/* : nullable Object */;
5317 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5318 val
* var2
/* : nullable Object */;
5319 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5320 val
* var3
/* : nullable Object */;
5321 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5322 val
* var4
/* : nullable Object */;
5323 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5324 val
* var5
/* : nullable Object */;
5325 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5326 val
* var6
/* : nullable Object */;
5327 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5328 val
* var7
/* : nullable Object */;
5329 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5330 val
* var8
/* : nullable Object */;
5331 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5332 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
5333 short int var9
/* : Bool */;
5336 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
5337 short int var10
/* : Bool */;
5340 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
5341 short int var13
/* : Bool */;
5344 val
* var16
/* : ACastAsExternCall */;
5345 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ACastAsExternCall */;
5346 long var17
/* : Int */;
5347 long var18
/* : Int */;
5350 var_node_list
= var
;
5351 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5352 var_nodearraylist8
= var1
;
5353 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5354 var_nodearraylist7
= var2
;
5355 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5356 var_nodearraylist6
= var3
;
5357 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5358 var_nodearraylist5
= var4
;
5359 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5360 var_nodearraylist4
= var5
;
5361 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5362 var_nodearraylist3
= var6
;
5363 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5364 var_nodearraylist2
= var7
;
5365 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5366 var_nodearraylist1
= var8
;
5367 var_ptypenode2
= var_nodearraylist1
;
5368 /* <var_ptypenode2:nullable Object> isa nullable AType */
5369 cltype
= type_nullable_parser_nodes__AType
.color
;
5370 idtype
= type_nullable_parser_nodes__AType
.id
;
5371 if(var_ptypenode2
== NULL
) {
5374 if(cltype
>= var_ptypenode2
->type
->table_size
) {
5377 var9
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
5381 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24272);
5384 var_tkwasnode3
= var_nodearraylist2
;
5385 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
5386 cltype11
= type_nullable_parser_nodes__TKwas
.color
;
5387 idtype12
= type_nullable_parser_nodes__TKwas
.id
;
5388 if(var_tkwasnode3
== NULL
) {
5391 if(cltype11
>= var_tkwasnode3
->type
->table_size
) {
5394 var10
= var_tkwasnode3
->type
->type_table
[cltype11
] == idtype12
;
5398 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24274);
5401 var_ptypenode4
= var_nodearraylist6
;
5402 /* <var_ptypenode4:nullable Object> isa nullable AType */
5403 cltype14
= type_nullable_parser_nodes__AType
.color
;
5404 idtype15
= type_nullable_parser_nodes__AType
.id
;
5405 if(var_ptypenode4
== NULL
) {
5408 if(cltype14
>= var_ptypenode4
->type
->table_size
) {
5411 var13
= var_ptypenode4
->type
->type_table
[cltype14
] == idtype15
;
5415 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24276);
5418 var16
= NEW_parser_nodes__ACastAsExternCall(&type_parser_nodes__ACastAsExternCall
);
5419 ((void (*)(val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ACastAsExternCall__init_acastasexterncall
]))(var16
, var_ptypenode2
, var_tkwasnode3
, var_ptypenode4
) /* init_acastasexterncall on <var16:ACastAsExternCall>*/;
5420 CHECK_NEW_parser_nodes__ACastAsExternCall(var16
);
5421 var_pexterncallnode1
= var16
;
5422 var_node_list
= var_pexterncallnode1
;
5423 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction589> */
5424 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
5425 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
5428 /* method parser#ReduceAction589#action for (self: Object, Parser) */
5429 void VIRTUAL_parser__ReduceAction589__action(val
* self
, val
* p0
) {
5430 parser__ReduceAction589__action(self
, p0
);
5433 /* method parser#ReduceAction590#action for (self: ReduceAction590, Parser) */
5434 void parser__ReduceAction590__action(val
* self
, val
* p0
) {
5435 val
* var_p
/* var p: Parser */;
5436 val
* var
/* : null */;
5437 val
* var_node_list
/* var node_list: nullable Object */;
5438 val
* var1
/* : nullable Object */;
5439 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5440 val
* var2
/* : nullable Object */;
5441 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5442 val
* var3
/* : nullable Object */;
5443 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5444 val
* var4
/* : nullable Object */;
5445 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5446 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
5447 short int var5
/* : Bool */;
5450 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
5451 short int var6
/* : Bool */;
5454 val
* var_tkwnullablenode4
/* var tkwnullablenode4: nullable Object */;
5455 short int var9
/* : Bool */;
5458 val
* var12
/* : AAsNullableExternCall */;
5459 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNullableExternCall */;
5460 long var13
/* : Int */;
5461 long var14
/* : Int */;
5464 var_node_list
= var
;
5465 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5466 var_nodearraylist4
= var1
;
5467 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5468 var_nodearraylist3
= var2
;
5469 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5470 var_nodearraylist2
= var3
;
5471 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5472 var_nodearraylist1
= var4
;
5473 var_ptypenode2
= var_nodearraylist1
;
5474 /* <var_ptypenode2:nullable Object> isa nullable AType */
5475 cltype
= type_nullable_parser_nodes__AType
.color
;
5476 idtype
= type_nullable_parser_nodes__AType
.id
;
5477 if(var_ptypenode2
== NULL
) {
5480 if(cltype
>= var_ptypenode2
->type
->table_size
) {
5483 var5
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
5487 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24296);
5490 var_tkwasnode3
= var_nodearraylist2
;
5491 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
5492 cltype7
= type_nullable_parser_nodes__TKwas
.color
;
5493 idtype8
= type_nullable_parser_nodes__TKwas
.id
;
5494 if(var_tkwasnode3
== NULL
) {
5497 if(cltype7
>= var_tkwasnode3
->type
->table_size
) {
5500 var6
= var_tkwasnode3
->type
->type_table
[cltype7
] == idtype8
;
5504 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24298);
5507 var_tkwnullablenode4
= var_nodearraylist4
;
5508 /* <var_tkwnullablenode4:nullable Object> isa nullable TKwnullable */
5509 cltype10
= type_nullable_parser_nodes__TKwnullable
.color
;
5510 idtype11
= type_nullable_parser_nodes__TKwnullable
.id
;
5511 if(var_tkwnullablenode4
== NULL
) {
5514 if(cltype10
>= var_tkwnullablenode4
->type
->table_size
) {
5517 var9
= var_tkwnullablenode4
->type
->type_table
[cltype10
] == idtype11
;
5521 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24300);
5524 var12
= NEW_parser_nodes__AAsNullableExternCall(&type_parser_nodes__AAsNullableExternCall
);
5525 ((void (*)(val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AAsNullableExternCall__init_aasnullableexterncall
]))(var12
, var_ptypenode2
, var_tkwasnode3
, var_tkwnullablenode4
) /* init_aasnullableexterncall on <var12:AAsNullableExternCall>*/;
5526 CHECK_NEW_parser_nodes__AAsNullableExternCall(var12
);
5527 var_pexterncallnode1
= var12
;
5528 var_node_list
= var_pexterncallnode1
;
5529 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction590> */
5530 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
5531 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
5534 /* method parser#ReduceAction590#action for (self: Object, Parser) */
5535 void VIRTUAL_parser__ReduceAction590__action(val
* self
, val
* p0
) {
5536 parser__ReduceAction590__action(self
, p0
);
5539 /* method parser#ReduceAction591#action for (self: ReduceAction591, Parser) */
5540 void parser__ReduceAction591__action(val
* self
, val
* p0
) {
5541 val
* var_p
/* var p: Parser */;
5542 val
* var
/* : null */;
5543 val
* var_node_list
/* var node_list: nullable Object */;
5544 val
* var1
/* : nullable Object */;
5545 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5546 val
* var2
/* : nullable Object */;
5547 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5548 val
* var3
/* : nullable Object */;
5549 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5550 val
* var4
/* : nullable Object */;
5551 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5552 val
* var5
/* : nullable Object */;
5553 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5554 val
* var6
/* : nullable Object */;
5555 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5556 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
5557 short int var7
/* : Bool */;
5560 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
5561 short int var8
/* : Bool */;
5564 val
* var_tkwnotnode4
/* var tkwnotnode4: nullable Object */;
5565 short int var11
/* : Bool */;
5568 val
* var_tkwnullablenode5
/* var tkwnullablenode5: nullable Object */;
5569 short int var14
/* : Bool */;
5572 val
* var17
/* : AAsNotNullableExternCall */;
5573 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNotNullableExternCall */;
5574 long var18
/* : Int */;
5575 long var19
/* : Int */;
5578 var_node_list
= var
;
5579 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5580 var_nodearraylist6
= var1
;
5581 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5582 var_nodearraylist5
= var2
;
5583 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5584 var_nodearraylist4
= var3
;
5585 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5586 var_nodearraylist3
= var4
;
5587 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5588 var_nodearraylist2
= var5
;
5589 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5590 var_nodearraylist1
= var6
;
5591 var_ptypenode2
= var_nodearraylist1
;
5592 /* <var_ptypenode2:nullable Object> isa nullable AType */
5593 cltype
= type_nullable_parser_nodes__AType
.color
;
5594 idtype
= type_nullable_parser_nodes__AType
.id
;
5595 if(var_ptypenode2
== NULL
) {
5598 if(cltype
>= var_ptypenode2
->type
->table_size
) {
5601 var7
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
5605 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24322);
5608 var_tkwasnode3
= var_nodearraylist2
;
5609 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
5610 cltype9
= type_nullable_parser_nodes__TKwas
.color
;
5611 idtype10
= type_nullable_parser_nodes__TKwas
.id
;
5612 if(var_tkwasnode3
== NULL
) {
5615 if(cltype9
>= var_tkwasnode3
->type
->table_size
) {
5618 var8
= var_tkwasnode3
->type
->type_table
[cltype9
] == idtype10
;
5622 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24324);
5625 var_tkwnotnode4
= var_nodearraylist4
;
5626 /* <var_tkwnotnode4:nullable Object> isa nullable TKwnot */
5627 cltype12
= type_nullable_parser_nodes__TKwnot
.color
;
5628 idtype13
= type_nullable_parser_nodes__TKwnot
.id
;
5629 if(var_tkwnotnode4
== NULL
) {
5632 if(cltype12
>= var_tkwnotnode4
->type
->table_size
) {
5635 var11
= var_tkwnotnode4
->type
->type_table
[cltype12
] == idtype13
;
5639 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24326);
5642 var_tkwnullablenode5
= var_nodearraylist6
;
5643 /* <var_tkwnullablenode5:nullable Object> isa nullable TKwnullable */
5644 cltype15
= type_nullable_parser_nodes__TKwnullable
.color
;
5645 idtype16
= type_nullable_parser_nodes__TKwnullable
.id
;
5646 if(var_tkwnullablenode5
== NULL
) {
5649 if(cltype15
>= var_tkwnullablenode5
->type
->table_size
) {
5652 var14
= var_tkwnullablenode5
->type
->type_table
[cltype15
] == idtype16
;
5656 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24328);
5659 var17
= NEW_parser_nodes__AAsNotNullableExternCall(&type_parser_nodes__AAsNotNullableExternCall
);
5660 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AAsNotNullableExternCall__init_aasnotnullableexterncall
]))(var17
, var_ptypenode2
, var_tkwasnode3
, var_tkwnotnode4
, var_tkwnullablenode5
) /* init_aasnotnullableexterncall on <var17:AAsNotNullableExternCall>*/;
5661 CHECK_NEW_parser_nodes__AAsNotNullableExternCall(var17
);
5662 var_pexterncallnode1
= var17
;
5663 var_node_list
= var_pexterncallnode1
;
5664 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction591> */
5665 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
5666 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
5669 /* method parser#ReduceAction591#action for (self: Object, Parser) */
5670 void VIRTUAL_parser__ReduceAction591__action(val
* self
, val
* p0
) {
5671 parser__ReduceAction591__action(self
, p0
);
5674 /* method parser#ReduceAction592#action for (self: ReduceAction592, Parser) */
5675 void parser__ReduceAction592__action(val
* self
, val
* p0
) {
5676 val
* var_p
/* var p: Parser */;
5677 val
* var
/* : null */;
5678 val
* var_node_list
/* var node_list: nullable Object */;
5679 val
* var1
/* : nullable Object */;
5680 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5681 val
* var2
/* : nullable Object */;
5682 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5683 val
* var_tkwinnode2
/* var tkwinnode2: nullable Object */;
5684 short int var3
/* : Bool */;
5687 val
* var_tstringnode3
/* var tstringnode3: nullable Object */;
5688 short int var4
/* : Bool */;
5691 val
* var7
/* : AInLanguage */;
5692 val
* var_pinlanguagenode1
/* var pinlanguagenode1: nullable AInLanguage */;
5693 long var8
/* : Int */;
5694 long var9
/* : Int */;
5697 var_node_list
= var
;
5698 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5699 var_nodearraylist2
= var1
;
5700 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5701 var_nodearraylist1
= var2
;
5702 var_tkwinnode2
= var_nodearraylist1
;
5703 /* <var_tkwinnode2:nullable Object> isa nullable TKwin */
5704 cltype
= type_nullable_parser_nodes__TKwin
.color
;
5705 idtype
= type_nullable_parser_nodes__TKwin
.id
;
5706 if(var_tkwinnode2
== NULL
) {
5709 if(cltype
>= var_tkwinnode2
->type
->table_size
) {
5712 var3
= var_tkwinnode2
->type
->type_table
[cltype
] == idtype
;
5716 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24347);
5719 var_tstringnode3
= var_nodearraylist2
;
5720 /* <var_tstringnode3:nullable Object> isa nullable TString */
5721 cltype5
= type_nullable_parser_nodes__TString
.color
;
5722 idtype6
= type_nullable_parser_nodes__TString
.id
;
5723 if(var_tstringnode3
== NULL
) {
5726 if(cltype5
>= var_tstringnode3
->type
->table_size
) {
5729 var4
= var_tstringnode3
->type
->type_table
[cltype5
] == idtype6
;
5733 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24349);
5736 var7
= NEW_parser_nodes__AInLanguage(&type_parser_nodes__AInLanguage
);
5737 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AInLanguage__init_ainlanguage
]))(var7
, var_tkwinnode2
, var_tstringnode3
) /* init_ainlanguage on <var7:AInLanguage>*/;
5738 CHECK_NEW_parser_nodes__AInLanguage(var7
);
5739 var_pinlanguagenode1
= var7
;
5740 var_node_list
= var_pinlanguagenode1
;
5741 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction592> */
5742 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
5743 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
5746 /* method parser#ReduceAction592#action for (self: Object, Parser) */
5747 void VIRTUAL_parser__ReduceAction592__action(val
* self
, val
* p0
) {
5748 parser__ReduceAction592__action(self
, p0
);
5751 /* method parser#ReduceAction593#action for (self: ReduceAction593, Parser) */
5752 void parser__ReduceAction593__action(val
* self
, val
* p0
) {
5753 val
* var_p
/* var p: Parser */;
5754 val
* var
/* : null */;
5755 val
* var_node_list
/* var node_list: nullable Object */;
5756 val
* var1
/* : nullable Object */;
5757 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5758 val
* var_texterncodesegmentnode3
/* var texterncodesegmentnode3: nullable Object */;
5759 short int var2
/* : Bool */;
5762 val
* var3
/* : AExternCodeBlock */;
5763 val
* var4
/* : null */;
5764 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable AExternCodeBlock */;
5765 long var5
/* : Int */;
5766 long var6
/* : Int */;
5769 var_node_list
= var
;
5770 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5771 var_nodearraylist1
= var1
;
5772 var_texterncodesegmentnode3
= var_nodearraylist1
;
5773 /* <var_texterncodesegmentnode3:nullable Object> isa nullable TExternCodeSegment */
5774 cltype
= type_nullable_parser_nodes__TExternCodeSegment
.color
;
5775 idtype
= type_nullable_parser_nodes__TExternCodeSegment
.id
;
5776 if(var_texterncodesegmentnode3
== NULL
) {
5779 if(cltype
>= var_texterncodesegmentnode3
->type
->table_size
) {
5782 var2
= var_texterncodesegmentnode3
->type
->type_table
[cltype
] == idtype
;
5786 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24365);
5789 var3
= NEW_parser_nodes__AExternCodeBlock(&type_parser_nodes__AExternCodeBlock
);
5791 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AExternCodeBlock__init_aexterncodeblock
]))(var3
, var4
, var_texterncodesegmentnode3
) /* init_aexterncodeblock on <var3:AExternCodeBlock>*/;
5792 CHECK_NEW_parser_nodes__AExternCodeBlock(var3
);
5793 var_pexterncodeblocknode1
= var3
;
5794 var_node_list
= var_pexterncodeblocknode1
;
5795 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction593> */
5796 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
5797 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
5800 /* method parser#ReduceAction593#action for (self: Object, Parser) */
5801 void VIRTUAL_parser__ReduceAction593__action(val
* self
, val
* p0
) {
5802 parser__ReduceAction593__action(self
, p0
);
5805 /* method parser#ReduceAction594#action for (self: ReduceAction594, Parser) */
5806 void parser__ReduceAction594__action(val
* self
, val
* p0
) {
5807 val
* var_p
/* var p: Parser */;
5808 val
* var
/* : null */;
5809 val
* var_node_list
/* var node_list: nullable Object */;
5810 val
* var1
/* : nullable Object */;
5811 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5812 val
* var2
/* : nullable Object */;
5813 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5814 val
* var_pinlanguagenode2
/* var pinlanguagenode2: nullable Object */;
5815 short int var3
/* : Bool */;
5818 val
* var_texterncodesegmentnode3
/* var texterncodesegmentnode3: nullable Object */;
5819 short int var4
/* : Bool */;
5822 val
* var7
/* : AExternCodeBlock */;
5823 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable AExternCodeBlock */;
5824 long var8
/* : Int */;
5825 long var9
/* : Int */;
5828 var_node_list
= var
;
5829 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5830 var_nodearraylist2
= var1
;
5831 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5832 var_nodearraylist1
= var2
;
5833 var_pinlanguagenode2
= var_nodearraylist1
;
5834 /* <var_pinlanguagenode2:nullable Object> isa nullable AInLanguage */
5835 cltype
= type_nullable_parser_nodes__AInLanguage
.color
;
5836 idtype
= type_nullable_parser_nodes__AInLanguage
.id
;
5837 if(var_pinlanguagenode2
== NULL
) {
5840 if(cltype
>= var_pinlanguagenode2
->type
->table_size
) {
5843 var3
= var_pinlanguagenode2
->type
->type_table
[cltype
] == idtype
;
5847 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24382);
5850 var_texterncodesegmentnode3
= var_nodearraylist2
;
5851 /* <var_texterncodesegmentnode3:nullable Object> isa nullable TExternCodeSegment */
5852 cltype5
= type_nullable_parser_nodes__TExternCodeSegment
.color
;
5853 idtype6
= type_nullable_parser_nodes__TExternCodeSegment
.id
;
5854 if(var_texterncodesegmentnode3
== NULL
) {
5857 if(cltype5
>= var_texterncodesegmentnode3
->type
->table_size
) {
5860 var4
= var_texterncodesegmentnode3
->type
->type_table
[cltype5
] == idtype6
;
5864 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24384);
5867 var7
= NEW_parser_nodes__AExternCodeBlock(&type_parser_nodes__AExternCodeBlock
);
5868 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AExternCodeBlock__init_aexterncodeblock
]))(var7
, var_pinlanguagenode2
, var_texterncodesegmentnode3
) /* init_aexterncodeblock on <var7:AExternCodeBlock>*/;
5869 CHECK_NEW_parser_nodes__AExternCodeBlock(var7
);
5870 var_pexterncodeblocknode1
= var7
;
5871 var_node_list
= var_pexterncodeblocknode1
;
5872 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction594> */
5873 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
5874 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
5877 /* method parser#ReduceAction594#action for (self: Object, Parser) */
5878 void VIRTUAL_parser__ReduceAction594__action(val
* self
, val
* p0
) {
5879 parser__ReduceAction594__action(self
, p0
);
5882 /* method parser#ReduceAction595#action for (self: ReduceAction595, Parser) */
5883 void parser__ReduceAction595__action(val
* self
, val
* p0
) {
5884 val
* var_p
/* var p: Parser */;
5885 val
* var
/* : null */;
5886 val
* var_node_list
/* var node_list: nullable Object */;
5887 val
* var1
/* : nullable Object */;
5888 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5889 val
* var2
/* : nullable Object */;
5890 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5891 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable Object */;
5892 long var3
/* : Int */;
5893 long var4
/* : Int */;
5896 var_node_list
= var
;
5897 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5898 var_nodearraylist2
= var1
;
5899 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5900 var_nodearraylist1
= var2
;
5901 var_pexterncodeblocknode1
= var_nodearraylist2
;
5902 var_node_list
= var_pexterncodeblocknode1
;
5903 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction595> */
5904 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
5905 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
5908 /* method parser#ReduceAction595#action for (self: Object, Parser) */
5909 void VIRTUAL_parser__ReduceAction595__action(val
* self
, val
* p0
) {
5910 parser__ReduceAction595__action(self
, p0
);
5913 /* method parser#ReduceAction596#action for (self: ReduceAction596, Parser) */
5914 void parser__ReduceAction596__action(val
* self
, val
* p0
) {
5915 val
* var_p
/* var p: Parser */;
5916 val
* var
/* : null */;
5917 val
* var_node_list
/* var node_list: nullable Object */;
5918 val
* var1
/* : nullable Object */;
5919 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5920 val
* var2
/* : Array[Object] */;
5921 val
* var_listnode4
/* var listnode4: Array[Object] */;
5922 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
5923 short int var3
/* : Bool */;
5926 val
* var4
/* : AType */;
5927 val
* var5
/* : null */;
5928 val
* var6
/* : null */;
5929 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
5930 long var7
/* : Int */;
5931 long var8
/* : Int */;
5934 var_node_list
= var
;
5935 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5936 var_nodearraylist1
= var1
;
5937 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
5938 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
5939 CHECK_NEW_array__Array(var2
);
5940 var_listnode4
= var2
;
5941 var_tclassidnode3
= var_nodearraylist1
;
5942 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
5943 cltype
= type_nullable_parser_nodes__TClassid
.color
;
5944 idtype
= type_nullable_parser_nodes__TClassid
.id
;
5945 if(var_tclassidnode3
== NULL
) {
5948 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
5951 var3
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
5955 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24413);
5958 var4
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
5961 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var4
, var5
, var_tclassidnode3
, var_listnode4
, var6
) /* init_atype on <var4:AType>*/;
5962 CHECK_NEW_parser_nodes__AType(var4
);
5963 var_ptypenode1
= var4
;
5964 var_node_list
= var_ptypenode1
;
5965 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction596> */
5966 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
5967 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
5970 /* method parser#ReduceAction596#action for (self: Object, Parser) */
5971 void VIRTUAL_parser__ReduceAction596__action(val
* self
, val
* p0
) {
5972 parser__ReduceAction596__action(self
, p0
);
5975 /* method parser#ReduceAction597#action for (self: ReduceAction597, Parser) */
5976 void parser__ReduceAction597__action(val
* self
, val
* p0
) {
5977 val
* var_p
/* var p: Parser */;
5978 val
* var
/* : null */;
5979 val
* var_node_list
/* var node_list: nullable Object */;
5980 val
* var1
/* : nullable Object */;
5981 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5982 val
* var2
/* : nullable Object */;
5983 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5984 val
* var3
/* : Array[Object] */;
5985 val
* var_listnode4
/* var listnode4: Array[Object] */;
5986 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
5987 short int var4
/* : Bool */;
5990 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
5991 short int var5
/* : Bool */;
5994 val
* var8
/* : AType */;
5995 val
* var9
/* : null */;
5996 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
5997 long var10
/* : Int */;
5998 long var11
/* : Int */;
6001 var_node_list
= var
;
6002 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6003 var_nodearraylist2
= var1
;
6004 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6005 var_nodearraylist1
= var2
;
6006 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6007 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6008 CHECK_NEW_array__Array(var3
);
6009 var_listnode4
= var3
;
6010 var_tkwnullablenode2
= var_nodearraylist1
;
6011 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
6012 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
6013 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
6014 if(var_tkwnullablenode2
== NULL
) {
6017 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
6020 var4
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
6024 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24433);
6027 var_tclassidnode3
= var_nodearraylist2
;
6028 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6029 cltype6
= type_nullable_parser_nodes__TClassid
.color
;
6030 idtype7
= type_nullable_parser_nodes__TClassid
.id
;
6031 if(var_tclassidnode3
== NULL
) {
6034 if(cltype6
>= var_tclassidnode3
->type
->table_size
) {
6037 var5
= var_tclassidnode3
->type
->type_table
[cltype6
] == idtype7
;
6041 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24435);
6044 var8
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6046 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var8
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode4
, var9
) /* init_atype on <var8:AType>*/;
6047 CHECK_NEW_parser_nodes__AType(var8
);
6048 var_ptypenode1
= var8
;
6049 var_node_list
= var_ptypenode1
;
6050 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction597> */
6051 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
6052 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
6055 /* method parser#ReduceAction597#action for (self: Object, Parser) */
6056 void VIRTUAL_parser__ReduceAction597__action(val
* self
, val
* p0
) {
6057 parser__ReduceAction597__action(self
, p0
);
6060 /* method parser#ReduceAction598#action for (self: ReduceAction598, Parser) */
6061 void parser__ReduceAction598__action(val
* self
, val
* p0
) {
6062 val
* var_p
/* var p: Parser */;
6063 val
* var
/* : null */;
6064 val
* var_node_list
/* var node_list: nullable Object */;
6065 val
* var1
/* : nullable Object */;
6066 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6067 val
* var2
/* : nullable Object */;
6068 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6069 val
* var3
/* : Array[Object] */;
6070 val
* var_listnode4
/* var listnode4: Array[Object] */;
6071 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6072 short int var4
/* : Bool */;
6075 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
6076 short int var5
/* : Bool */;
6079 val
* var8
/* : AType */;
6080 val
* var9
/* : null */;
6081 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6082 long var10
/* : Int */;
6083 long var11
/* : Int */;
6086 var_node_list
= var
;
6087 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6088 var_nodearraylist2
= var1
;
6089 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6090 var_nodearraylist1
= var2
;
6091 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6092 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6093 CHECK_NEW_array__Array(var3
);
6094 var_listnode4
= var3
;
6095 var_tclassidnode3
= var_nodearraylist1
;
6096 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6097 cltype
= type_nullable_parser_nodes__TClassid
.color
;
6098 idtype
= type_nullable_parser_nodes__TClassid
.id
;
6099 if(var_tclassidnode3
== NULL
) {
6102 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
6105 var4
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
6109 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24455);
6112 var_pannotationsnode5
= var_nodearraylist2
;
6113 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
6114 cltype6
= type_nullable_parser_nodes__AAnnotations
.color
;
6115 idtype7
= type_nullable_parser_nodes__AAnnotations
.id
;
6116 if(var_pannotationsnode5
== NULL
) {
6119 if(cltype6
>= var_pannotationsnode5
->type
->table_size
) {
6122 var5
= var_pannotationsnode5
->type
->type_table
[cltype6
] == idtype7
;
6126 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24457);
6129 var8
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6131 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var8
, var9
, var_tclassidnode3
, var_listnode4
, var_pannotationsnode5
) /* init_atype on <var8:AType>*/;
6132 CHECK_NEW_parser_nodes__AType(var8
);
6133 var_ptypenode1
= var8
;
6134 var_node_list
= var_ptypenode1
;
6135 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction598> */
6136 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
6137 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
6140 /* method parser#ReduceAction598#action for (self: Object, Parser) */
6141 void VIRTUAL_parser__ReduceAction598__action(val
* self
, val
* p0
) {
6142 parser__ReduceAction598__action(self
, p0
);
6145 /* method parser#ReduceAction599#action for (self: ReduceAction599, Parser) */
6146 void parser__ReduceAction599__action(val
* self
, val
* p0
) {
6147 val
* var_p
/* var p: Parser */;
6148 val
* var
/* : null */;
6149 val
* var_node_list
/* var node_list: nullable Object */;
6150 val
* var1
/* : nullable Object */;
6151 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6152 val
* var2
/* : nullable Object */;
6153 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6154 val
* var3
/* : nullable Object */;
6155 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6156 val
* var4
/* : Array[Object] */;
6157 val
* var_listnode4
/* var listnode4: Array[Object] */;
6158 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
6159 short int var5
/* : Bool */;
6162 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6163 short int var6
/* : Bool */;
6166 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
6167 short int var9
/* : Bool */;
6170 val
* var12
/* : AType */;
6171 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6172 long var13
/* : Int */;
6173 long var14
/* : Int */;
6176 var_node_list
= var
;
6177 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6178 var_nodearraylist3
= var1
;
6179 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6180 var_nodearraylist2
= var2
;
6181 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6182 var_nodearraylist1
= var3
;
6183 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
6184 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
6185 CHECK_NEW_array__Array(var4
);
6186 var_listnode4
= var4
;
6187 var_tkwnullablenode2
= var_nodearraylist1
;
6188 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
6189 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
6190 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
6191 if(var_tkwnullablenode2
== NULL
) {
6194 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
6197 var5
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
6201 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24478);
6204 var_tclassidnode3
= var_nodearraylist2
;
6205 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6206 cltype7
= type_nullable_parser_nodes__TClassid
.color
;
6207 idtype8
= type_nullable_parser_nodes__TClassid
.id
;
6208 if(var_tclassidnode3
== NULL
) {
6211 if(cltype7
>= var_tclassidnode3
->type
->table_size
) {
6214 var6
= var_tclassidnode3
->type
->type_table
[cltype7
] == idtype8
;
6218 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24480);
6221 var_pannotationsnode5
= var_nodearraylist3
;
6222 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
6223 cltype10
= type_nullable_parser_nodes__AAnnotations
.color
;
6224 idtype11
= type_nullable_parser_nodes__AAnnotations
.id
;
6225 if(var_pannotationsnode5
== NULL
) {
6228 if(cltype10
>= var_pannotationsnode5
->type
->table_size
) {
6231 var9
= var_pannotationsnode5
->type
->type_table
[cltype10
] == idtype11
;
6235 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24482);
6238 var12
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6239 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var12
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode4
, var_pannotationsnode5
) /* init_atype on <var12:AType>*/;
6240 CHECK_NEW_parser_nodes__AType(var12
);
6241 var_ptypenode1
= var12
;
6242 var_node_list
= var_ptypenode1
;
6243 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction599> */
6244 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
6245 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
6248 /* method parser#ReduceAction599#action for (self: Object, Parser) */
6249 void VIRTUAL_parser__ReduceAction599__action(val
* self
, val
* p0
) {
6250 parser__ReduceAction599__action(self
, p0
);
6253 /* method parser#ReduceAction600#action for (self: ReduceAction600, Parser) */
6254 void parser__ReduceAction600__action(val
* self
, val
* p0
) {
6255 val
* var_p
/* var p: Parser */;
6256 val
* var
/* : null */;
6257 val
* var_node_list
/* var node_list: nullable Object */;
6258 val
* var1
/* : nullable Object */;
6259 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6260 val
* var2
/* : nullable Object */;
6261 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6262 val
* var3
/* : nullable Object */;
6263 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6264 val
* var4
/* : nullable Object */;
6265 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6266 val
* var5
/* : nullable Object */;
6267 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6268 val
* var6
/* : nullable Object */;
6269 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6270 val
* var7
/* : Array[Object] */;
6271 val
* var_listnode5
/* var listnode5: Array[Object] */;
6272 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6273 short int var8
/* : Bool */;
6276 val
* var_listnode4
/* var listnode4: nullable Object */;
6277 short int var9
/* : Bool */;
6280 val
* var12
/* : Array[Object] */;
6281 val
* var13
/* : AType */;
6282 val
* var14
/* : null */;
6283 val
* var15
/* : null */;
6284 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6285 long var16
/* : Int */;
6286 long var17
/* : Int */;
6289 var_node_list
= var
;
6290 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6291 var_nodearraylist6
= var1
;
6292 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6293 var_nodearraylist5
= var2
;
6294 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6295 var_nodearraylist4
= var3
;
6296 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6297 var_nodearraylist3
= var4
;
6298 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6299 var_nodearraylist2
= var5
;
6300 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6301 var_nodearraylist1
= var6
;
6302 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
6303 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
6304 CHECK_NEW_array__Array(var7
);
6305 var_listnode5
= var7
;
6306 var_tclassidnode3
= var_nodearraylist1
;
6307 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6308 cltype
= type_nullable_parser_nodes__TClassid
.color
;
6309 idtype
= type_nullable_parser_nodes__TClassid
.id
;
6310 if(var_tclassidnode3
== NULL
) {
6313 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
6316 var8
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
6320 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24506);
6323 var_listnode4
= var_nodearraylist4
;
6324 /* <var_listnode4:nullable Object> isa Array[Object] */
6325 cltype10
= type_array__Arraykernel__Object
.color
;
6326 idtype11
= type_array__Arraykernel__Object
.id
;
6327 if(var_listnode4
== NULL
) {
6330 if(cltype10
>= var_listnode4
->type
->table_size
) {
6333 var9
= var_listnode4
->type
->type_table
[cltype10
] == idtype11
;
6337 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24508);
6340 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction600>*/;
6341 var_listnode5
= var12
;
6342 var13
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6345 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var13
, var14
, var_tclassidnode3
, var_listnode5
, var15
) /* init_atype on <var13:AType>*/;
6346 CHECK_NEW_parser_nodes__AType(var13
);
6347 var_ptypenode1
= var13
;
6348 var_node_list
= var_ptypenode1
;
6349 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction600> */
6350 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
6351 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
6354 /* method parser#ReduceAction600#action for (self: Object, Parser) */
6355 void VIRTUAL_parser__ReduceAction600__action(val
* self
, val
* p0
) {
6356 parser__ReduceAction600__action(self
, p0
);
6359 /* method parser#ReduceAction601#action for (self: ReduceAction601, Parser) */
6360 void parser__ReduceAction601__action(val
* self
, val
* p0
) {
6361 val
* var_p
/* var p: Parser */;
6362 val
* var
/* : null */;
6363 val
* var_node_list
/* var node_list: nullable Object */;
6364 val
* var1
/* : nullable Object */;
6365 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6366 val
* var2
/* : nullable Object */;
6367 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6368 val
* var3
/* : nullable Object */;
6369 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6370 val
* var4
/* : nullable Object */;
6371 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6372 val
* var5
/* : nullable Object */;
6373 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6374 val
* var6
/* : nullable Object */;
6375 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6376 val
* var7
/* : nullable Object */;
6377 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6378 val
* var8
/* : Array[Object] */;
6379 val
* var_listnode5
/* var listnode5: Array[Object] */;
6380 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
6381 short int var9
/* : Bool */;
6384 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6385 short int var10
/* : Bool */;
6388 val
* var_listnode4
/* var listnode4: nullable Object */;
6389 short int var13
/* : Bool */;
6392 val
* var16
/* : Array[Object] */;
6393 val
* var17
/* : AType */;
6394 val
* var18
/* : null */;
6395 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6396 long var19
/* : Int */;
6397 long var20
/* : Int */;
6400 var_node_list
= var
;
6401 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6402 var_nodearraylist7
= var1
;
6403 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6404 var_nodearraylist6
= var2
;
6405 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6406 var_nodearraylist5
= var3
;
6407 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6408 var_nodearraylist4
= var4
;
6409 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6410 var_nodearraylist3
= var5
;
6411 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6412 var_nodearraylist2
= var6
;
6413 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6414 var_nodearraylist1
= var7
;
6415 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
6416 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
6417 CHECK_NEW_array__Array(var8
);
6418 var_listnode5
= var8
;
6419 var_tkwnullablenode2
= var_nodearraylist1
;
6420 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
6421 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
6422 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
6423 if(var_tkwnullablenode2
== NULL
) {
6426 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
6429 var9
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
6433 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24534);
6436 var_tclassidnode3
= var_nodearraylist2
;
6437 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6438 cltype11
= type_nullable_parser_nodes__TClassid
.color
;
6439 idtype12
= type_nullable_parser_nodes__TClassid
.id
;
6440 if(var_tclassidnode3
== NULL
) {
6443 if(cltype11
>= var_tclassidnode3
->type
->table_size
) {
6446 var10
= var_tclassidnode3
->type
->type_table
[cltype11
] == idtype12
;
6450 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24536);
6453 var_listnode4
= var_nodearraylist5
;
6454 /* <var_listnode4:nullable Object> isa Array[Object] */
6455 cltype14
= type_array__Arraykernel__Object
.color
;
6456 idtype15
= type_array__Arraykernel__Object
.id
;
6457 if(var_listnode4
== NULL
) {
6460 if(cltype14
>= var_listnode4
->type
->table_size
) {
6463 var13
= var_listnode4
->type
->type_table
[cltype14
] == idtype15
;
6467 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24538);
6470 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction601>*/;
6471 var_listnode5
= var16
;
6472 var17
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6474 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var17
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode5
, var18
) /* init_atype on <var17:AType>*/;
6475 CHECK_NEW_parser_nodes__AType(var17
);
6476 var_ptypenode1
= var17
;
6477 var_node_list
= var_ptypenode1
;
6478 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction601> */
6479 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
6480 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
6483 /* method parser#ReduceAction601#action for (self: Object, Parser) */
6484 void VIRTUAL_parser__ReduceAction601__action(val
* self
, val
* p0
) {
6485 parser__ReduceAction601__action(self
, p0
);
6488 /* method parser#ReduceAction602#action for (self: ReduceAction602, Parser) */
6489 void parser__ReduceAction602__action(val
* self
, val
* p0
) {
6490 val
* var_p
/* var p: Parser */;
6491 val
* var
/* : null */;
6492 val
* var_node_list
/* var node_list: nullable Object */;
6493 val
* var1
/* : nullable Object */;
6494 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6495 val
* var2
/* : nullable Object */;
6496 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6497 val
* var3
/* : nullable Object */;
6498 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6499 val
* var4
/* : nullable Object */;
6500 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6501 val
* var5
/* : nullable Object */;
6502 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6503 val
* var6
/* : nullable Object */;
6504 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6505 val
* var7
/* : nullable Object */;
6506 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6507 val
* var8
/* : Array[Object] */;
6508 val
* var_listnode5
/* var listnode5: Array[Object] */;
6509 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6510 short int var9
/* : Bool */;
6513 val
* var_listnode4
/* var listnode4: nullable Object */;
6514 short int var10
/* : Bool */;
6517 val
* var13
/* : Array[Object] */;
6518 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
6519 short int var14
/* : Bool */;
6522 val
* var17
/* : AType */;
6523 val
* var18
/* : null */;
6524 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6525 long var19
/* : Int */;
6526 long var20
/* : Int */;
6529 var_node_list
= var
;
6530 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6531 var_nodearraylist7
= var1
;
6532 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6533 var_nodearraylist6
= var2
;
6534 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6535 var_nodearraylist5
= var3
;
6536 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6537 var_nodearraylist4
= var4
;
6538 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6539 var_nodearraylist3
= var5
;
6540 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6541 var_nodearraylist2
= var6
;
6542 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6543 var_nodearraylist1
= var7
;
6544 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
6545 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
6546 CHECK_NEW_array__Array(var8
);
6547 var_listnode5
= var8
;
6548 var_tclassidnode3
= var_nodearraylist1
;
6549 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6550 cltype
= type_nullable_parser_nodes__TClassid
.color
;
6551 idtype
= type_nullable_parser_nodes__TClassid
.id
;
6552 if(var_tclassidnode3
== NULL
) {
6555 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
6558 var9
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
6562 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24564);
6565 var_listnode4
= var_nodearraylist4
;
6566 /* <var_listnode4:nullable Object> isa Array[Object] */
6567 cltype11
= type_array__Arraykernel__Object
.color
;
6568 idtype12
= type_array__Arraykernel__Object
.id
;
6569 if(var_listnode4
== NULL
) {
6572 if(cltype11
>= var_listnode4
->type
->table_size
) {
6575 var10
= var_listnode4
->type
->type_table
[cltype11
] == idtype12
;
6579 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24566);
6582 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction602>*/;
6583 var_listnode5
= var13
;
6584 var_pannotationsnode6
= var_nodearraylist7
;
6585 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
6586 cltype15
= type_nullable_parser_nodes__AAnnotations
.color
;
6587 idtype16
= type_nullable_parser_nodes__AAnnotations
.id
;
6588 if(var_pannotationsnode6
== NULL
) {
6591 if(cltype15
>= var_pannotationsnode6
->type
->table_size
) {
6594 var14
= var_pannotationsnode6
->type
->type_table
[cltype15
] == idtype16
;
6598 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24569);
6601 var17
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6603 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var17
, var18
, var_tclassidnode3
, var_listnode5
, var_pannotationsnode6
) /* init_atype on <var17:AType>*/;
6604 CHECK_NEW_parser_nodes__AType(var17
);
6605 var_ptypenode1
= var17
;
6606 var_node_list
= var_ptypenode1
;
6607 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction602> */
6608 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
6609 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
6612 /* method parser#ReduceAction602#action for (self: Object, Parser) */
6613 void VIRTUAL_parser__ReduceAction602__action(val
* self
, val
* p0
) {
6614 parser__ReduceAction602__action(self
, p0
);
6617 /* method parser#ReduceAction603#action for (self: ReduceAction603, Parser) */
6618 void parser__ReduceAction603__action(val
* self
, val
* p0
) {
6619 val
* var_p
/* var p: Parser */;
6620 val
* var
/* : null */;
6621 val
* var_node_list
/* var node_list: nullable Object */;
6622 val
* var1
/* : nullable Object */;
6623 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6624 val
* var2
/* : nullable Object */;
6625 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6626 val
* var3
/* : nullable Object */;
6627 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6628 val
* var4
/* : nullable Object */;
6629 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6630 val
* var5
/* : nullable Object */;
6631 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6632 val
* var6
/* : nullable Object */;
6633 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6634 val
* var7
/* : nullable Object */;
6635 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6636 val
* var8
/* : nullable Object */;
6637 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6638 val
* var9
/* : Array[Object] */;
6639 val
* var_listnode5
/* var listnode5: Array[Object] */;
6640 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
6641 short int var10
/* : Bool */;
6644 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6645 short int var11
/* : Bool */;
6648 val
* var_listnode4
/* var listnode4: nullable Object */;
6649 short int var14
/* : Bool */;
6652 val
* var17
/* : Array[Object] */;
6653 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
6654 short int var18
/* : Bool */;
6657 val
* var21
/* : AType */;
6658 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6659 long var22
/* : Int */;
6660 long var23
/* : Int */;
6663 var_node_list
= var
;
6664 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6665 var_nodearraylist8
= var1
;
6666 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6667 var_nodearraylist7
= var2
;
6668 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6669 var_nodearraylist6
= var3
;
6670 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6671 var_nodearraylist5
= var4
;
6672 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6673 var_nodearraylist4
= var5
;
6674 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6675 var_nodearraylist3
= var6
;
6676 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6677 var_nodearraylist2
= var7
;
6678 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6679 var_nodearraylist1
= var8
;
6680 var9
= NEW_array__Array(&type_array__Arraykernel__Object
);
6681 ((void (*)(val
*))(var9
->class->vft
[COLOR_array__Array__init
]))(var9
) /* init on <var9:Array[Object]>*/;
6682 CHECK_NEW_array__Array(var9
);
6683 var_listnode5
= var9
;
6684 var_tkwnullablenode2
= var_nodearraylist1
;
6685 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
6686 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
6687 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
6688 if(var_tkwnullablenode2
== NULL
) {
6691 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
6694 var10
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
6698 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24595);
6701 var_tclassidnode3
= var_nodearraylist2
;
6702 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6703 cltype12
= type_nullable_parser_nodes__TClassid
.color
;
6704 idtype13
= type_nullable_parser_nodes__TClassid
.id
;
6705 if(var_tclassidnode3
== NULL
) {
6708 if(cltype12
>= var_tclassidnode3
->type
->table_size
) {
6711 var11
= var_tclassidnode3
->type
->type_table
[cltype12
] == idtype13
;
6715 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24597);
6718 var_listnode4
= var_nodearraylist5
;
6719 /* <var_listnode4:nullable Object> isa Array[Object] */
6720 cltype15
= type_array__Arraykernel__Object
.color
;
6721 idtype16
= type_array__Arraykernel__Object
.id
;
6722 if(var_listnode4
== NULL
) {
6725 if(cltype15
>= var_listnode4
->type
->table_size
) {
6728 var14
= var_listnode4
->type
->type_table
[cltype15
] == idtype16
;
6732 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24599);
6735 var17
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction603>*/;
6736 var_listnode5
= var17
;
6737 var_pannotationsnode6
= var_nodearraylist8
;
6738 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
6739 cltype19
= type_nullable_parser_nodes__AAnnotations
.color
;
6740 idtype20
= type_nullable_parser_nodes__AAnnotations
.id
;
6741 if(var_pannotationsnode6
== NULL
) {
6744 if(cltype19
>= var_pannotationsnode6
->type
->table_size
) {
6747 var18
= var_pannotationsnode6
->type
->type_table
[cltype19
] == idtype20
;
6751 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24602);
6754 var21
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6755 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var21
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode5
, var_pannotationsnode6
) /* init_atype on <var21:AType>*/;
6756 CHECK_NEW_parser_nodes__AType(var21
);
6757 var_ptypenode1
= var21
;
6758 var_node_list
= var_ptypenode1
;
6759 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction603> */
6760 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
6761 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
6764 /* method parser#ReduceAction603#action for (self: Object, Parser) */
6765 void VIRTUAL_parser__ReduceAction603__action(val
* self
, val
* p0
) {
6766 parser__ReduceAction603__action(self
, p0
);
6769 /* method parser#ReduceAction604#action for (self: ReduceAction604, Parser) */
6770 void parser__ReduceAction604__action(val
* self
, val
* p0
) {
6771 val
* var_p
/* var p: Parser */;
6772 val
* var
/* : null */;
6773 val
* var_node_list
/* var node_list: nullable Object */;
6774 val
* var1
/* : nullable Object */;
6775 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6776 val
* var2
/* : Array[Object] */;
6777 val
* var_listnode2
/* var listnode2: Array[Object] */;
6778 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
6779 val
* var3
/* : null */;
6780 short int var4
/* : Bool */;
6781 long var5
/* : Int */;
6782 long var6
/* : Int */;
6785 var_node_list
= var
;
6786 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6787 var_nodearraylist1
= var1
;
6788 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
6789 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
6790 CHECK_NEW_array__Array(var2
);
6791 var_listnode2
= var2
;
6792 var_ptypenode1
= var_nodearraylist1
;
6794 if (var_ptypenode1
== NULL
) {
6795 var4
= 0; /* is null */
6797 var4
= 1; /* arg is null and recv is not */
6800 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_ptypenode1
) /* add on <var_listnode2:Array[Object]>*/;
6803 var_node_list
= var_listnode2
;
6804 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction604> */
6805 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6806 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6809 /* method parser#ReduceAction604#action for (self: Object, Parser) */
6810 void VIRTUAL_parser__ReduceAction604__action(val
* self
, val
* p0
) {
6811 parser__ReduceAction604__action(self
, p0
);
6814 /* method parser#ReduceAction605#action for (self: ReduceAction605, Parser) */
6815 void parser__ReduceAction605__action(val
* self
, val
* p0
) {
6816 val
* var_p
/* var p: Parser */;
6817 val
* var
/* : null */;
6818 val
* var_node_list
/* var node_list: nullable Object */;
6819 val
* var1
/* : nullable Object */;
6820 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6821 val
* var2
/* : nullable Object */;
6822 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6823 val
* var3
/* : Array[Object] */;
6824 val
* var_listnode3
/* var listnode3: Array[Object] */;
6825 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
6826 val
* var_listnode2
/* var listnode2: nullable Object */;
6827 short int var4
/* : Bool */;
6830 val
* var5
/* : null */;
6831 short int var6
/* : Bool */;
6832 val
* var7
/* : Array[Object] */;
6833 long var8
/* : Int */;
6834 long var9
/* : Int */;
6837 var_node_list
= var
;
6838 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6839 var_nodearraylist2
= var1
;
6840 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6841 var_nodearraylist1
= var2
;
6842 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6843 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6844 CHECK_NEW_array__Array(var3
);
6845 var_listnode3
= var3
;
6846 var_ptypenode1
= var_nodearraylist1
;
6847 var_listnode2
= var_nodearraylist2
;
6848 /* <var_listnode2:nullable Object> isa Array[Object] */
6849 cltype
= type_array__Arraykernel__Object
.color
;
6850 idtype
= type_array__Arraykernel__Object
.id
;
6851 if(var_listnode2
== NULL
) {
6854 if(cltype
>= var_listnode2
->type
->table_size
) {
6857 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
6861 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24638);
6865 if (var_ptypenode1
== NULL
) {
6866 var6
= 0; /* is null */
6868 var6
= 1; /* arg is null and recv is not */
6871 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_ptypenode1
) /* add on <var_listnode3:Array[Object]>*/;
6874 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction605>*/;
6875 var_listnode3
= var7
;
6876 var_node_list
= var_listnode3
;
6877 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction605> */
6878 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6879 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6882 /* method parser#ReduceAction605#action for (self: Object, Parser) */
6883 void VIRTUAL_parser__ReduceAction605__action(val
* self
, val
* p0
) {
6884 parser__ReduceAction605__action(self
, p0
);
6887 /* method parser#ReduceAction606#action for (self: ReduceAction606, Parser) */
6888 void parser__ReduceAction606__action(val
* self
, val
* p0
) {
6889 val
* var_p
/* var p: Parser */;
6890 val
* var
/* : null */;
6891 val
* var_node_list
/* var node_list: nullable Object */;
6892 val
* var1
/* : nullable Object */;
6893 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6894 val
* var2
/* : nullable Object */;
6895 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6896 val
* var3
/* : nullable Object */;
6897 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6898 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
6899 long var4
/* : Int */;
6900 long var5
/* : Int */;
6903 var_node_list
= var
;
6904 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6905 var_nodearraylist3
= var1
;
6906 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6907 var_nodearraylist2
= var2
;
6908 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6909 var_nodearraylist1
= var3
;
6910 var_ptypenode1
= var_nodearraylist3
;
6911 var_node_list
= var_ptypenode1
;
6912 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction606> */
6913 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
6914 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
6917 /* method parser#ReduceAction606#action for (self: Object, Parser) */
6918 void VIRTUAL_parser__ReduceAction606__action(val
* self
, val
* p0
) {
6919 parser__ReduceAction606__action(self
, p0
);
6922 /* method parser#ReduceAction608#action for (self: ReduceAction608, Parser) */
6923 void parser__ReduceAction608__action(val
* self
, val
* p0
) {
6924 val
* var_p
/* var p: Parser */;
6925 val
* var
/* : null */;
6926 val
* var_node_list
/* var node_list: nullable Object */;
6927 val
* var1
/* : nullable Object */;
6928 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6929 val
* var2
/* : nullable Object */;
6930 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6931 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
6932 long var3
/* : Int */;
6933 long var4
/* : Int */;
6936 var_node_list
= var
;
6937 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6938 var_nodearraylist2
= var1
;
6939 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6940 var_nodearraylist1
= var2
;
6941 var_pexprnode1
= var_nodearraylist2
;
6942 var_node_list
= var_pexprnode1
;
6943 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction608> */
6944 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
6945 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
6948 /* method parser#ReduceAction608#action for (self: Object, Parser) */
6949 void VIRTUAL_parser__ReduceAction608__action(val
* self
, val
* p0
) {
6950 parser__ReduceAction608__action(self
, p0
);
6953 /* method parser#ReduceAction609#action for (self: ReduceAction609, Parser) */
6954 void parser__ReduceAction609__action(val
* self
, val
* p0
) {
6955 val
* var_p
/* var p: Parser */;
6956 val
* var
/* : null */;
6957 val
* var_node_list
/* var node_list: nullable Object */;
6958 val
* var1
/* : nullable Object */;
6959 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6960 val
* var2
/* : nullable Object */;
6961 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6962 val
* var3
/* : Array[Object] */;
6963 val
* var_listnode2
/* var listnode2: Array[Object] */;
6964 val
* var_tkwendnode3
/* var tkwendnode3: nullable Object */;
6965 short int var4
/* : Bool */;
6968 val
* var5
/* : ABlockExpr */;
6969 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
6970 long var6
/* : Int */;
6971 long var7
/* : Int */;
6974 var_node_list
= var
;
6975 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6976 var_nodearraylist2
= var1
;
6977 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6978 var_nodearraylist1
= var2
;
6979 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6980 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6981 CHECK_NEW_array__Array(var3
);
6982 var_listnode2
= var3
;
6983 var_tkwendnode3
= var_nodearraylist2
;
6984 /* <var_tkwendnode3:nullable Object> isa nullable TKwend */
6985 cltype
= type_nullable_parser_nodes__TKwend
.color
;
6986 idtype
= type_nullable_parser_nodes__TKwend
.id
;
6987 if(var_tkwendnode3
== NULL
) {
6990 if(cltype
>= var_tkwendnode3
->type
->table_size
) {
6993 var4
= var_tkwendnode3
->type
->type_table
[cltype
] == idtype
;
6997 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24681);
7000 var5
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7001 ((void (*)(val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var5
, var_listnode2
, var_tkwendnode3
) /* init_ablockexpr on <var5:ABlockExpr>*/;
7002 CHECK_NEW_parser_nodes__ABlockExpr(var5
);
7003 var_pexprnode1
= var5
;
7004 var_node_list
= var_pexprnode1
;
7005 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction609> */
7006 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
7007 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
7010 /* method parser#ReduceAction609#action for (self: Object, Parser) */
7011 void VIRTUAL_parser__ReduceAction609__action(val
* self
, val
* p0
) {
7012 parser__ReduceAction609__action(self
, p0
);
7015 /* method parser#ReduceAction610#action for (self: ReduceAction610, Parser) */
7016 void parser__ReduceAction610__action(val
* self
, val
* p0
) {
7017 val
* var_p
/* var p: Parser */;
7018 val
* var
/* : null */;
7019 val
* var_node_list
/* var node_list: nullable Object */;
7020 val
* var1
/* : nullable Object */;
7021 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7022 val
* var2
/* : Array[Object] */;
7023 val
* var_listnode2
/* var listnode2: Array[Object] */;
7024 val
* var_tkwendnode3
/* var tkwendnode3: nullable Object */;
7025 short int var3
/* : Bool */;
7028 val
* var4
/* : ABlockExpr */;
7029 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7030 long var5
/* : Int */;
7031 long var6
/* : Int */;
7034 var_node_list
= var
;
7035 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7036 var_nodearraylist1
= var1
;
7037 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
7038 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
7039 CHECK_NEW_array__Array(var2
);
7040 var_listnode2
= var2
;
7041 var_tkwendnode3
= var_nodearraylist1
;
7042 /* <var_tkwendnode3:nullable Object> isa nullable TKwend */
7043 cltype
= type_nullable_parser_nodes__TKwend
.color
;
7044 idtype
= type_nullable_parser_nodes__TKwend
.id
;
7045 if(var_tkwendnode3
== NULL
) {
7048 if(cltype
>= var_tkwendnode3
->type
->table_size
) {
7051 var3
= var_tkwendnode3
->type
->type_table
[cltype
] == idtype
;
7055 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24698);
7058 var4
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7059 ((void (*)(val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var4
, var_listnode2
, var_tkwendnode3
) /* init_ablockexpr on <var4:ABlockExpr>*/;
7060 CHECK_NEW_parser_nodes__ABlockExpr(var4
);
7061 var_pexprnode1
= var4
;
7062 var_node_list
= var_pexprnode1
;
7063 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction610> */
7064 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
7065 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
7068 /* method parser#ReduceAction610#action for (self: Object, Parser) */
7069 void VIRTUAL_parser__ReduceAction610__action(val
* self
, val
* p0
) {
7070 parser__ReduceAction610__action(self
, p0
);
7073 /* method parser#ReduceAction611#action for (self: ReduceAction611, Parser) */
7074 void parser__ReduceAction611__action(val
* self
, val
* p0
) {
7075 val
* var_p
/* var p: Parser */;
7076 val
* var
/* : null */;
7077 val
* var_node_list
/* var node_list: nullable Object */;
7078 val
* var1
/* : nullable Object */;
7079 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7080 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
7081 long var2
/* : Int */;
7082 long var3
/* : Int */;
7085 var_node_list
= var
;
7086 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7087 var_nodearraylist1
= var1
;
7088 var_pexprnode1
= var_nodearraylist1
;
7089 var_node_list
= var_pexprnode1
;
7090 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction611> */
7091 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
7092 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
7095 /* method parser#ReduceAction611#action for (self: Object, Parser) */
7096 void VIRTUAL_parser__ReduceAction611__action(val
* self
, val
* p0
) {
7097 parser__ReduceAction611__action(self
, p0
);
7100 /* method parser#ReduceAction612#action for (self: ReduceAction612, Parser) */
7101 void parser__ReduceAction612__action(val
* self
, val
* p0
) {
7102 val
* var_p
/* var p: Parser */;
7103 val
* var
/* : null */;
7104 val
* var_node_list
/* var node_list: nullable Object */;
7105 val
* var1
/* : nullable Object */;
7106 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7107 val
* var2
/* : Array[Object] */;
7108 val
* var_listnode3
/* var listnode3: Array[Object] */;
7109 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7110 short int var3
/* : Bool */;
7113 val
* var4
/* : null */;
7114 short int var5
/* : Bool */;
7115 val
* var6
/* : ABlockExpr */;
7116 val
* var7
/* : null */;
7117 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7118 long var8
/* : Int */;
7119 long var9
/* : Int */;
7122 var_node_list
= var
;
7123 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7124 var_nodearraylist1
= var1
;
7125 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
7126 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
7127 CHECK_NEW_array__Array(var2
);
7128 var_listnode3
= var2
;
7129 var_pexprnode2
= var_nodearraylist1
;
7130 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7131 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7132 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7133 if(var_pexprnode2
== NULL
) {
7136 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7139 var3
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7143 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24726);
7147 if (var_pexprnode2
== NULL
) {
7148 var5
= 0; /* is null */
7150 var5
= 1; /* arg is null and recv is not */
7153 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
7156 var6
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7158 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var6
, var_listnode3
, var7
) /* init_ablockexpr on <var6:ABlockExpr>*/;
7159 CHECK_NEW_parser_nodes__ABlockExpr(var6
);
7160 var_pexprnode1
= var6
;
7161 var_node_list
= var_pexprnode1
;
7162 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction612> */
7163 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
7164 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
7167 /* method parser#ReduceAction612#action for (self: Object, Parser) */
7168 void VIRTUAL_parser__ReduceAction612__action(val
* self
, val
* p0
) {
7169 parser__ReduceAction612__action(self
, p0
);
7172 /* method parser#ReduceAction613#action for (self: ReduceAction613, Parser) */
7173 void parser__ReduceAction613__action(val
* self
, val
* p0
) {
7174 val
* var_p
/* var p: Parser */;
7175 val
* var
/* : null */;
7176 val
* var_node_list
/* var node_list: nullable Object */;
7177 val
* var1
/* : nullable Object */;
7178 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7179 val
* var2
/* : nullable Object */;
7180 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7181 val
* var3
/* : Array[Object] */;
7182 val
* var_listnode4
/* var listnode4: Array[Object] */;
7183 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7184 short int var4
/* : Bool */;
7187 val
* var_listnode3
/* var listnode3: nullable Object */;
7188 short int var5
/* : Bool */;
7191 val
* var8
/* : null */;
7192 short int var9
/* : Bool */;
7193 val
* var10
/* : Array[Object] */;
7194 val
* var11
/* : ABlockExpr */;
7195 val
* var12
/* : null */;
7196 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7197 long var13
/* : Int */;
7198 long var14
/* : Int */;
7201 var_node_list
= var
;
7202 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7203 var_nodearraylist2
= var1
;
7204 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7205 var_nodearraylist1
= var2
;
7206 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7207 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7208 CHECK_NEW_array__Array(var3
);
7209 var_listnode4
= var3
;
7210 var_pexprnode2
= var_nodearraylist1
;
7211 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7212 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7213 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7214 if(var_pexprnode2
== NULL
) {
7217 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7220 var4
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7224 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24747);
7227 var_listnode3
= var_nodearraylist2
;
7228 /* <var_listnode3:nullable Object> isa Array[Object] */
7229 cltype6
= type_array__Arraykernel__Object
.color
;
7230 idtype7
= type_array__Arraykernel__Object
.id
;
7231 if(var_listnode3
== NULL
) {
7234 if(cltype6
>= var_listnode3
->type
->table_size
) {
7237 var5
= var_listnode3
->type
->type_table
[cltype6
] == idtype7
;
7241 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24749);
7245 if (var_pexprnode2
== NULL
) {
7246 var9
= 0; /* is null */
7248 var9
= 1; /* arg is null and recv is not */
7251 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
7254 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction613>*/;
7255 var_listnode4
= var10
;
7256 var11
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7258 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var11
, var_listnode4
, var12
) /* init_ablockexpr on <var11:ABlockExpr>*/;
7259 CHECK_NEW_parser_nodes__ABlockExpr(var11
);
7260 var_pexprnode1
= var11
;
7261 var_node_list
= var_pexprnode1
;
7262 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction613> */
7263 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
7264 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
7267 /* method parser#ReduceAction613#action for (self: Object, Parser) */
7268 void VIRTUAL_parser__ReduceAction613__action(val
* self
, val
* p0
) {
7269 parser__ReduceAction613__action(self
, p0
);
7272 /* method parser#ReduceAction614#action for (self: ReduceAction614, Parser) */
7273 void parser__ReduceAction614__action(val
* self
, val
* p0
) {
7274 val
* var_p
/* var p: Parser */;
7275 val
* var
/* : null */;
7276 val
* var_node_list
/* var node_list: nullable Object */;
7277 val
* var1
/* : nullable Object */;
7278 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7279 val
* var2
/* : nullable Object */;
7280 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7281 val
* var3
/* : Array[Object] */;
7282 val
* var_listnode3
/* var listnode3: Array[Object] */;
7283 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7284 short int var4
/* : Bool */;
7287 val
* var5
/* : null */;
7288 short int var6
/* : Bool */;
7289 val
* var7
/* : ABlockExpr */;
7290 val
* var8
/* : null */;
7291 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7292 long var9
/* : Int */;
7293 long var10
/* : Int */;
7296 var_node_list
= var
;
7297 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7298 var_nodearraylist2
= var1
;
7299 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7300 var_nodearraylist1
= var2
;
7301 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7302 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7303 CHECK_NEW_array__Array(var3
);
7304 var_listnode3
= var3
;
7305 var_pexprnode2
= var_nodearraylist1
;
7306 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7307 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7308 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7309 if(var_pexprnode2
== NULL
) {
7312 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7315 var4
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7319 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24771);
7323 if (var_pexprnode2
== NULL
) {
7324 var6
= 0; /* is null */
7326 var6
= 1; /* arg is null and recv is not */
7329 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
7332 var7
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7334 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var7
, var_listnode3
, var8
) /* init_ablockexpr on <var7:ABlockExpr>*/;
7335 CHECK_NEW_parser_nodes__ABlockExpr(var7
);
7336 var_pexprnode1
= var7
;
7337 var_node_list
= var_pexprnode1
;
7338 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction614> */
7339 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7340 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7343 /* method parser#ReduceAction614#action for (self: Object, Parser) */
7344 void VIRTUAL_parser__ReduceAction614__action(val
* self
, val
* p0
) {
7345 parser__ReduceAction614__action(self
, p0
);
7348 /* method parser#ReduceAction615#action for (self: ReduceAction615, Parser) */
7349 void parser__ReduceAction615__action(val
* self
, val
* p0
) {
7350 val
* var_p
/* var p: Parser */;
7351 val
* var
/* : null */;
7352 val
* var_node_list
/* var node_list: nullable Object */;
7353 val
* var1
/* : nullable Object */;
7354 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7355 val
* var2
/* : nullable Object */;
7356 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7357 val
* var3
/* : nullable Object */;
7358 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7359 val
* var4
/* : Array[Object] */;
7360 val
* var_listnode4
/* var listnode4: Array[Object] */;
7361 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7362 short int var5
/* : Bool */;
7365 val
* var_listnode3
/* var listnode3: nullable Object */;
7366 short int var6
/* : Bool */;
7369 val
* var9
/* : null */;
7370 short int var10
/* : Bool */;
7371 val
* var11
/* : Array[Object] */;
7372 val
* var12
/* : ABlockExpr */;
7373 val
* var13
/* : null */;
7374 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7375 long var14
/* : Int */;
7376 long var15
/* : Int */;
7379 var_node_list
= var
;
7380 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7381 var_nodearraylist3
= var1
;
7382 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7383 var_nodearraylist2
= var2
;
7384 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7385 var_nodearraylist1
= var3
;
7386 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
7387 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
7388 CHECK_NEW_array__Array(var4
);
7389 var_listnode4
= var4
;
7390 var_pexprnode2
= var_nodearraylist1
;
7391 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7392 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7393 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7394 if(var_pexprnode2
== NULL
) {
7397 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7400 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7404 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24793);
7407 var_listnode3
= var_nodearraylist2
;
7408 /* <var_listnode3:nullable Object> isa Array[Object] */
7409 cltype7
= type_array__Arraykernel__Object
.color
;
7410 idtype8
= type_array__Arraykernel__Object
.id
;
7411 if(var_listnode3
== NULL
) {
7414 if(cltype7
>= var_listnode3
->type
->table_size
) {
7417 var6
= var_listnode3
->type
->type_table
[cltype7
] == idtype8
;
7421 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24795);
7425 if (var_pexprnode2
== NULL
) {
7426 var10
= 0; /* is null */
7428 var10
= 1; /* arg is null and recv is not */
7431 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
7434 var11
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction615>*/;
7435 var_listnode4
= var11
;
7436 var12
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7438 ((void (*)(val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var12
, var_listnode4
, var13
) /* init_ablockexpr on <var12:ABlockExpr>*/;
7439 CHECK_NEW_parser_nodes__ABlockExpr(var12
);
7440 var_pexprnode1
= var12
;
7441 var_node_list
= var_pexprnode1
;
7442 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction615> */
7443 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
7444 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
7447 /* method parser#ReduceAction615#action for (self: Object, Parser) */
7448 void VIRTUAL_parser__ReduceAction615__action(val
* self
, val
* p0
) {
7449 parser__ReduceAction615__action(self
, p0
);
7452 /* method parser#ReduceAction616#action for (self: ReduceAction616, Parser) */
7453 void parser__ReduceAction616__action(val
* self
, val
* p0
) {
7454 val
* var_p
/* var p: Parser */;
7455 val
* var
/* : null */;
7456 val
* var_node_list
/* var node_list: nullable Object */;
7457 val
* var1
/* : nullable Object */;
7458 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7459 val
* var2
/* : nullable Object */;
7460 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7461 val
* var3
/* : nullable Object */;
7462 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7463 val
* var4
/* : Array[Object] */;
7464 val
* var_listnode3
/* var listnode3: Array[Object] */;
7465 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7466 short int var5
/* : Bool */;
7469 val
* var6
/* : null */;
7470 short int var7
/* : Bool */;
7471 val
* var_tkwendnode4
/* var tkwendnode4: nullable Object */;
7472 short int var8
/* : Bool */;
7475 val
* var11
/* : ABlockExpr */;
7476 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7477 long var12
/* : Int */;
7478 long var13
/* : Int */;
7481 var_node_list
= var
;
7482 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7483 var_nodearraylist3
= var1
;
7484 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7485 var_nodearraylist2
= var2
;
7486 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7487 var_nodearraylist1
= var3
;
7488 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
7489 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
7490 CHECK_NEW_array__Array(var4
);
7491 var_listnode3
= var4
;
7492 var_pexprnode2
= var_nodearraylist1
;
7493 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7494 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7495 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7496 if(var_pexprnode2
== NULL
) {
7499 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7502 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7506 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24818);
7510 if (var_pexprnode2
== NULL
) {
7511 var7
= 0; /* is null */
7513 var7
= 1; /* arg is null and recv is not */
7516 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
7519 var_tkwendnode4
= var_nodearraylist3
;
7520 /* <var_tkwendnode4:nullable Object> isa nullable TKwend */
7521 cltype9
= type_nullable_parser_nodes__TKwend
.color
;
7522 idtype10
= type_nullable_parser_nodes__TKwend
.id
;
7523 if(var_tkwendnode4
== NULL
) {
7526 if(cltype9
>= var_tkwendnode4
->type
->table_size
) {
7529 var8
= var_tkwendnode4
->type
->type_table
[cltype9
] == idtype10
;
7533 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24823);
7536 var11
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7537 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var11
, var_listnode3
, var_tkwendnode4
) /* init_ablockexpr on <var11:ABlockExpr>*/;
7538 CHECK_NEW_parser_nodes__ABlockExpr(var11
);
7539 var_pexprnode1
= var11
;
7540 var_node_list
= var_pexprnode1
;
7541 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction616> */
7542 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
7543 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
7546 /* method parser#ReduceAction616#action for (self: Object, Parser) */
7547 void VIRTUAL_parser__ReduceAction616__action(val
* self
, val
* p0
) {
7548 parser__ReduceAction616__action(self
, p0
);
7551 /* method parser#ReduceAction617#action for (self: ReduceAction617, Parser) */
7552 void parser__ReduceAction617__action(val
* self
, val
* p0
) {
7553 val
* var_p
/* var p: Parser */;
7554 val
* var
/* : null */;
7555 val
* var_node_list
/* var node_list: nullable Object */;
7556 val
* var1
/* : nullable Object */;
7557 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7558 val
* var2
/* : nullable Object */;
7559 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7560 val
* var3
/* : nullable Object */;
7561 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7562 val
* var4
/* : nullable Object */;
7563 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7564 val
* var5
/* : Array[Object] */;
7565 val
* var_listnode4
/* var listnode4: Array[Object] */;
7566 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7567 short int var6
/* : Bool */;
7570 val
* var_listnode3
/* var listnode3: nullable Object */;
7571 short int var7
/* : Bool */;
7574 val
* var10
/* : null */;
7575 short int var11
/* : Bool */;
7576 val
* var12
/* : Array[Object] */;
7577 val
* var_tkwendnode5
/* var tkwendnode5: nullable Object */;
7578 short int var13
/* : Bool */;
7581 val
* var16
/* : ABlockExpr */;
7582 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7583 long var17
/* : Int */;
7584 long var18
/* : Int */;
7587 var_node_list
= var
;
7588 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7589 var_nodearraylist4
= var1
;
7590 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7591 var_nodearraylist3
= var2
;
7592 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7593 var_nodearraylist2
= var3
;
7594 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7595 var_nodearraylist1
= var4
;
7596 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
7597 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
7598 CHECK_NEW_array__Array(var5
);
7599 var_listnode4
= var5
;
7600 var_pexprnode2
= var_nodearraylist1
;
7601 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7602 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7603 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7604 if(var_pexprnode2
== NULL
) {
7607 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7610 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7614 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24843);
7617 var_listnode3
= var_nodearraylist2
;
7618 /* <var_listnode3:nullable Object> isa Array[Object] */
7619 cltype8
= type_array__Arraykernel__Object
.color
;
7620 idtype9
= type_array__Arraykernel__Object
.id
;
7621 if(var_listnode3
== NULL
) {
7624 if(cltype8
>= var_listnode3
->type
->table_size
) {
7627 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
7631 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24845);
7635 if (var_pexprnode2
== NULL
) {
7636 var11
= 0; /* is null */
7638 var11
= 1; /* arg is null and recv is not */
7641 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
7644 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction617>*/;
7645 var_listnode4
= var12
;
7646 var_tkwendnode5
= var_nodearraylist4
;
7647 /* <var_tkwendnode5:nullable Object> isa nullable TKwend */
7648 cltype14
= type_nullable_parser_nodes__TKwend
.color
;
7649 idtype15
= type_nullable_parser_nodes__TKwend
.id
;
7650 if(var_tkwendnode5
== NULL
) {
7653 if(cltype14
>= var_tkwendnode5
->type
->table_size
) {
7656 var13
= var_tkwendnode5
->type
->type_table
[cltype14
] == idtype15
;
7660 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24851);
7663 var16
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7664 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var16
, var_listnode4
, var_tkwendnode5
) /* init_ablockexpr on <var16:ABlockExpr>*/;
7665 CHECK_NEW_parser_nodes__ABlockExpr(var16
);
7666 var_pexprnode1
= var16
;
7667 var_node_list
= var_pexprnode1
;
7668 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction617> */
7669 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
7670 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
7673 /* method parser#ReduceAction617#action for (self: Object, Parser) */
7674 void VIRTUAL_parser__ReduceAction617__action(val
* self
, val
* p0
) {
7675 parser__ReduceAction617__action(self
, p0
);
7678 /* method parser#ReduceAction621#action for (self: ReduceAction621, Parser) */
7679 void parser__ReduceAction621__action(val
* self
, val
* p0
) {
7680 val
* var_p
/* var p: Parser */;
7681 val
* var
/* : null */;
7682 val
* var_node_list
/* var node_list: nullable Object */;
7683 val
* var1
/* : nullable Object */;
7684 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7685 val
* var_tkwreturnnode2
/* var tkwreturnnode2: nullable Object */;
7686 short int var2
/* : Bool */;
7689 val
* var3
/* : AReturnExpr */;
7690 val
* var4
/* : null */;
7691 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
7692 long var5
/* : Int */;
7693 long var6
/* : Int */;
7696 var_node_list
= var
;
7697 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7698 var_nodearraylist1
= var1
;
7699 var_tkwreturnnode2
= var_nodearraylist1
;
7700 /* <var_tkwreturnnode2:nullable Object> isa nullable TKwreturn */
7701 cltype
= type_nullable_parser_nodes__TKwreturn
.color
;
7702 idtype
= type_nullable_parser_nodes__TKwreturn
.id
;
7703 if(var_tkwreturnnode2
== NULL
) {
7706 if(cltype
>= var_tkwreturnnode2
->type
->table_size
) {
7709 var2
= var_tkwreturnnode2
->type
->type_table
[cltype
] == idtype
;
7713 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24867);
7716 var3
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
7718 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var3
, var_tkwreturnnode2
, var4
) /* init_areturnexpr on <var3:AReturnExpr>*/;
7719 CHECK_NEW_parser_nodes__AReturnExpr(var3
);
7720 var_pexprnode1
= var3
;
7721 var_node_list
= var_pexprnode1
;
7722 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction621> */
7723 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
7724 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
7727 /* method parser#ReduceAction621#action for (self: Object, Parser) */
7728 void VIRTUAL_parser__ReduceAction621__action(val
* self
, val
* p0
) {
7729 parser__ReduceAction621__action(self
, p0
);
7732 /* method parser#ReduceAction622#action for (self: ReduceAction622, Parser) */
7733 void parser__ReduceAction622__action(val
* self
, val
* p0
) {
7734 val
* var_p
/* var p: Parser */;
7735 val
* var
/* : null */;
7736 val
* var_node_list
/* var node_list: nullable Object */;
7737 val
* var1
/* : nullable Object */;
7738 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7739 val
* var2
/* : nullable Object */;
7740 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7741 val
* var_tkwreturnnode2
/* var tkwreturnnode2: nullable Object */;
7742 short int var3
/* : Bool */;
7745 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7746 short int var4
/* : Bool */;
7749 val
* var7
/* : AReturnExpr */;
7750 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
7751 long var8
/* : Int */;
7752 long var9
/* : Int */;
7755 var_node_list
= var
;
7756 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7757 var_nodearraylist2
= var1
;
7758 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7759 var_nodearraylist1
= var2
;
7760 var_tkwreturnnode2
= var_nodearraylist1
;
7761 /* <var_tkwreturnnode2:nullable Object> isa nullable TKwreturn */
7762 cltype
= type_nullable_parser_nodes__TKwreturn
.color
;
7763 idtype
= type_nullable_parser_nodes__TKwreturn
.id
;
7764 if(var_tkwreturnnode2
== NULL
) {
7767 if(cltype
>= var_tkwreturnnode2
->type
->table_size
) {
7770 var3
= var_tkwreturnnode2
->type
->type_table
[cltype
] == idtype
;
7774 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24884);
7777 var_pexprnode3
= var_nodearraylist2
;
7778 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7779 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
7780 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
7781 if(var_pexprnode3
== NULL
) {
7784 if(cltype5
>= var_pexprnode3
->type
->table_size
) {
7787 var4
= var_pexprnode3
->type
->type_table
[cltype5
] == idtype6
;
7791 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24886);
7794 var7
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
7795 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var7
, var_tkwreturnnode2
, var_pexprnode3
) /* init_areturnexpr on <var7:AReturnExpr>*/;
7796 CHECK_NEW_parser_nodes__AReturnExpr(var7
);
7797 var_pexprnode1
= var7
;
7798 var_node_list
= var_pexprnode1
;
7799 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction622> */
7800 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
7801 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
7804 /* method parser#ReduceAction622#action for (self: Object, Parser) */
7805 void VIRTUAL_parser__ReduceAction622__action(val
* self
, val
* p0
) {
7806 parser__ReduceAction622__action(self
, p0
);
7809 /* method parser#ReduceAction623#action for (self: ReduceAction623, Parser) */
7810 void parser__ReduceAction623__action(val
* self
, val
* p0
) {
7811 val
* var_p
/* var p: Parser */;
7812 val
* var
/* : null */;
7813 val
* var_node_list
/* var node_list: nullable Object */;
7814 val
* var1
/* : nullable Object */;
7815 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7816 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
7817 short int var2
/* : Bool */;
7820 val
* var3
/* : ABreakExpr */;
7821 val
* var4
/* : null */;
7822 val
* var5
/* : null */;
7823 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
7824 long var6
/* : Int */;
7825 long var7
/* : Int */;
7828 var_node_list
= var
;
7829 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7830 var_nodearraylist1
= var1
;
7831 var_tkwbreaknode2
= var_nodearraylist1
;
7832 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
7833 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
7834 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
7835 if(var_tkwbreaknode2
== NULL
) {
7838 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
7841 var2
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
7845 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24902);
7848 var3
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
7851 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var3
, var_tkwbreaknode2
, var4
, var5
) /* init_abreakexpr on <var3:ABreakExpr>*/;
7852 CHECK_NEW_parser_nodes__ABreakExpr(var3
);
7853 var_pexprnode1
= var3
;
7854 var_node_list
= var_pexprnode1
;
7855 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction623> */
7856 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
7857 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
7860 /* method parser#ReduceAction623#action for (self: Object, Parser) */
7861 void VIRTUAL_parser__ReduceAction623__action(val
* self
, val
* p0
) {
7862 parser__ReduceAction623__action(self
, p0
);
7865 /* method parser#ReduceAction624#action for (self: ReduceAction624, Parser) */
7866 void parser__ReduceAction624__action(val
* self
, val
* p0
) {
7867 val
* var_p
/* var p: Parser */;
7868 val
* var
/* : null */;
7869 val
* var_node_list
/* var node_list: nullable Object */;
7870 val
* var1
/* : nullable Object */;
7871 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7872 val
* var2
/* : nullable Object */;
7873 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7874 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
7875 short int var3
/* : Bool */;
7878 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
7879 short int var4
/* : Bool */;
7882 val
* var7
/* : ABreakExpr */;
7883 val
* var8
/* : null */;
7884 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
7885 long var9
/* : Int */;
7886 long var10
/* : Int */;
7889 var_node_list
= var
;
7890 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7891 var_nodearraylist2
= var1
;
7892 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7893 var_nodearraylist1
= var2
;
7894 var_tkwbreaknode2
= var_nodearraylist1
;
7895 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
7896 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
7897 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
7898 if(var_tkwbreaknode2
== NULL
) {
7901 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
7904 var3
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
7908 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24920);
7911 var_plabelnode3
= var_nodearraylist2
;
7912 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
7913 cltype5
= type_nullable_parser_nodes__ALabel
.color
;
7914 idtype6
= type_nullable_parser_nodes__ALabel
.id
;
7915 if(var_plabelnode3
== NULL
) {
7918 if(cltype5
>= var_plabelnode3
->type
->table_size
) {
7921 var4
= var_plabelnode3
->type
->type_table
[cltype5
] == idtype6
;
7925 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24922);
7928 var7
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
7930 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var7
, var_tkwbreaknode2
, var_plabelnode3
, var8
) /* init_abreakexpr on <var7:ABreakExpr>*/;
7931 CHECK_NEW_parser_nodes__ABreakExpr(var7
);
7932 var_pexprnode1
= var7
;
7933 var_node_list
= var_pexprnode1
;
7934 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction624> */
7935 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7936 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7939 /* method parser#ReduceAction624#action for (self: Object, Parser) */
7940 void VIRTUAL_parser__ReduceAction624__action(val
* self
, val
* p0
) {
7941 parser__ReduceAction624__action(self
, p0
);
7944 /* method parser#ReduceAction625#action for (self: ReduceAction625, Parser) */
7945 void parser__ReduceAction625__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_nodearraylist2
/* var nodearraylist2: nullable Object */;
7951 val
* var2
/* : nullable Object */;
7952 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7953 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
7954 short int var3
/* : Bool */;
7957 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7958 short int var4
/* : Bool */;
7961 val
* var7
/* : ABreakExpr */;
7962 val
* var8
/* : null */;
7963 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
7964 long var9
/* : Int */;
7965 long var10
/* : Int */;
7968 var_node_list
= var
;
7969 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7970 var_nodearraylist2
= var1
;
7971 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7972 var_nodearraylist1
= var2
;
7973 var_tkwbreaknode2
= var_nodearraylist1
;
7974 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
7975 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
7976 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
7977 if(var_tkwbreaknode2
== NULL
) {
7980 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
7983 var3
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
7987 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24940);
7990 var_pexprnode4
= var_nodearraylist2
;
7991 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7992 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
7993 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
7994 if(var_pexprnode4
== NULL
) {
7997 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
8000 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
8004 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24942);
8007 var7
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
8009 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var7
, var_tkwbreaknode2
, var8
, var_pexprnode4
) /* init_abreakexpr on <var7:ABreakExpr>*/;
8010 CHECK_NEW_parser_nodes__ABreakExpr(var7
);
8011 var_pexprnode1
= var7
;
8012 var_node_list
= var_pexprnode1
;
8013 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction625> */
8014 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8015 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8018 /* method parser#ReduceAction625#action for (self: Object, Parser) */
8019 void VIRTUAL_parser__ReduceAction625__action(val
* self
, val
* p0
) {
8020 parser__ReduceAction625__action(self
, p0
);
8023 /* method parser#ReduceAction626#action for (self: ReduceAction626, Parser) */
8024 void parser__ReduceAction626__action(val
* self
, val
* p0
) {
8025 val
* var_p
/* var p: Parser */;
8026 val
* var
/* : null */;
8027 val
* var_node_list
/* var node_list: nullable Object */;
8028 val
* var1
/* : nullable Object */;
8029 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8030 val
* var2
/* : nullable Object */;
8031 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8032 val
* var3
/* : nullable Object */;
8033 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8034 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
8035 short int var4
/* : Bool */;
8038 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
8039 short int var5
/* : Bool */;
8042 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8043 short int var8
/* : Bool */;
8046 val
* var11
/* : ABreakExpr */;
8047 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
8048 long var12
/* : Int */;
8049 long var13
/* : Int */;
8052 var_node_list
= var
;
8053 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8054 var_nodearraylist3
= var1
;
8055 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8056 var_nodearraylist2
= var2
;
8057 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8058 var_nodearraylist1
= var3
;
8059 var_tkwbreaknode2
= var_nodearraylist1
;
8060 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
8061 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
8062 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
8063 if(var_tkwbreaknode2
== NULL
) {
8066 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
8069 var4
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
8073 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24961);
8076 var_plabelnode3
= var_nodearraylist2
;
8077 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
8078 cltype6
= type_nullable_parser_nodes__ALabel
.color
;
8079 idtype7
= type_nullable_parser_nodes__ALabel
.id
;
8080 if(var_plabelnode3
== NULL
) {
8083 if(cltype6
>= var_plabelnode3
->type
->table_size
) {
8086 var5
= var_plabelnode3
->type
->type_table
[cltype6
] == idtype7
;
8090 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24963);
8093 var_pexprnode4
= var_nodearraylist3
;
8094 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8095 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
8096 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
8097 if(var_pexprnode4
== NULL
) {
8100 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
8103 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
8107 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24965);
8110 var11
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
8111 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var11
, var_tkwbreaknode2
, var_plabelnode3
, var_pexprnode4
) /* init_abreakexpr on <var11:ABreakExpr>*/;
8112 CHECK_NEW_parser_nodes__ABreakExpr(var11
);
8113 var_pexprnode1
= var11
;
8114 var_node_list
= var_pexprnode1
;
8115 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction626> */
8116 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
8117 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
8120 /* method parser#ReduceAction626#action for (self: Object, Parser) */
8121 void VIRTUAL_parser__ReduceAction626__action(val
* self
, val
* p0
) {
8122 parser__ReduceAction626__action(self
, p0
);
8125 /* method parser#ReduceAction627#action for (self: ReduceAction627, Parser) */
8126 void parser__ReduceAction627__action(val
* self
, val
* p0
) {
8127 val
* var_p
/* var p: Parser */;
8128 val
* var
/* : null */;
8129 val
* var_node_list
/* var node_list: nullable Object */;
8130 val
* var1
/* : nullable Object */;
8131 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8132 val
* var_tkwabortnode2
/* var tkwabortnode2: nullable Object */;
8133 short int var2
/* : Bool */;
8136 val
* var3
/* : AAbortExpr */;
8137 val
* var_pexprnode1
/* var pexprnode1: nullable AAbortExpr */;
8138 long var4
/* : Int */;
8139 long var5
/* : Int */;
8142 var_node_list
= var
;
8143 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8144 var_nodearraylist1
= var1
;
8145 var_tkwabortnode2
= var_nodearraylist1
;
8146 /* <var_tkwabortnode2:nullable Object> isa nullable TKwabort */
8147 cltype
= type_nullable_parser_nodes__TKwabort
.color
;
8148 idtype
= type_nullable_parser_nodes__TKwabort
.id
;
8149 if(var_tkwabortnode2
== NULL
) {
8152 if(cltype
>= var_tkwabortnode2
->type
->table_size
) {
8155 var2
= var_tkwabortnode2
->type
->type_table
[cltype
] == idtype
;
8159 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24982);
8162 var3
= NEW_parser_nodes__AAbortExpr(&type_parser_nodes__AAbortExpr
);
8163 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AAbortExpr__init_aabortexpr
]))(var3
, var_tkwabortnode2
) /* init_aabortexpr on <var3:AAbortExpr>*/;
8164 CHECK_NEW_parser_nodes__AAbortExpr(var3
);
8165 var_pexprnode1
= var3
;
8166 var_node_list
= var_pexprnode1
;
8167 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction627> */
8168 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8169 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8172 /* method parser#ReduceAction627#action for (self: Object, Parser) */
8173 void VIRTUAL_parser__ReduceAction627__action(val
* self
, val
* p0
) {
8174 parser__ReduceAction627__action(self
, p0
);
8177 /* method parser#ReduceAction628#action for (self: ReduceAction628, Parser) */
8178 void parser__ReduceAction628__action(val
* self
, val
* p0
) {
8179 val
* var_p
/* var p: Parser */;
8180 val
* var
/* : null */;
8181 val
* var_node_list
/* var node_list: nullable Object */;
8182 val
* var1
/* : nullable Object */;
8183 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8184 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8185 short int var2
/* : Bool */;
8188 val
* var3
/* : AContinueExpr */;
8189 val
* var4
/* : null */;
8190 val
* var5
/* : null */;
8191 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8192 long var6
/* : Int */;
8193 long var7
/* : Int */;
8196 var_node_list
= var
;
8197 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8198 var_nodearraylist1
= var1
;
8199 var_tkwcontinuenode2
= var_nodearraylist1
;
8200 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8201 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8202 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8203 if(var_tkwcontinuenode2
== NULL
) {
8206 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8209 var2
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8213 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 24997);
8216 var3
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
8219 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var3
, var_tkwcontinuenode2
, var4
, var5
) /* init_acontinueexpr on <var3:AContinueExpr>*/;
8220 CHECK_NEW_parser_nodes__AContinueExpr(var3
);
8221 var_pexprnode1
= var3
;
8222 var_node_list
= var_pexprnode1
;
8223 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction628> */
8224 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
8225 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
8228 /* method parser#ReduceAction628#action for (self: Object, Parser) */
8229 void VIRTUAL_parser__ReduceAction628__action(val
* self
, val
* p0
) {
8230 parser__ReduceAction628__action(self
, p0
);
8233 /* method parser#ReduceAction629#action for (self: ReduceAction629, Parser) */
8234 void parser__ReduceAction629__action(val
* self
, val
* p0
) {
8235 val
* var_p
/* var p: Parser */;
8236 val
* var
/* : null */;
8237 val
* var_node_list
/* var node_list: nullable Object */;
8238 val
* var1
/* : nullable Object */;
8239 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8240 val
* var2
/* : nullable Object */;
8241 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8242 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8243 short int var3
/* : Bool */;
8246 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
8247 short int var4
/* : Bool */;
8250 val
* var7
/* : AContinueExpr */;
8251 val
* var8
/* : null */;
8252 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8253 long var9
/* : Int */;
8254 long var10
/* : Int */;
8257 var_node_list
= var
;
8258 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8259 var_nodearraylist2
= var1
;
8260 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8261 var_nodearraylist1
= var2
;
8262 var_tkwcontinuenode2
= var_nodearraylist1
;
8263 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8264 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8265 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8266 if(var_tkwcontinuenode2
== NULL
) {
8269 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8272 var3
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8276 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25015);
8279 var_plabelnode3
= var_nodearraylist2
;
8280 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
8281 cltype5
= type_nullable_parser_nodes__ALabel
.color
;
8282 idtype6
= type_nullable_parser_nodes__ALabel
.id
;
8283 if(var_plabelnode3
== NULL
) {
8286 if(cltype5
>= var_plabelnode3
->type
->table_size
) {
8289 var4
= var_plabelnode3
->type
->type_table
[cltype5
] == idtype6
;
8293 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25017);
8296 var7
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
8298 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var7
, var_tkwcontinuenode2
, var_plabelnode3
, var8
) /* init_acontinueexpr on <var7:AContinueExpr>*/;
8299 CHECK_NEW_parser_nodes__AContinueExpr(var7
);
8300 var_pexprnode1
= var7
;
8301 var_node_list
= var_pexprnode1
;
8302 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction629> */
8303 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8304 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8307 /* method parser#ReduceAction629#action for (self: Object, Parser) */
8308 void VIRTUAL_parser__ReduceAction629__action(val
* self
, val
* p0
) {
8309 parser__ReduceAction629__action(self
, p0
);
8312 /* method parser#ReduceAction630#action for (self: ReduceAction630, Parser) */
8313 void parser__ReduceAction630__action(val
* self
, val
* p0
) {
8314 val
* var_p
/* var p: Parser */;
8315 val
* var
/* : null */;
8316 val
* var_node_list
/* var node_list: nullable Object */;
8317 val
* var1
/* : nullable Object */;
8318 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8319 val
* var2
/* : nullable Object */;
8320 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8321 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8322 short int var3
/* : Bool */;
8325 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8326 short int var4
/* : Bool */;
8329 val
* var7
/* : AContinueExpr */;
8330 val
* var8
/* : null */;
8331 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8332 long var9
/* : Int */;
8333 long var10
/* : Int */;
8336 var_node_list
= var
;
8337 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8338 var_nodearraylist2
= var1
;
8339 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8340 var_nodearraylist1
= var2
;
8341 var_tkwcontinuenode2
= var_nodearraylist1
;
8342 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8343 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8344 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8345 if(var_tkwcontinuenode2
== NULL
) {
8348 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8351 var3
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8355 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25035);
8358 var_pexprnode4
= var_nodearraylist2
;
8359 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8360 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
8361 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
8362 if(var_pexprnode4
== NULL
) {
8365 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
8368 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
8372 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25037);
8375 var7
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
8377 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var7
, var_tkwcontinuenode2
, var8
, var_pexprnode4
) /* init_acontinueexpr on <var7:AContinueExpr>*/;
8378 CHECK_NEW_parser_nodes__AContinueExpr(var7
);
8379 var_pexprnode1
= var7
;
8380 var_node_list
= var_pexprnode1
;
8381 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction630> */
8382 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8383 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8386 /* method parser#ReduceAction630#action for (self: Object, Parser) */
8387 void VIRTUAL_parser__ReduceAction630__action(val
* self
, val
* p0
) {
8388 parser__ReduceAction630__action(self
, p0
);
8391 /* method parser#ReduceAction631#action for (self: ReduceAction631, Parser) */
8392 void parser__ReduceAction631__action(val
* self
, val
* p0
) {
8393 val
* var_p
/* var p: Parser */;
8394 val
* var
/* : null */;
8395 val
* var_node_list
/* var node_list: nullable Object */;
8396 val
* var1
/* : nullable Object */;
8397 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8398 val
* var2
/* : nullable Object */;
8399 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8400 val
* var3
/* : nullable Object */;
8401 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8402 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8403 short int var4
/* : Bool */;
8406 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
8407 short int var5
/* : Bool */;
8410 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8411 short int var8
/* : Bool */;
8414 val
* var11
/* : AContinueExpr */;
8415 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8416 long var12
/* : Int */;
8417 long var13
/* : Int */;
8420 var_node_list
= var
;
8421 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8422 var_nodearraylist3
= var1
;
8423 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8424 var_nodearraylist2
= var2
;
8425 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8426 var_nodearraylist1
= var3
;
8427 var_tkwcontinuenode2
= var_nodearraylist1
;
8428 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8429 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8430 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8431 if(var_tkwcontinuenode2
== NULL
) {
8434 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8437 var4
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8441 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25056);
8444 var_plabelnode3
= var_nodearraylist2
;
8445 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
8446 cltype6
= type_nullable_parser_nodes__ALabel
.color
;
8447 idtype7
= type_nullable_parser_nodes__ALabel
.id
;
8448 if(var_plabelnode3
== NULL
) {
8451 if(cltype6
>= var_plabelnode3
->type
->table_size
) {
8454 var5
= var_plabelnode3
->type
->type_table
[cltype6
] == idtype7
;
8458 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25058);
8461 var_pexprnode4
= var_nodearraylist3
;
8462 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8463 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
8464 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
8465 if(var_pexprnode4
== NULL
) {
8468 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
8471 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
8475 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25060);
8478 var11
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
8479 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var11
, var_tkwcontinuenode2
, var_plabelnode3
, var_pexprnode4
) /* init_acontinueexpr on <var11:AContinueExpr>*/;
8480 CHECK_NEW_parser_nodes__AContinueExpr(var11
);
8481 var_pexprnode1
= var11
;
8482 var_node_list
= var_pexprnode1
;
8483 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction631> */
8484 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
8485 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
8488 /* method parser#ReduceAction631#action for (self: Object, Parser) */
8489 void VIRTUAL_parser__ReduceAction631__action(val
* self
, val
* p0
) {
8490 parser__ReduceAction631__action(self
, p0
);
8493 /* method parser#ReduceAction638#action for (self: ReduceAction638, Parser) */
8494 void parser__ReduceAction638__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
/* : nullable Object */;
8499 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8500 val
* var2
/* : nullable Object */;
8501 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8502 val
* var3
/* : nullable Object */;
8503 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8504 val
* var4
/* : nullable Object */;
8505 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8506 val
* var5
/* : nullable Object */;
8507 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8508 val
* var6
/* : Array[Object] */;
8509 val
* var_listnode5
/* var listnode5: Array[Object] */;
8510 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8511 short int var7
/* : Bool */;
8514 val
* var_tidnode3
/* var tidnode3: nullable Object */;
8515 short int var8
/* : Bool */;
8518 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8519 short int var11
/* : Bool */;
8522 val
* var14
/* : ACallExpr */;
8523 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
8524 long var15
/* : Int */;
8525 long var16
/* : Int */;
8528 var_node_list
= var
;
8529 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8530 var_nodearraylist5
= var1
;
8531 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8532 var_nodearraylist4
= var2
;
8533 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8534 var_nodearraylist3
= var3
;
8535 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8536 var_nodearraylist2
= var4
;
8537 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8538 var_nodearraylist1
= var5
;
8539 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
8540 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
8541 CHECK_NEW_array__Array(var6
);
8542 var_listnode5
= var6
;
8543 var_pexprnode2
= var_nodearraylist1
;
8544 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8545 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8546 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8547 if(var_pexprnode2
== NULL
) {
8550 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8553 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8557 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25082);
8560 var_tidnode3
= var_nodearraylist4
;
8561 /* <var_tidnode3:nullable Object> isa nullable TId */
8562 cltype9
= type_nullable_parser_nodes__TId
.color
;
8563 idtype10
= type_nullable_parser_nodes__TId
.id
;
8564 if(var_tidnode3
== NULL
) {
8567 if(cltype9
>= var_tidnode3
->type
->table_size
) {
8570 var8
= var_tidnode3
->type
->type_table
[cltype9
] == idtype10
;
8574 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25084);
8577 var_pexprsnode4
= var_nodearraylist5
;
8578 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8579 cltype12
= type_nullable_parser_nodes__AExprs
.color
;
8580 idtype13
= type_nullable_parser_nodes__AExprs
.id
;
8581 if(var_pexprsnode4
== NULL
) {
8584 if(cltype12
>= var_pexprsnode4
->type
->table_size
) {
8587 var11
= var_pexprsnode4
->type
->type_table
[cltype12
] == idtype13
;
8591 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25086);
8594 var14
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
8595 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var14
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode5
) /* init_acallexpr on <var14:ACallExpr>*/;
8596 CHECK_NEW_parser_nodes__ACallExpr(var14
);
8597 var_pexprnode1
= var14
;
8598 var_node_list
= var_pexprnode1
;
8599 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction638> */
8600 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
8601 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
8604 /* method parser#ReduceAction638#action for (self: Object, Parser) */
8605 void VIRTUAL_parser__ReduceAction638__action(val
* self
, val
* p0
) {
8606 parser__ReduceAction638__action(self
, p0
);
8609 /* method parser#ReduceAction639#action for (self: ReduceAction639, Parser) */
8610 void parser__ReduceAction639__action(val
* self
, val
* p0
) {
8611 val
* var_p
/* var p: Parser */;
8612 val
* var
/* : null */;
8613 val
* var_node_list
/* var node_list: nullable Object */;
8614 val
* var1
/* : nullable Object */;
8615 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8616 val
* var2
/* : nullable Object */;
8617 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8618 val
* var3
/* : Array[Object] */;
8619 val
* var_listnode5
/* var listnode5: Array[Object] */;
8620 val
* var4
/* : AImplicitSelfExpr */;
8621 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
8622 val
* var_tidnode3
/* var tidnode3: nullable Object */;
8623 short int var5
/* : Bool */;
8626 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8627 short int var6
/* : Bool */;
8630 val
* var9
/* : ACallExpr */;
8631 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
8632 long var10
/* : Int */;
8633 long var11
/* : Int */;
8636 var_node_list
= var
;
8637 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8638 var_nodearraylist2
= var1
;
8639 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8640 var_nodearraylist1
= var2
;
8641 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
8642 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
8643 CHECK_NEW_array__Array(var3
);
8644 var_listnode5
= var3
;
8645 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
8646 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
8647 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
8648 var_pexprnode2
= var4
;
8649 var_tidnode3
= var_nodearraylist1
;
8650 /* <var_tidnode3:nullable Object> isa nullable TId */
8651 cltype
= type_nullable_parser_nodes__TId
.color
;
8652 idtype
= type_nullable_parser_nodes__TId
.id
;
8653 if(var_tidnode3
== NULL
) {
8656 if(cltype
>= var_tidnode3
->type
->table_size
) {
8659 var5
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
8663 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25107);
8666 var_pexprsnode4
= var_nodearraylist2
;
8667 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8668 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
8669 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
8670 if(var_pexprsnode4
== NULL
) {
8673 if(cltype7
>= var_pexprsnode4
->type
->table_size
) {
8676 var6
= var_pexprsnode4
->type
->type_table
[cltype7
] == idtype8
;
8680 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25109);
8683 var9
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
8684 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var9
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode5
) /* init_acallexpr on <var9:ACallExpr>*/;
8685 CHECK_NEW_parser_nodes__ACallExpr(var9
);
8686 var_pexprnode1
= var9
;
8687 var_node_list
= var_pexprnode1
;
8688 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction639> */
8689 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8690 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8693 /* method parser#ReduceAction639#action for (self: Object, Parser) */
8694 void VIRTUAL_parser__ReduceAction639__action(val
* self
, val
* p0
) {
8695 parser__ReduceAction639__action(self
, p0
);
8698 /* method parser#ReduceAction640#action for (self: ReduceAction640, Parser) */
8699 void parser__ReduceAction640__action(val
* self
, val
* p0
) {
8700 val
* var_p
/* var p: Parser */;
8701 val
* var
/* : null */;
8702 val
* var_node_list
/* var node_list: nullable Object */;
8703 val
* var1
/* : nullable Object */;
8704 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8705 val
* var2
/* : nullable Object */;
8706 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8707 val
* var3
/* : nullable Object */;
8708 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8709 val
* var4
/* : nullable Object */;
8710 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8711 val
* var5
/* : nullable Object */;
8712 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8713 val
* var6
/* : nullable Object */;
8714 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8715 val
* var7
/* : Array[Object] */;
8716 val
* var_listnode5
/* var listnode5: Array[Object] */;
8717 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8718 short int var8
/* : Bool */;
8721 val
* var_tidnode3
/* var tidnode3: nullable Object */;
8722 short int var9
/* : Bool */;
8725 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8726 short int var12
/* : Bool */;
8729 val
* var15
/* : ACallExpr */;
8730 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
8731 long var16
/* : Int */;
8732 long var17
/* : Int */;
8735 var_node_list
= var
;
8736 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8737 var_nodearraylist6
= var1
;
8738 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8739 var_nodearraylist5
= var2
;
8740 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8741 var_nodearraylist4
= var3
;
8742 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8743 var_nodearraylist3
= var4
;
8744 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8745 var_nodearraylist2
= var5
;
8746 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8747 var_nodearraylist1
= var6
;
8748 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
8749 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
8750 CHECK_NEW_array__Array(var7
);
8751 var_listnode5
= var7
;
8752 var_pexprnode2
= var_nodearraylist1
;
8753 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8754 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8755 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8756 if(var_pexprnode2
== NULL
) {
8759 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8762 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8766 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25133);
8769 var_tidnode3
= var_nodearraylist5
;
8770 /* <var_tidnode3:nullable Object> isa nullable TId */
8771 cltype10
= type_nullable_parser_nodes__TId
.color
;
8772 idtype11
= type_nullable_parser_nodes__TId
.id
;
8773 if(var_tidnode3
== NULL
) {
8776 if(cltype10
>= var_tidnode3
->type
->table_size
) {
8779 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
8783 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25135);
8786 var_pexprsnode4
= var_nodearraylist6
;
8787 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8788 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
8789 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
8790 if(var_pexprsnode4
== NULL
) {
8793 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
8796 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
8800 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25137);
8803 var15
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
8804 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var15
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode5
) /* init_acallexpr on <var15:ACallExpr>*/;
8805 CHECK_NEW_parser_nodes__ACallExpr(var15
);
8806 var_pexprnode1
= var15
;
8807 var_node_list
= var_pexprnode1
;
8808 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction640> */
8809 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
8810 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
8813 /* method parser#ReduceAction640#action for (self: Object, Parser) */
8814 void VIRTUAL_parser__ReduceAction640__action(val
* self
, val
* p0
) {
8815 parser__ReduceAction640__action(self
, p0
);
8818 /* method parser#ReduceAction641#action for (self: ReduceAction641, Parser) */
8819 void parser__ReduceAction641__action(val
* self
, val
* p0
) {
8820 val
* var_p
/* var p: Parser */;
8821 val
* var
/* : null */;
8822 val
* var_node_list
/* var node_list: nullable Object */;
8823 val
* var1
/* : nullable Object */;
8824 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8825 val
* var2
/* : nullable Object */;
8826 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8827 val
* var3
/* : nullable Object */;
8828 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8829 val
* var4
/* : nullable Object */;
8830 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8831 val
* var5
/* : nullable Object */;
8832 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8833 val
* var6
/* : nullable Object */;
8834 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8835 val
* var7
/* : nullable Object */;
8836 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8837 val
* var8
/* : Array[Object] */;
8838 val
* var_listnode5
/* var listnode5: Array[Object] */;
8839 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8840 short int var9
/* : Bool */;
8843 val
* var_tidnode3
/* var tidnode3: nullable Object */;
8844 short int var10
/* : Bool */;
8847 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8848 short int var13
/* : Bool */;
8851 val
* var16
/* : ACallExpr */;
8852 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
8853 long var17
/* : Int */;
8854 long var18
/* : Int */;
8857 var_node_list
= var
;
8858 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8859 var_nodearraylist7
= var1
;
8860 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8861 var_nodearraylist6
= var2
;
8862 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8863 var_nodearraylist5
= var3
;
8864 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8865 var_nodearraylist4
= var4
;
8866 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8867 var_nodearraylist3
= var5
;
8868 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8869 var_nodearraylist2
= var6
;
8870 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8871 var_nodearraylist1
= var7
;
8872 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
8873 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
8874 CHECK_NEW_array__Array(var8
);
8875 var_listnode5
= var8
;
8876 var_pexprnode2
= var_nodearraylist1
;
8877 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8878 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8879 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8880 if(var_pexprnode2
== NULL
) {
8883 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8886 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8890 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25162);
8893 var_tidnode3
= var_nodearraylist6
;
8894 /* <var_tidnode3:nullable Object> isa nullable TId */
8895 cltype11
= type_nullable_parser_nodes__TId
.color
;
8896 idtype12
= type_nullable_parser_nodes__TId
.id
;
8897 if(var_tidnode3
== NULL
) {
8900 if(cltype11
>= var_tidnode3
->type
->table_size
) {
8903 var10
= var_tidnode3
->type
->type_table
[cltype11
] == idtype12
;
8907 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25164);
8910 var_pexprsnode4
= var_nodearraylist7
;
8911 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8912 cltype14
= type_nullable_parser_nodes__AExprs
.color
;
8913 idtype15
= type_nullable_parser_nodes__AExprs
.id
;
8914 if(var_pexprsnode4
== NULL
) {
8917 if(cltype14
>= var_pexprsnode4
->type
->table_size
) {
8920 var13
= var_pexprsnode4
->type
->type_table
[cltype14
] == idtype15
;
8924 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25166);
8927 var16
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
8928 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var16
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode5
) /* init_acallexpr on <var16:ACallExpr>*/;
8929 CHECK_NEW_parser_nodes__ACallExpr(var16
);
8930 var_pexprnode1
= var16
;
8931 var_node_list
= var_pexprnode1
;
8932 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction641> */
8933 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
8934 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
8937 /* method parser#ReduceAction641#action for (self: Object, Parser) */
8938 void VIRTUAL_parser__ReduceAction641__action(val
* self
, val
* p0
) {
8939 parser__ReduceAction641__action(self
, p0
);
8942 /* method parser#ReduceAction643#action for (self: ReduceAction643, Parser) */
8943 void parser__ReduceAction643__action(val
* self
, val
* p0
) {
8944 val
* var_p
/* var p: Parser */;
8945 val
* var
/* : null */;
8946 val
* var_node_list
/* var node_list: nullable Object */;
8947 val
* var1
/* : nullable Object */;
8948 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8949 val
* var2
/* : nullable Object */;
8950 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8951 val
* var3
/* : nullable Object */;
8952 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8953 val
* var4
/* : Array[Object] */;
8954 val
* var_listnode5
/* var listnode5: Array[Object] */;
8955 val
* var5
/* : AImplicitSelfExpr */;
8956 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
8957 val
* var_tidnode3
/* var tidnode3: nullable Object */;
8958 short int var6
/* : Bool */;
8961 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8962 short int var7
/* : Bool */;
8965 val
* var10
/* : ACallExpr */;
8966 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
8967 long var11
/* : Int */;
8968 long var12
/* : Int */;
8971 var_node_list
= var
;
8972 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8973 var_nodearraylist3
= var1
;
8974 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8975 var_nodearraylist2
= var2
;
8976 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8977 var_nodearraylist1
= var3
;
8978 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
8979 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
8980 CHECK_NEW_array__Array(var4
);
8981 var_listnode5
= var4
;
8982 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
8983 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
8984 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
8985 var_pexprnode2
= var5
;
8986 var_tidnode3
= var_nodearraylist2
;
8987 /* <var_tidnode3:nullable Object> isa nullable TId */
8988 cltype
= type_nullable_parser_nodes__TId
.color
;
8989 idtype
= type_nullable_parser_nodes__TId
.id
;
8990 if(var_tidnode3
== NULL
) {
8993 if(cltype
>= var_tidnode3
->type
->table_size
) {
8996 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9000 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25188);
9003 var_pexprsnode4
= var_nodearraylist3
;
9004 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9005 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
9006 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
9007 if(var_pexprsnode4
== NULL
) {
9010 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
9013 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
9017 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25190);
9020 var10
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9021 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var10
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode5
) /* init_acallexpr on <var10:ACallExpr>*/;
9022 CHECK_NEW_parser_nodes__ACallExpr(var10
);
9023 var_pexprnode1
= var10
;
9024 var_node_list
= var_pexprnode1
;
9025 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction643> */
9026 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
9027 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
9030 /* method parser#ReduceAction643#action for (self: Object, Parser) */
9031 void VIRTUAL_parser__ReduceAction643__action(val
* self
, val
* p0
) {
9032 parser__ReduceAction643__action(self
, p0
);
9035 /* method parser#ReduceAction644#action for (self: ReduceAction644, Parser) */
9036 void parser__ReduceAction644__action(val
* self
, val
* p0
) {
9037 val
* var_p
/* var p: Parser */;
9038 val
* var
/* : null */;
9039 val
* var_node_list
/* var node_list: nullable Object */;
9040 val
* var1
/* : nullable Object */;
9041 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9042 val
* var2
/* : nullable Object */;
9043 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9044 val
* var3
/* : nullable Object */;
9045 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9046 val
* var4
/* : nullable Object */;
9047 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9048 val
* var5
/* : Array[Object] */;
9049 val
* var_listnode5
/* var listnode5: Array[Object] */;
9050 val
* var6
/* : AImplicitSelfExpr */;
9051 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9052 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9053 short int var7
/* : Bool */;
9056 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9057 short int var8
/* : Bool */;
9060 val
* var11
/* : ACallExpr */;
9061 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9062 long var12
/* : Int */;
9063 long var13
/* : Int */;
9066 var_node_list
= var
;
9067 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9068 var_nodearraylist4
= var1
;
9069 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9070 var_nodearraylist3
= var2
;
9071 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9072 var_nodearraylist2
= var3
;
9073 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9074 var_nodearraylist1
= var4
;
9075 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
9076 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
9077 CHECK_NEW_array__Array(var5
);
9078 var_listnode5
= var5
;
9079 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9080 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
9081 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
9082 var_pexprnode2
= var6
;
9083 var_tidnode3
= var_nodearraylist3
;
9084 /* <var_tidnode3:nullable Object> isa nullable TId */
9085 cltype
= type_nullable_parser_nodes__TId
.color
;
9086 idtype
= type_nullable_parser_nodes__TId
.id
;
9087 if(var_tidnode3
== NULL
) {
9090 if(cltype
>= var_tidnode3
->type
->table_size
) {
9093 var7
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9097 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25213);
9100 var_pexprsnode4
= var_nodearraylist4
;
9101 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9102 cltype9
= type_nullable_parser_nodes__AExprs
.color
;
9103 idtype10
= type_nullable_parser_nodes__AExprs
.id
;
9104 if(var_pexprsnode4
== NULL
) {
9107 if(cltype9
>= var_pexprsnode4
->type
->table_size
) {
9110 var8
= var_pexprsnode4
->type
->type_table
[cltype9
] == idtype10
;
9114 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25215);
9117 var11
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9118 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var11
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode5
) /* init_acallexpr on <var11:ACallExpr>*/;
9119 CHECK_NEW_parser_nodes__ACallExpr(var11
);
9120 var_pexprnode1
= var11
;
9121 var_node_list
= var_pexprnode1
;
9122 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction644> */
9123 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
9124 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
9127 /* method parser#ReduceAction644#action for (self: Object, Parser) */
9128 void VIRTUAL_parser__ReduceAction644__action(val
* self
, val
* p0
) {
9129 parser__ReduceAction644__action(self
, p0
);
9132 /* method parser#ReduceAction646#action for (self: ReduceAction646, Parser) */
9133 void parser__ReduceAction646__action(val
* self
, val
* p0
) {
9134 val
* var_p
/* var p: Parser */;
9135 val
* var
/* : null */;
9136 val
* var_node_list
/* var node_list: nullable Object */;
9137 val
* var1
/* : nullable Object */;
9138 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9139 val
* var2
/* : nullable Object */;
9140 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9141 val
* var3
/* : nullable Object */;
9142 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9143 val
* var4
/* : nullable Object */;
9144 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9145 val
* var5
/* : nullable Object */;
9146 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9147 val
* var6
/* : nullable Object */;
9148 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9149 val
* var7
/* : Array[Object] */;
9150 val
* var_listnode6
/* var listnode6: Array[Object] */;
9151 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9152 short int var8
/* : Bool */;
9155 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9156 short int var9
/* : Bool */;
9159 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9160 short int var12
/* : Bool */;
9163 val
* var_listnode5
/* var listnode5: nullable Object */;
9164 short int var15
/* : Bool */;
9167 val
* var18
/* : Array[Object] */;
9168 val
* var19
/* : ACallExpr */;
9169 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9170 long var20
/* : Int */;
9171 long var21
/* : Int */;
9174 var_node_list
= var
;
9175 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9176 var_nodearraylist6
= var1
;
9177 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9178 var_nodearraylist5
= var2
;
9179 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9180 var_nodearraylist4
= var3
;
9181 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9182 var_nodearraylist3
= var4
;
9183 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9184 var_nodearraylist2
= var5
;
9185 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9186 var_nodearraylist1
= var6
;
9187 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
9188 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
9189 CHECK_NEW_array__Array(var7
);
9190 var_listnode6
= var7
;
9191 var_pexprnode2
= var_nodearraylist1
;
9192 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9193 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9194 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9195 if(var_pexprnode2
== NULL
) {
9198 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9201 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9205 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25239);
9208 var_tidnode3
= var_nodearraylist4
;
9209 /* <var_tidnode3:nullable Object> isa nullable TId */
9210 cltype10
= type_nullable_parser_nodes__TId
.color
;
9211 idtype11
= type_nullable_parser_nodes__TId
.id
;
9212 if(var_tidnode3
== NULL
) {
9215 if(cltype10
>= var_tidnode3
->type
->table_size
) {
9218 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
9222 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25241);
9225 var_pexprsnode4
= var_nodearraylist5
;
9226 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9227 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
9228 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
9229 if(var_pexprsnode4
== NULL
) {
9232 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
9235 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
9239 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25243);
9242 var_listnode5
= var_nodearraylist6
;
9243 /* <var_listnode5:nullable Object> isa Array[Object] */
9244 cltype16
= type_array__Arraykernel__Object
.color
;
9245 idtype17
= type_array__Arraykernel__Object
.id
;
9246 if(var_listnode5
== NULL
) {
9249 if(cltype16
>= var_listnode5
->type
->table_size
) {
9252 var15
= var_listnode5
->type
->type_table
[cltype16
] == idtype17
;
9256 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25245);
9259 var18
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode6
, var_listnode5
) /* concat on <self:ReduceAction646>*/;
9260 var_listnode6
= var18
;
9261 var19
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9262 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var19
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode6
) /* init_acallexpr on <var19:ACallExpr>*/;
9263 CHECK_NEW_parser_nodes__ACallExpr(var19
);
9264 var_pexprnode1
= var19
;
9265 var_node_list
= var_pexprnode1
;
9266 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction646> */
9267 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
9268 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
9271 /* method parser#ReduceAction646#action for (self: Object, Parser) */
9272 void VIRTUAL_parser__ReduceAction646__action(val
* self
, val
* p0
) {
9273 parser__ReduceAction646__action(self
, p0
);
9276 /* method parser#ReduceAction647#action for (self: ReduceAction647, Parser) */
9277 void parser__ReduceAction647__action(val
* self
, val
* p0
) {
9278 val
* var_p
/* var p: Parser */;
9279 val
* var
/* : null */;
9280 val
* var_node_list
/* var node_list: nullable Object */;
9281 val
* var1
/* : nullable Object */;
9282 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9283 val
* var2
/* : nullable Object */;
9284 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9285 val
* var3
/* : nullable Object */;
9286 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9287 val
* var4
/* : Array[Object] */;
9288 val
* var_listnode6
/* var listnode6: Array[Object] */;
9289 val
* var5
/* : AImplicitSelfExpr */;
9290 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9291 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9292 short int var6
/* : Bool */;
9295 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9296 short int var7
/* : Bool */;
9299 val
* var_listnode5
/* var listnode5: nullable Object */;
9300 short int var10
/* : Bool */;
9303 val
* var13
/* : Array[Object] */;
9304 val
* var14
/* : ACallExpr */;
9305 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9306 long var15
/* : Int */;
9307 long var16
/* : Int */;
9310 var_node_list
= var
;
9311 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9312 var_nodearraylist3
= var1
;
9313 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9314 var_nodearraylist2
= var2
;
9315 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9316 var_nodearraylist1
= var3
;
9317 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
9318 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
9319 CHECK_NEW_array__Array(var4
);
9320 var_listnode6
= var4
;
9321 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9322 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
9323 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
9324 var_pexprnode2
= var5
;
9325 var_tidnode3
= var_nodearraylist1
;
9326 /* <var_tidnode3:nullable Object> isa nullable TId */
9327 cltype
= type_nullable_parser_nodes__TId
.color
;
9328 idtype
= type_nullable_parser_nodes__TId
.id
;
9329 if(var_tidnode3
== NULL
) {
9332 if(cltype
>= var_tidnode3
->type
->table_size
) {
9335 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9339 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25268);
9342 var_pexprsnode4
= var_nodearraylist2
;
9343 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9344 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
9345 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
9346 if(var_pexprsnode4
== NULL
) {
9349 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
9352 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
9356 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25270);
9359 var_listnode5
= var_nodearraylist3
;
9360 /* <var_listnode5:nullable Object> isa Array[Object] */
9361 cltype11
= type_array__Arraykernel__Object
.color
;
9362 idtype12
= type_array__Arraykernel__Object
.id
;
9363 if(var_listnode5
== NULL
) {
9366 if(cltype11
>= var_listnode5
->type
->table_size
) {
9369 var10
= var_listnode5
->type
->type_table
[cltype11
] == idtype12
;
9373 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25272);
9376 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode6
, var_listnode5
) /* concat on <self:ReduceAction647>*/;
9377 var_listnode6
= var13
;
9378 var14
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9379 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var14
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode6
) /* init_acallexpr on <var14:ACallExpr>*/;
9380 CHECK_NEW_parser_nodes__ACallExpr(var14
);
9381 var_pexprnode1
= var14
;
9382 var_node_list
= var_pexprnode1
;
9383 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction647> */
9384 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
9385 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
9388 /* method parser#ReduceAction647#action for (self: Object, Parser) */
9389 void VIRTUAL_parser__ReduceAction647__action(val
* self
, val
* p0
) {
9390 parser__ReduceAction647__action(self
, p0
);
9393 /* method parser#ReduceAction648#action for (self: ReduceAction648, Parser) */
9394 void parser__ReduceAction648__action(val
* self
, val
* p0
) {
9395 val
* var_p
/* var p: Parser */;
9396 val
* var
/* : null */;
9397 val
* var_node_list
/* var node_list: nullable Object */;
9398 val
* var1
/* : nullable Object */;
9399 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9400 val
* var2
/* : nullable Object */;
9401 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9402 val
* var3
/* : nullable Object */;
9403 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9404 val
* var4
/* : nullable Object */;
9405 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9406 val
* var5
/* : nullable Object */;
9407 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9408 val
* var6
/* : nullable Object */;
9409 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9410 val
* var7
/* : nullable Object */;
9411 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9412 val
* var8
/* : Array[Object] */;
9413 val
* var_listnode6
/* var listnode6: Array[Object] */;
9414 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9415 short int var9
/* : Bool */;
9418 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9419 short int var10
/* : Bool */;
9422 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9423 short int var13
/* : Bool */;
9426 val
* var_listnode5
/* var listnode5: nullable Object */;
9427 short int var16
/* : Bool */;
9430 val
* var19
/* : Array[Object] */;
9431 val
* var20
/* : ACallExpr */;
9432 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9433 long var21
/* : Int */;
9434 long var22
/* : Int */;
9437 var_node_list
= var
;
9438 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9439 var_nodearraylist7
= var1
;
9440 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9441 var_nodearraylist6
= var2
;
9442 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9443 var_nodearraylist5
= var3
;
9444 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9445 var_nodearraylist4
= var4
;
9446 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9447 var_nodearraylist3
= var5
;
9448 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9449 var_nodearraylist2
= var6
;
9450 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9451 var_nodearraylist1
= var7
;
9452 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
9453 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
9454 CHECK_NEW_array__Array(var8
);
9455 var_listnode6
= var8
;
9456 var_pexprnode2
= var_nodearraylist1
;
9457 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9458 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9459 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9460 if(var_pexprnode2
== NULL
) {
9463 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9466 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9470 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25298);
9473 var_tidnode3
= var_nodearraylist5
;
9474 /* <var_tidnode3:nullable Object> isa nullable TId */
9475 cltype11
= type_nullable_parser_nodes__TId
.color
;
9476 idtype12
= type_nullable_parser_nodes__TId
.id
;
9477 if(var_tidnode3
== NULL
) {
9480 if(cltype11
>= var_tidnode3
->type
->table_size
) {
9483 var10
= var_tidnode3
->type
->type_table
[cltype11
] == idtype12
;
9487 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25300);
9490 var_pexprsnode4
= var_nodearraylist6
;
9491 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9492 cltype14
= type_nullable_parser_nodes__AExprs
.color
;
9493 idtype15
= type_nullable_parser_nodes__AExprs
.id
;
9494 if(var_pexprsnode4
== NULL
) {
9497 if(cltype14
>= var_pexprsnode4
->type
->table_size
) {
9500 var13
= var_pexprsnode4
->type
->type_table
[cltype14
] == idtype15
;
9504 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25302);
9507 var_listnode5
= var_nodearraylist7
;
9508 /* <var_listnode5:nullable Object> isa Array[Object] */
9509 cltype17
= type_array__Arraykernel__Object
.color
;
9510 idtype18
= type_array__Arraykernel__Object
.id
;
9511 if(var_listnode5
== NULL
) {
9514 if(cltype17
>= var_listnode5
->type
->table_size
) {
9517 var16
= var_listnode5
->type
->type_table
[cltype17
] == idtype18
;
9521 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25304);
9524 var19
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode6
, var_listnode5
) /* concat on <self:ReduceAction648>*/;
9525 var_listnode6
= var19
;
9526 var20
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9527 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var20
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode6
) /* init_acallexpr on <var20:ACallExpr>*/;
9528 CHECK_NEW_parser_nodes__ACallExpr(var20
);
9529 var_pexprnode1
= var20
;
9530 var_node_list
= var_pexprnode1
;
9531 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction648> */
9532 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
9533 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
9536 /* method parser#ReduceAction648#action for (self: Object, Parser) */
9537 void VIRTUAL_parser__ReduceAction648__action(val
* self
, val
* p0
) {
9538 parser__ReduceAction648__action(self
, p0
);
9541 /* method parser#ReduceAction649#action for (self: ReduceAction649, Parser) */
9542 void parser__ReduceAction649__action(val
* self
, val
* p0
) {
9543 val
* var_p
/* var p: Parser */;
9544 val
* var
/* : null */;
9545 val
* var_node_list
/* var node_list: nullable Object */;
9546 val
* var1
/* : nullable Object */;
9547 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
9548 val
* var2
/* : nullable Object */;
9549 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9550 val
* var3
/* : nullable Object */;
9551 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9552 val
* var4
/* : nullable Object */;
9553 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9554 val
* var5
/* : nullable Object */;
9555 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9556 val
* var6
/* : nullable Object */;
9557 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9558 val
* var7
/* : nullable Object */;
9559 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9560 val
* var8
/* : nullable Object */;
9561 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9562 val
* var9
/* : Array[Object] */;
9563 val
* var_listnode6
/* var listnode6: Array[Object] */;
9564 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9565 short int var10
/* : Bool */;
9568 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9569 short int var11
/* : Bool */;
9572 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9573 short int var14
/* : Bool */;
9576 val
* var_listnode5
/* var listnode5: nullable Object */;
9577 short int var17
/* : Bool */;
9580 val
* var20
/* : Array[Object] */;
9581 val
* var21
/* : ACallExpr */;
9582 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9583 long var22
/* : Int */;
9584 long var23
/* : Int */;
9587 var_node_list
= var
;
9588 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9589 var_nodearraylist8
= var1
;
9590 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9591 var_nodearraylist7
= var2
;
9592 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9593 var_nodearraylist6
= var3
;
9594 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9595 var_nodearraylist5
= var4
;
9596 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9597 var_nodearraylist4
= var5
;
9598 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9599 var_nodearraylist3
= var6
;
9600 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9601 var_nodearraylist2
= var7
;
9602 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9603 var_nodearraylist1
= var8
;
9604 var9
= NEW_array__Array(&type_array__Arraykernel__Object
);
9605 ((void (*)(val
*))(var9
->class->vft
[COLOR_array__Array__init
]))(var9
) /* init on <var9:Array[Object]>*/;
9606 CHECK_NEW_array__Array(var9
);
9607 var_listnode6
= var9
;
9608 var_pexprnode2
= var_nodearraylist1
;
9609 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9610 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9611 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9612 if(var_pexprnode2
== NULL
) {
9615 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9618 var10
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9622 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25331);
9625 var_tidnode3
= var_nodearraylist6
;
9626 /* <var_tidnode3:nullable Object> isa nullable TId */
9627 cltype12
= type_nullable_parser_nodes__TId
.color
;
9628 idtype13
= type_nullable_parser_nodes__TId
.id
;
9629 if(var_tidnode3
== NULL
) {
9632 if(cltype12
>= var_tidnode3
->type
->table_size
) {
9635 var11
= var_tidnode3
->type
->type_table
[cltype12
] == idtype13
;
9639 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25333);
9642 var_pexprsnode4
= var_nodearraylist7
;
9643 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9644 cltype15
= type_nullable_parser_nodes__AExprs
.color
;
9645 idtype16
= type_nullable_parser_nodes__AExprs
.id
;
9646 if(var_pexprsnode4
== NULL
) {
9649 if(cltype15
>= var_pexprsnode4
->type
->table_size
) {
9652 var14
= var_pexprsnode4
->type
->type_table
[cltype15
] == idtype16
;
9656 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25335);
9659 var_listnode5
= var_nodearraylist8
;
9660 /* <var_listnode5:nullable Object> isa Array[Object] */
9661 cltype18
= type_array__Arraykernel__Object
.color
;
9662 idtype19
= type_array__Arraykernel__Object
.id
;
9663 if(var_listnode5
== NULL
) {
9666 if(cltype18
>= var_listnode5
->type
->table_size
) {
9669 var17
= var_listnode5
->type
->type_table
[cltype18
] == idtype19
;
9673 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25337);
9676 var20
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode6
, var_listnode5
) /* concat on <self:ReduceAction649>*/;
9677 var_listnode6
= var20
;
9678 var21
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9679 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var21
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode6
) /* init_acallexpr on <var21:ACallExpr>*/;
9680 CHECK_NEW_parser_nodes__ACallExpr(var21
);
9681 var_pexprnode1
= var21
;
9682 var_node_list
= var_pexprnode1
;
9683 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction649> */
9684 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
9685 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
9688 /* method parser#ReduceAction649#action for (self: Object, Parser) */
9689 void VIRTUAL_parser__ReduceAction649__action(val
* self
, val
* p0
) {
9690 parser__ReduceAction649__action(self
, p0
);
9693 /* method parser#ReduceAction651#action for (self: ReduceAction651, Parser) */
9694 void parser__ReduceAction651__action(val
* self
, val
* p0
) {
9695 val
* var_p
/* var p: Parser */;
9696 val
* var
/* : null */;
9697 val
* var_node_list
/* var node_list: nullable Object */;
9698 val
* var1
/* : nullable Object */;
9699 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9700 val
* var2
/* : nullable Object */;
9701 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9702 val
* var3
/* : nullable Object */;
9703 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9704 val
* var4
/* : nullable Object */;
9705 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9706 val
* var5
/* : Array[Object] */;
9707 val
* var_listnode6
/* var listnode6: Array[Object] */;
9708 val
* var6
/* : AImplicitSelfExpr */;
9709 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9710 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9711 short int var7
/* : Bool */;
9714 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9715 short int var8
/* : Bool */;
9718 val
* var_listnode5
/* var listnode5: nullable Object */;
9719 short int var11
/* : Bool */;
9722 val
* var14
/* : Array[Object] */;
9723 val
* var15
/* : ACallExpr */;
9724 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9725 long var16
/* : Int */;
9726 long var17
/* : Int */;
9729 var_node_list
= var
;
9730 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9731 var_nodearraylist4
= var1
;
9732 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9733 var_nodearraylist3
= var2
;
9734 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9735 var_nodearraylist2
= var3
;
9736 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9737 var_nodearraylist1
= var4
;
9738 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
9739 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
9740 CHECK_NEW_array__Array(var5
);
9741 var_listnode6
= var5
;
9742 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9743 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
9744 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
9745 var_pexprnode2
= var6
;
9746 var_tidnode3
= var_nodearraylist2
;
9747 /* <var_tidnode3:nullable Object> isa nullable TId */
9748 cltype
= type_nullable_parser_nodes__TId
.color
;
9749 idtype
= type_nullable_parser_nodes__TId
.id
;
9750 if(var_tidnode3
== NULL
) {
9753 if(cltype
>= var_tidnode3
->type
->table_size
) {
9756 var7
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9760 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25361);
9763 var_pexprsnode4
= var_nodearraylist3
;
9764 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9765 cltype9
= type_nullable_parser_nodes__AExprs
.color
;
9766 idtype10
= type_nullable_parser_nodes__AExprs
.id
;
9767 if(var_pexprsnode4
== NULL
) {
9770 if(cltype9
>= var_pexprsnode4
->type
->table_size
) {
9773 var8
= var_pexprsnode4
->type
->type_table
[cltype9
] == idtype10
;
9777 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25363);
9780 var_listnode5
= var_nodearraylist4
;
9781 /* <var_listnode5:nullable Object> isa Array[Object] */
9782 cltype12
= type_array__Arraykernel__Object
.color
;
9783 idtype13
= type_array__Arraykernel__Object
.id
;
9784 if(var_listnode5
== NULL
) {
9787 if(cltype12
>= var_listnode5
->type
->table_size
) {
9790 var11
= var_listnode5
->type
->type_table
[cltype12
] == idtype13
;
9794 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25365);
9797 var14
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode6
, var_listnode5
) /* concat on <self:ReduceAction651>*/;
9798 var_listnode6
= var14
;
9799 var15
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9800 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var15
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode6
) /* init_acallexpr on <var15:ACallExpr>*/;
9801 CHECK_NEW_parser_nodes__ACallExpr(var15
);
9802 var_pexprnode1
= var15
;
9803 var_node_list
= var_pexprnode1
;
9804 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction651> */
9805 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
9806 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
9809 /* method parser#ReduceAction651#action for (self: Object, Parser) */
9810 void VIRTUAL_parser__ReduceAction651__action(val
* self
, val
* p0
) {
9811 parser__ReduceAction651__action(self
, p0
);
9814 /* method parser#ReduceAction652#action for (self: ReduceAction652, Parser) */
9815 void parser__ReduceAction652__action(val
* self
, val
* p0
) {
9816 val
* var_p
/* var p: Parser */;
9817 val
* var
/* : null */;
9818 val
* var_node_list
/* var node_list: nullable Object */;
9819 val
* var1
/* : nullable Object */;
9820 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9821 val
* var2
/* : nullable Object */;
9822 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9823 val
* var3
/* : nullable Object */;
9824 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9825 val
* var4
/* : nullable Object */;
9826 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9827 val
* var5
/* : nullable Object */;
9828 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9829 val
* var6
/* : Array[Object] */;
9830 val
* var_listnode6
/* var listnode6: Array[Object] */;
9831 val
* var7
/* : AImplicitSelfExpr */;
9832 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9833 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9834 short int var8
/* : Bool */;
9837 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9838 short int var9
/* : Bool */;
9841 val
* var_listnode5
/* var listnode5: nullable Object */;
9842 short int var12
/* : Bool */;
9845 val
* var15
/* : Array[Object] */;
9846 val
* var16
/* : ACallExpr */;
9847 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9848 long var17
/* : Int */;
9849 long var18
/* : Int */;
9852 var_node_list
= var
;
9853 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9854 var_nodearraylist5
= var1
;
9855 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9856 var_nodearraylist4
= var2
;
9857 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9858 var_nodearraylist3
= var3
;
9859 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9860 var_nodearraylist2
= var4
;
9861 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9862 var_nodearraylist1
= var5
;
9863 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
9864 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
9865 CHECK_NEW_array__Array(var6
);
9866 var_listnode6
= var6
;
9867 var7
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9868 ((void (*)(val
*))(var7
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var7
) /* init_aimplicitselfexpr on <var7:AImplicitSelfExpr>*/;
9869 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var7
);
9870 var_pexprnode2
= var7
;
9871 var_tidnode3
= var_nodearraylist3
;
9872 /* <var_tidnode3:nullable Object> isa nullable TId */
9873 cltype
= type_nullable_parser_nodes__TId
.color
;
9874 idtype
= type_nullable_parser_nodes__TId
.id
;
9875 if(var_tidnode3
== NULL
) {
9878 if(cltype
>= var_tidnode3
->type
->table_size
) {
9881 var8
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9885 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25390);
9888 var_pexprsnode4
= var_nodearraylist4
;
9889 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9890 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
9891 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
9892 if(var_pexprsnode4
== NULL
) {
9895 if(cltype10
>= var_pexprsnode4
->type
->table_size
) {
9898 var9
= var_pexprsnode4
->type
->type_table
[cltype10
] == idtype11
;
9902 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25392);
9905 var_listnode5
= var_nodearraylist5
;
9906 /* <var_listnode5:nullable Object> isa Array[Object] */
9907 cltype13
= type_array__Arraykernel__Object
.color
;
9908 idtype14
= type_array__Arraykernel__Object
.id
;
9909 if(var_listnode5
== NULL
) {
9912 if(cltype13
>= var_listnode5
->type
->table_size
) {
9915 var12
= var_listnode5
->type
->type_table
[cltype13
] == idtype14
;
9919 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25394);
9922 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode6
, var_listnode5
) /* concat on <self:ReduceAction652>*/;
9923 var_listnode6
= var15
;
9924 var16
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9925 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var16
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_listnode6
) /* init_acallexpr on <var16:ACallExpr>*/;
9926 CHECK_NEW_parser_nodes__ACallExpr(var16
);
9927 var_pexprnode1
= var16
;
9928 var_node_list
= var_pexprnode1
;
9929 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction652> */
9930 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
9931 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
9934 /* method parser#ReduceAction652#action for (self: Object, Parser) */
9935 void VIRTUAL_parser__ReduceAction652__action(val
* self
, val
* p0
) {
9936 parser__ReduceAction652__action(self
, p0
);