1 #include "parser.sep.0.h"
2 /* method parser#ReduceAction516#action for (self: Object, Parser) */
3 void VIRTUAL_parser__ReduceAction516__action(val
* self
, val
* p0
) {
4 parser__ReduceAction516__action(self
, p0
);
7 /* method parser#ReduceAction517#action for (self: ReduceAction517, Parser) */
8 void parser__ReduceAction517__action(val
* self
, val
* p0
) {
9 val
* var_p
/* var p: Parser */;
10 val
* var
/* : null */;
11 val
* var_node_list
/* var node_list: nullable Object */;
12 val
* var1
/* : nullable Object */;
13 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
14 val
* var_tkwreadablenode3
/* var tkwreadablenode3: nullable Object */;
15 short int var2
/* : Bool */;
18 val
* var3
/* : AReadAble */;
19 val
* var4
/* : null */;
20 val
* var_pablenode1
/* var pablenode1: nullable AReadAble */;
21 long var5
/* : Int */;
22 long var6
/* : Int */;
26 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
27 var_nodearraylist1
= var1
;
28 var_tkwreadablenode3
= var_nodearraylist1
;
29 /* <var_tkwreadablenode3:nullable Object> isa nullable TKwreadable */
30 cltype
= type_nullable_parser_nodes__TKwreadable
.color
;
31 idtype
= type_nullable_parser_nodes__TKwreadable
.id
;
32 if(var_tkwreadablenode3
== NULL
) {
35 if(cltype
>= var_tkwreadablenode3
->type
->table_size
) {
38 var2
= var_tkwreadablenode3
->type
->type_table
[cltype
] == idtype
;
42 fprintf(stderr
, "Runtime error: %s", "Assert failed");
43 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22522);
46 var3
= NEW_parser_nodes__AReadAble(&type_parser_nodes__AReadAble
);
48 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReadAble__init_areadable
]))(var3
, var4
, var_tkwreadablenode3
) /* init_areadable on <var3:AReadAble>*/;
49 var_pablenode1
= var3
;
50 var_node_list
= var_pablenode1
;
51 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction517> */
52 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
53 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
56 /* method parser#ReduceAction517#action for (self: Object, Parser) */
57 void VIRTUAL_parser__ReduceAction517__action(val
* self
, val
* p0
) {
58 parser__ReduceAction517__action(self
, p0
);
61 /* method parser#ReduceAction518#action for (self: ReduceAction518, Parser) */
62 void parser__ReduceAction518__action(val
* self
, val
* p0
) {
63 val
* var_p
/* var p: Parser */;
64 val
* var
/* : null */;
65 val
* var_node_list
/* var node_list: nullable Object */;
66 val
* var1
/* : nullable Object */;
67 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
68 val
* var2
/* : nullable Object */;
69 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
70 val
* var_tkwredefnode2
/* var tkwredefnode2: nullable Object */;
71 short int var3
/* : Bool */;
74 val
* var_tkwreadablenode3
/* var tkwreadablenode3: nullable Object */;
75 short int var4
/* : Bool */;
78 val
* var7
/* : AReadAble */;
79 val
* var_pablenode1
/* var pablenode1: nullable AReadAble */;
80 long var8
/* : Int */;
81 long var9
/* : Int */;
85 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
86 var_nodearraylist2
= var1
;
87 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
88 var_nodearraylist1
= var2
;
89 var_tkwredefnode2
= var_nodearraylist1
;
90 /* <var_tkwredefnode2:nullable Object> isa nullable TKwredef */
91 cltype
= type_nullable_parser_nodes__TKwredef
.color
;
92 idtype
= type_nullable_parser_nodes__TKwredef
.id
;
93 if(var_tkwredefnode2
== NULL
) {
96 if(cltype
>= var_tkwredefnode2
->type
->table_size
) {
99 var3
= var_tkwredefnode2
->type
->type_table
[cltype
] == idtype
;
103 fprintf(stderr
, "Runtime error: %s", "Assert failed");
104 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22539);
107 var_tkwreadablenode3
= var_nodearraylist2
;
108 /* <var_tkwreadablenode3:nullable Object> isa nullable TKwreadable */
109 cltype5
= type_nullable_parser_nodes__TKwreadable
.color
;
110 idtype6
= type_nullable_parser_nodes__TKwreadable
.id
;
111 if(var_tkwreadablenode3
== NULL
) {
114 if(cltype5
>= var_tkwreadablenode3
->type
->table_size
) {
117 var4
= var_tkwreadablenode3
->type
->type_table
[cltype5
] == idtype6
;
121 fprintf(stderr
, "Runtime error: %s", "Assert failed");
122 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22541);
125 var7
= NEW_parser_nodes__AReadAble(&type_parser_nodes__AReadAble
);
126 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AReadAble__init_areadable
]))(var7
, var_tkwredefnode2
, var_tkwreadablenode3
) /* init_areadable on <var7:AReadAble>*/;
127 var_pablenode1
= var7
;
128 var_node_list
= var_pablenode1
;
129 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction518> */
130 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
131 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
134 /* method parser#ReduceAction518#action for (self: Object, Parser) */
135 void VIRTUAL_parser__ReduceAction518__action(val
* self
, val
* p0
) {
136 parser__ReduceAction518__action(self
, p0
);
139 /* method parser#ReduceAction519#action for (self: ReduceAction519, Parser) */
140 void parser__ReduceAction519__action(val
* self
, val
* p0
) {
141 val
* var_p
/* var p: Parser */;
142 val
* var
/* : null */;
143 val
* var_node_list
/* var node_list: nullable Object */;
144 val
* var1
/* : nullable Object */;
145 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
146 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
147 short int var2
/* : Bool */;
150 val
* var3
/* : AWriteAble */;
151 val
* var4
/* : null */;
152 val
* var5
/* : null */;
153 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
154 long var6
/* : Int */;
155 long var7
/* : Int */;
159 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
160 var_nodearraylist1
= var1
;
161 var_tkwwritablenode4
= var_nodearraylist1
;
162 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
163 cltype
= type_nullable_parser_nodes__TKwwritable
.color
;
164 idtype
= type_nullable_parser_nodes__TKwwritable
.id
;
165 if(var_tkwwritablenode4
== NULL
) {
168 if(cltype
>= var_tkwwritablenode4
->type
->table_size
) {
171 var2
= var_tkwwritablenode4
->type
->type_table
[cltype
] == idtype
;
175 fprintf(stderr
, "Runtime error: %s", "Assert failed");
176 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22557);
179 var3
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
182 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var3
, var4
, var5
, var_tkwwritablenode4
) /* init_awriteable on <var3:AWriteAble>*/;
183 var_pablenode1
= var3
;
184 var_node_list
= var_pablenode1
;
185 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction519> */
186 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
187 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
190 /* method parser#ReduceAction519#action for (self: Object, Parser) */
191 void VIRTUAL_parser__ReduceAction519__action(val
* self
, val
* p0
) {
192 parser__ReduceAction519__action(self
, p0
);
195 /* method parser#ReduceAction520#action for (self: ReduceAction520, Parser) */
196 void parser__ReduceAction520__action(val
* self
, val
* p0
) {
197 val
* var_p
/* var p: Parser */;
198 val
* var
/* : null */;
199 val
* var_node_list
/* var node_list: nullable Object */;
200 val
* var1
/* : nullable Object */;
201 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
202 val
* var2
/* : nullable Object */;
203 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
204 val
* var_tkwredefnode2
/* var tkwredefnode2: nullable Object */;
205 short int var3
/* : Bool */;
208 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
209 short int var4
/* : Bool */;
212 val
* var7
/* : AWriteAble */;
213 val
* var8
/* : null */;
214 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
215 long var9
/* : Int */;
216 long var10
/* : Int */;
220 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
221 var_nodearraylist2
= var1
;
222 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
223 var_nodearraylist1
= var2
;
224 var_tkwredefnode2
= var_nodearraylist1
;
225 /* <var_tkwredefnode2:nullable Object> isa nullable TKwredef */
226 cltype
= type_nullable_parser_nodes__TKwredef
.color
;
227 idtype
= type_nullable_parser_nodes__TKwredef
.id
;
228 if(var_tkwredefnode2
== NULL
) {
231 if(cltype
>= var_tkwredefnode2
->type
->table_size
) {
234 var3
= var_tkwredefnode2
->type
->type_table
[cltype
] == idtype
;
238 fprintf(stderr
, "Runtime error: %s", "Assert failed");
239 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22575);
242 var_tkwwritablenode4
= var_nodearraylist2
;
243 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
244 cltype5
= type_nullable_parser_nodes__TKwwritable
.color
;
245 idtype6
= type_nullable_parser_nodes__TKwwritable
.id
;
246 if(var_tkwwritablenode4
== NULL
) {
249 if(cltype5
>= var_tkwwritablenode4
->type
->table_size
) {
252 var4
= var_tkwwritablenode4
->type
->type_table
[cltype5
] == idtype6
;
256 fprintf(stderr
, "Runtime error: %s", "Assert failed");
257 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22577);
260 var7
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
262 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var7
, var_tkwredefnode2
, var8
, var_tkwwritablenode4
) /* init_awriteable on <var7:AWriteAble>*/;
263 var_pablenode1
= var7
;
264 var_node_list
= var_pablenode1
;
265 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction520> */
266 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
267 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
270 /* method parser#ReduceAction520#action for (self: Object, Parser) */
271 void VIRTUAL_parser__ReduceAction520__action(val
* self
, val
* p0
) {
272 parser__ReduceAction520__action(self
, p0
);
275 /* method parser#ReduceAction521#action for (self: ReduceAction521, Parser) */
276 void parser__ReduceAction521__action(val
* self
, val
* p0
) {
277 val
* var_p
/* var p: Parser */;
278 val
* var
/* : null */;
279 val
* var_node_list
/* var node_list: nullable Object */;
280 val
* var1
/* : nullable Object */;
281 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
282 val
* var2
/* : nullable Object */;
283 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
284 val
* var_pvisibilitynode3
/* var pvisibilitynode3: nullable Object */;
285 short int var3
/* : Bool */;
288 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
289 short int var4
/* : Bool */;
292 val
* var7
/* : AWriteAble */;
293 val
* var8
/* : null */;
294 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
295 long var9
/* : Int */;
296 long var10
/* : Int */;
300 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
301 var_nodearraylist2
= var1
;
302 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
303 var_nodearraylist1
= var2
;
304 var_pvisibilitynode3
= var_nodearraylist1
;
305 /* <var_pvisibilitynode3:nullable Object> isa nullable AVisibility */
306 cltype
= type_nullable_parser_nodes__AVisibility
.color
;
307 idtype
= type_nullable_parser_nodes__AVisibility
.id
;
308 if(var_pvisibilitynode3
== NULL
) {
311 if(cltype
>= var_pvisibilitynode3
->type
->table_size
) {
314 var3
= var_pvisibilitynode3
->type
->type_table
[cltype
] == idtype
;
318 fprintf(stderr
, "Runtime error: %s", "Assert failed");
319 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22595);
322 var_tkwwritablenode4
= var_nodearraylist2
;
323 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
324 cltype5
= type_nullable_parser_nodes__TKwwritable
.color
;
325 idtype6
= type_nullable_parser_nodes__TKwwritable
.id
;
326 if(var_tkwwritablenode4
== NULL
) {
329 if(cltype5
>= var_tkwwritablenode4
->type
->table_size
) {
332 var4
= var_tkwwritablenode4
->type
->type_table
[cltype5
] == idtype6
;
336 fprintf(stderr
, "Runtime error: %s", "Assert failed");
337 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22597);
340 var7
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
342 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var7
, var8
, var_pvisibilitynode3
, var_tkwwritablenode4
) /* init_awriteable on <var7:AWriteAble>*/;
343 var_pablenode1
= var7
;
344 var_node_list
= var_pablenode1
;
345 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction521> */
346 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
347 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
350 /* method parser#ReduceAction521#action for (self: Object, Parser) */
351 void VIRTUAL_parser__ReduceAction521__action(val
* self
, val
* p0
) {
352 parser__ReduceAction521__action(self
, p0
);
355 /* method parser#ReduceAction522#action for (self: ReduceAction522, Parser) */
356 void parser__ReduceAction522__action(val
* self
, val
* p0
) {
357 val
* var_p
/* var p: Parser */;
358 val
* var
/* : null */;
359 val
* var_node_list
/* var node_list: nullable Object */;
360 val
* var1
/* : nullable Object */;
361 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
362 val
* var2
/* : nullable Object */;
363 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
364 val
* var3
/* : nullable Object */;
365 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
366 val
* var_tkwredefnode2
/* var tkwredefnode2: nullable Object */;
367 short int var4
/* : Bool */;
370 val
* var_pvisibilitynode3
/* var pvisibilitynode3: nullable Object */;
371 short int var5
/* : Bool */;
374 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
375 short int var8
/* : Bool */;
378 val
* var11
/* : AWriteAble */;
379 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
380 long var12
/* : Int */;
381 long var13
/* : Int */;
385 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
386 var_nodearraylist3
= var1
;
387 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
388 var_nodearraylist2
= var2
;
389 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
390 var_nodearraylist1
= var3
;
391 var_tkwredefnode2
= var_nodearraylist1
;
392 /* <var_tkwredefnode2:nullable Object> isa nullable TKwredef */
393 cltype
= type_nullable_parser_nodes__TKwredef
.color
;
394 idtype
= type_nullable_parser_nodes__TKwredef
.id
;
395 if(var_tkwredefnode2
== NULL
) {
398 if(cltype
>= var_tkwredefnode2
->type
->table_size
) {
401 var4
= var_tkwredefnode2
->type
->type_table
[cltype
] == idtype
;
405 fprintf(stderr
, "Runtime error: %s", "Assert failed");
406 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22616);
409 var_pvisibilitynode3
= var_nodearraylist2
;
410 /* <var_pvisibilitynode3:nullable Object> isa nullable AVisibility */
411 cltype6
= type_nullable_parser_nodes__AVisibility
.color
;
412 idtype7
= type_nullable_parser_nodes__AVisibility
.id
;
413 if(var_pvisibilitynode3
== NULL
) {
416 if(cltype6
>= var_pvisibilitynode3
->type
->table_size
) {
419 var5
= var_pvisibilitynode3
->type
->type_table
[cltype6
] == idtype7
;
423 fprintf(stderr
, "Runtime error: %s", "Assert failed");
424 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22618);
427 var_tkwwritablenode4
= var_nodearraylist3
;
428 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
429 cltype9
= type_nullable_parser_nodes__TKwwritable
.color
;
430 idtype10
= type_nullable_parser_nodes__TKwwritable
.id
;
431 if(var_tkwwritablenode4
== NULL
) {
434 if(cltype9
>= var_tkwwritablenode4
->type
->table_size
) {
437 var8
= var_tkwwritablenode4
->type
->type_table
[cltype9
] == idtype10
;
441 fprintf(stderr
, "Runtime error: %s", "Assert failed");
442 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22620);
445 var11
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
446 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var11
, var_tkwredefnode2
, var_pvisibilitynode3
, var_tkwwritablenode4
) /* init_awriteable on <var11:AWriteAble>*/;
447 var_pablenode1
= var11
;
448 var_node_list
= var_pablenode1
;
449 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction522> */
450 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
451 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
454 /* method parser#ReduceAction522#action for (self: Object, Parser) */
455 void VIRTUAL_parser__ReduceAction522__action(val
* self
, val
* p0
) {
456 parser__ReduceAction522__action(self
, p0
);
459 /* method parser#ReduceAction523#action for (self: ReduceAction523, Parser) */
460 void parser__ReduceAction523__action(val
* self
, val
* p0
) {
461 val
* var_p
/* var p: Parser */;
462 val
* var
/* : null */;
463 val
* var_node_list
/* var node_list: nullable Object */;
464 val
* var1
/* : APublicVisibility */;
465 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable APublicVisibility */;
466 long var2
/* : Int */;
467 long var3
/* : Int */;
471 var1
= NEW_parser_nodes__APublicVisibility(&type_parser_nodes__APublicVisibility
);
472 ((void (*)(val
*))(var1
->class->vft
[COLOR_parser_prod__APublicVisibility__init_apublicvisibility
]))(var1
) /* init_apublicvisibility on <var1:APublicVisibility>*/;
473 var_pvisibilitynode1
= var1
;
474 var_node_list
= var_pvisibilitynode1
;
475 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction523> */
476 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
477 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
480 /* method parser#ReduceAction523#action for (self: Object, Parser) */
481 void VIRTUAL_parser__ReduceAction523__action(val
* self
, val
* p0
) {
482 parser__ReduceAction523__action(self
, p0
);
485 /* method parser#ReduceAction524#action for (self: ReduceAction524, Parser) */
486 void parser__ReduceAction524__action(val
* self
, val
* p0
) {
487 val
* var_p
/* var p: Parser */;
488 val
* var
/* : null */;
489 val
* var_node_list
/* var node_list: nullable Object */;
490 val
* var1
/* : nullable Object */;
491 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
492 val
* var2
/* : nullable Object */;
493 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
494 val
* var_tkwprivatenode2
/* var tkwprivatenode2: nullable Object */;
495 short int var3
/* : Bool */;
498 val
* var4
/* : APrivateVisibility */;
499 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable APrivateVisibility */;
500 long var5
/* : Int */;
501 long var6
/* : Int */;
505 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
506 var_nodearraylist2
= var1
;
507 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
508 var_nodearraylist1
= var2
;
509 var_tkwprivatenode2
= var_nodearraylist1
;
510 /* <var_tkwprivatenode2:nullable Object> isa nullable TKwprivate */
511 cltype
= type_nullable_parser_nodes__TKwprivate
.color
;
512 idtype
= type_nullable_parser_nodes__TKwprivate
.id
;
513 if(var_tkwprivatenode2
== NULL
) {
516 if(cltype
>= var_tkwprivatenode2
->type
->table_size
) {
519 var3
= var_tkwprivatenode2
->type
->type_table
[cltype
] == idtype
;
523 fprintf(stderr
, "Runtime error: %s", "Assert failed");
524 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22648);
527 var4
= NEW_parser_nodes__APrivateVisibility(&type_parser_nodes__APrivateVisibility
);
528 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__APrivateVisibility__init_aprivatevisibility
]))(var4
, var_tkwprivatenode2
) /* init_aprivatevisibility on <var4:APrivateVisibility>*/;
529 var_pvisibilitynode1
= var4
;
530 var_node_list
= var_pvisibilitynode1
;
531 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction524> */
532 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
533 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
536 /* method parser#ReduceAction524#action for (self: Object, Parser) */
537 void VIRTUAL_parser__ReduceAction524__action(val
* self
, val
* p0
) {
538 parser__ReduceAction524__action(self
, p0
);
541 /* method parser#ReduceAction525#action for (self: ReduceAction525, Parser) */
542 void parser__ReduceAction525__action(val
* self
, val
* p0
) {
543 val
* var_p
/* var p: Parser */;
544 val
* var
/* : null */;
545 val
* var_node_list
/* var node_list: nullable Object */;
546 val
* var1
/* : nullable Object */;
547 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
548 val
* var2
/* : nullable Object */;
549 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
550 val
* var_tkwprotectednode2
/* var tkwprotectednode2: nullable Object */;
551 short int var3
/* : Bool */;
554 val
* var4
/* : AProtectedVisibility */;
555 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable AProtectedVisibility */;
556 long var5
/* : Int */;
557 long var6
/* : Int */;
561 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
562 var_nodearraylist2
= var1
;
563 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
564 var_nodearraylist1
= var2
;
565 var_tkwprotectednode2
= var_nodearraylist1
;
566 /* <var_tkwprotectednode2:nullable Object> isa nullable TKwprotected */
567 cltype
= type_nullable_parser_nodes__TKwprotected
.color
;
568 idtype
= type_nullable_parser_nodes__TKwprotected
.id
;
569 if(var_tkwprotectednode2
== NULL
) {
572 if(cltype
>= var_tkwprotectednode2
->type
->table_size
) {
575 var3
= var_tkwprotectednode2
->type
->type_table
[cltype
] == idtype
;
579 fprintf(stderr
, "Runtime error: %s", "Assert failed");
580 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22664);
583 var4
= NEW_parser_nodes__AProtectedVisibility(&type_parser_nodes__AProtectedVisibility
);
584 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AProtectedVisibility__init_aprotectedvisibility
]))(var4
, var_tkwprotectednode2
) /* init_aprotectedvisibility on <var4:AProtectedVisibility>*/;
585 var_pvisibilitynode1
= var4
;
586 var_node_list
= var_pvisibilitynode1
;
587 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction525> */
588 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
589 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
592 /* method parser#ReduceAction525#action for (self: Object, Parser) */
593 void VIRTUAL_parser__ReduceAction525__action(val
* self
, val
* p0
) {
594 parser__ReduceAction525__action(self
, p0
);
597 /* method parser#ReduceAction526#action for (self: ReduceAction526, Parser) */
598 void parser__ReduceAction526__action(val
* self
, val
* p0
) {
599 val
* var_p
/* var p: Parser */;
600 val
* var
/* : null */;
601 val
* var_node_list
/* var node_list: nullable Object */;
602 val
* var1
/* : nullable Object */;
603 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
604 val
* var2
/* : nullable Object */;
605 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
606 val
* var_tkwintrudenode2
/* var tkwintrudenode2: nullable Object */;
607 short int var3
/* : Bool */;
610 val
* var4
/* : AIntrudeVisibility */;
611 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable AIntrudeVisibility */;
612 long var5
/* : Int */;
613 long var6
/* : Int */;
617 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
618 var_nodearraylist2
= var1
;
619 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
620 var_nodearraylist1
= var2
;
621 var_tkwintrudenode2
= var_nodearraylist1
;
622 /* <var_tkwintrudenode2:nullable Object> isa nullable TKwintrude */
623 cltype
= type_nullable_parser_nodes__TKwintrude
.color
;
624 idtype
= type_nullable_parser_nodes__TKwintrude
.id
;
625 if(var_tkwintrudenode2
== NULL
) {
628 if(cltype
>= var_tkwintrudenode2
->type
->table_size
) {
631 var3
= var_tkwintrudenode2
->type
->type_table
[cltype
] == idtype
;
635 fprintf(stderr
, "Runtime error: %s", "Assert failed");
636 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22680);
639 var4
= NEW_parser_nodes__AIntrudeVisibility(&type_parser_nodes__AIntrudeVisibility
);
640 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AIntrudeVisibility__init_aintrudevisibility
]))(var4
, var_tkwintrudenode2
) /* init_aintrudevisibility on <var4:AIntrudeVisibility>*/;
641 var_pvisibilitynode1
= var4
;
642 var_node_list
= var_pvisibilitynode1
;
643 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction526> */
644 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
645 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
648 /* method parser#ReduceAction526#action for (self: Object, Parser) */
649 void VIRTUAL_parser__ReduceAction526__action(val
* self
, val
* p0
) {
650 parser__ReduceAction526__action(self
, p0
);
653 /* method parser#ReduceAction527#action for (self: ReduceAction527, Parser) */
654 void parser__ReduceAction527__action(val
* self
, val
* p0
) {
655 val
* var_p
/* var p: Parser */;
656 val
* var
/* : null */;
657 val
* var_node_list
/* var node_list: nullable Object */;
658 val
* var1
/* : nullable Object */;
659 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
660 val
* var_tidnode2
/* var tidnode2: nullable Object */;
661 short int var2
/* : Bool */;
664 val
* var3
/* : AIdMethid */;
665 val
* var_pmethidnode1
/* var pmethidnode1: nullable AIdMethid */;
666 long var4
/* : Int */;
667 long var5
/* : Int */;
671 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
672 var_nodearraylist1
= var1
;
673 var_tidnode2
= var_nodearraylist1
;
674 /* <var_tidnode2:nullable Object> isa nullable TId */
675 cltype
= type_nullable_parser_nodes__TId
.color
;
676 idtype
= type_nullable_parser_nodes__TId
.id
;
677 if(var_tidnode2
== NULL
) {
680 if(cltype
>= var_tidnode2
->type
->table_size
) {
683 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
687 fprintf(stderr
, "Runtime error: %s", "Assert failed");
688 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22695);
691 var3
= NEW_parser_nodes__AIdMethid(&type_parser_nodes__AIdMethid
);
692 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AIdMethid__init_aidmethid
]))(var3
, var_tidnode2
) /* init_aidmethid on <var3:AIdMethid>*/;
693 var_pmethidnode1
= var3
;
694 var_node_list
= var_pmethidnode1
;
695 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction527> */
696 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
697 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
700 /* method parser#ReduceAction527#action for (self: Object, Parser) */
701 void VIRTUAL_parser__ReduceAction527__action(val
* self
, val
* p0
) {
702 parser__ReduceAction527__action(self
, p0
);
705 /* method parser#ReduceAction528#action for (self: ReduceAction528, Parser) */
706 void parser__ReduceAction528__action(val
* self
, val
* p0
) {
707 val
* var_p
/* var p: Parser */;
708 val
* var
/* : null */;
709 val
* var_node_list
/* var node_list: nullable Object */;
710 val
* var1
/* : nullable Object */;
711 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
712 val
* var_tplusnode2
/* var tplusnode2: nullable Object */;
713 short int var2
/* : Bool */;
716 val
* var3
/* : APlusMethid */;
717 val
* var_pmethidnode1
/* var pmethidnode1: nullable APlusMethid */;
718 long var4
/* : Int */;
719 long var5
/* : Int */;
723 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
724 var_nodearraylist1
= var1
;
725 var_tplusnode2
= var_nodearraylist1
;
726 /* <var_tplusnode2:nullable Object> isa nullable TPlus */
727 cltype
= type_nullable_parser_nodes__TPlus
.color
;
728 idtype
= type_nullable_parser_nodes__TPlus
.id
;
729 if(var_tplusnode2
== NULL
) {
732 if(cltype
>= var_tplusnode2
->type
->table_size
) {
735 var2
= var_tplusnode2
->type
->type_table
[cltype
] == idtype
;
739 fprintf(stderr
, "Runtime error: %s", "Assert failed");
740 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22710);
743 var3
= NEW_parser_nodes__APlusMethid(&type_parser_nodes__APlusMethid
);
744 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APlusMethid__init_aplusmethid
]))(var3
, var_tplusnode2
) /* init_aplusmethid on <var3:APlusMethid>*/;
745 var_pmethidnode1
= var3
;
746 var_node_list
= var_pmethidnode1
;
747 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction528> */
748 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
749 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
752 /* method parser#ReduceAction528#action for (self: Object, Parser) */
753 void VIRTUAL_parser__ReduceAction528__action(val
* self
, val
* p0
) {
754 parser__ReduceAction528__action(self
, p0
);
757 /* method parser#ReduceAction529#action for (self: ReduceAction529, Parser) */
758 void parser__ReduceAction529__action(val
* self
, val
* p0
) {
759 val
* var_p
/* var p: Parser */;
760 val
* var
/* : null */;
761 val
* var_node_list
/* var node_list: nullable Object */;
762 val
* var1
/* : nullable Object */;
763 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
764 val
* var_tminusnode2
/* var tminusnode2: nullable Object */;
765 short int var2
/* : Bool */;
768 val
* var3
/* : AMinusMethid */;
769 val
* var_pmethidnode1
/* var pmethidnode1: nullable AMinusMethid */;
770 long var4
/* : Int */;
771 long var5
/* : Int */;
775 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
776 var_nodearraylist1
= var1
;
777 var_tminusnode2
= var_nodearraylist1
;
778 /* <var_tminusnode2:nullable Object> isa nullable TMinus */
779 cltype
= type_nullable_parser_nodes__TMinus
.color
;
780 idtype
= type_nullable_parser_nodes__TMinus
.id
;
781 if(var_tminusnode2
== NULL
) {
784 if(cltype
>= var_tminusnode2
->type
->table_size
) {
787 var2
= var_tminusnode2
->type
->type_table
[cltype
] == idtype
;
791 fprintf(stderr
, "Runtime error: %s", "Assert failed");
792 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22725);
795 var3
= NEW_parser_nodes__AMinusMethid(&type_parser_nodes__AMinusMethid
);
796 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AMinusMethid__init_aminusmethid
]))(var3
, var_tminusnode2
) /* init_aminusmethid on <var3:AMinusMethid>*/;
797 var_pmethidnode1
= var3
;
798 var_node_list
= var_pmethidnode1
;
799 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction529> */
800 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
801 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
804 /* method parser#ReduceAction529#action for (self: Object, Parser) */
805 void VIRTUAL_parser__ReduceAction529__action(val
* self
, val
* p0
) {
806 parser__ReduceAction529__action(self
, p0
);
809 /* method parser#ReduceAction530#action for (self: ReduceAction530, Parser) */
810 void parser__ReduceAction530__action(val
* self
, val
* p0
) {
811 val
* var_p
/* var p: Parser */;
812 val
* var
/* : null */;
813 val
* var_node_list
/* var node_list: nullable Object */;
814 val
* var1
/* : nullable Object */;
815 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
816 val
* var_tstarnode2
/* var tstarnode2: nullable Object */;
817 short int var2
/* : Bool */;
820 val
* var3
/* : AStarMethid */;
821 val
* var_pmethidnode1
/* var pmethidnode1: nullable AStarMethid */;
822 long var4
/* : Int */;
823 long var5
/* : Int */;
827 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
828 var_nodearraylist1
= var1
;
829 var_tstarnode2
= var_nodearraylist1
;
830 /* <var_tstarnode2:nullable Object> isa nullable TStar */
831 cltype
= type_nullable_parser_nodes__TStar
.color
;
832 idtype
= type_nullable_parser_nodes__TStar
.id
;
833 if(var_tstarnode2
== NULL
) {
836 if(cltype
>= var_tstarnode2
->type
->table_size
) {
839 var2
= var_tstarnode2
->type
->type_table
[cltype
] == idtype
;
843 fprintf(stderr
, "Runtime error: %s", "Assert failed");
844 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22740);
847 var3
= NEW_parser_nodes__AStarMethid(&type_parser_nodes__AStarMethid
);
848 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStarMethid__init_astarmethid
]))(var3
, var_tstarnode2
) /* init_astarmethid on <var3:AStarMethid>*/;
849 var_pmethidnode1
= var3
;
850 var_node_list
= var_pmethidnode1
;
851 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction530> */
852 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
853 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
856 /* method parser#ReduceAction530#action for (self: Object, Parser) */
857 void VIRTUAL_parser__ReduceAction530__action(val
* self
, val
* p0
) {
858 parser__ReduceAction530__action(self
, p0
);
861 /* method parser#ReduceAction531#action for (self: ReduceAction531, Parser) */
862 void parser__ReduceAction531__action(val
* self
, val
* p0
) {
863 val
* var_p
/* var p: Parser */;
864 val
* var
/* : null */;
865 val
* var_node_list
/* var node_list: nullable Object */;
866 val
* var1
/* : nullable Object */;
867 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
868 val
* var_tslashnode2
/* var tslashnode2: nullable Object */;
869 short int var2
/* : Bool */;
872 val
* var3
/* : ASlashMethid */;
873 val
* var_pmethidnode1
/* var pmethidnode1: nullable ASlashMethid */;
874 long var4
/* : Int */;
875 long var5
/* : Int */;
879 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
880 var_nodearraylist1
= var1
;
881 var_tslashnode2
= var_nodearraylist1
;
882 /* <var_tslashnode2:nullable Object> isa nullable TSlash */
883 cltype
= type_nullable_parser_nodes__TSlash
.color
;
884 idtype
= type_nullable_parser_nodes__TSlash
.id
;
885 if(var_tslashnode2
== NULL
) {
888 if(cltype
>= var_tslashnode2
->type
->table_size
) {
891 var2
= var_tslashnode2
->type
->type_table
[cltype
] == idtype
;
895 fprintf(stderr
, "Runtime error: %s", "Assert failed");
896 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22755);
899 var3
= NEW_parser_nodes__ASlashMethid(&type_parser_nodes__ASlashMethid
);
900 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASlashMethid__init_aslashmethid
]))(var3
, var_tslashnode2
) /* init_aslashmethid on <var3:ASlashMethid>*/;
901 var_pmethidnode1
= var3
;
902 var_node_list
= var_pmethidnode1
;
903 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction531> */
904 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
905 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
908 /* method parser#ReduceAction531#action for (self: Object, Parser) */
909 void VIRTUAL_parser__ReduceAction531__action(val
* self
, val
* p0
) {
910 parser__ReduceAction531__action(self
, p0
);
913 /* method parser#ReduceAction532#action for (self: ReduceAction532, Parser) */
914 void parser__ReduceAction532__action(val
* self
, val
* p0
) {
915 val
* var_p
/* var p: Parser */;
916 val
* var
/* : null */;
917 val
* var_node_list
/* var node_list: nullable Object */;
918 val
* var1
/* : nullable Object */;
919 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
920 val
* var_tpercentnode2
/* var tpercentnode2: nullable Object */;
921 short int var2
/* : Bool */;
924 val
* var3
/* : APercentMethid */;
925 val
* var_pmethidnode1
/* var pmethidnode1: nullable APercentMethid */;
926 long var4
/* : Int */;
927 long var5
/* : Int */;
931 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
932 var_nodearraylist1
= var1
;
933 var_tpercentnode2
= var_nodearraylist1
;
934 /* <var_tpercentnode2:nullable Object> isa nullable TPercent */
935 cltype
= type_nullable_parser_nodes__TPercent
.color
;
936 idtype
= type_nullable_parser_nodes__TPercent
.id
;
937 if(var_tpercentnode2
== NULL
) {
940 if(cltype
>= var_tpercentnode2
->type
->table_size
) {
943 var2
= var_tpercentnode2
->type
->type_table
[cltype
] == idtype
;
947 fprintf(stderr
, "Runtime error: %s", "Assert failed");
948 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22770);
951 var3
= NEW_parser_nodes__APercentMethid(&type_parser_nodes__APercentMethid
);
952 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APercentMethid__init_apercentmethid
]))(var3
, var_tpercentnode2
) /* init_apercentmethid on <var3:APercentMethid>*/;
953 var_pmethidnode1
= var3
;
954 var_node_list
= var_pmethidnode1
;
955 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction532> */
956 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
957 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
960 /* method parser#ReduceAction532#action for (self: Object, Parser) */
961 void VIRTUAL_parser__ReduceAction532__action(val
* self
, val
* p0
) {
962 parser__ReduceAction532__action(self
, p0
);
965 /* method parser#ReduceAction533#action for (self: ReduceAction533, Parser) */
966 void parser__ReduceAction533__action(val
* self
, val
* p0
) {
967 val
* var_p
/* var p: Parser */;
968 val
* var
/* : null */;
969 val
* var_node_list
/* var node_list: nullable Object */;
970 val
* var1
/* : nullable Object */;
971 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
972 val
* var_teqnode2
/* var teqnode2: nullable Object */;
973 short int var2
/* : Bool */;
976 val
* var3
/* : AEqMethid */;
977 val
* var_pmethidnode1
/* var pmethidnode1: nullable AEqMethid */;
978 long var4
/* : Int */;
979 long var5
/* : Int */;
983 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
984 var_nodearraylist1
= var1
;
985 var_teqnode2
= var_nodearraylist1
;
986 /* <var_teqnode2:nullable Object> isa nullable TEq */
987 cltype
= type_nullable_parser_nodes__TEq
.color
;
988 idtype
= type_nullable_parser_nodes__TEq
.id
;
989 if(var_teqnode2
== NULL
) {
992 if(cltype
>= var_teqnode2
->type
->table_size
) {
995 var2
= var_teqnode2
->type
->type_table
[cltype
] == idtype
;
999 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1000 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22785);
1003 var3
= NEW_parser_nodes__AEqMethid(&type_parser_nodes__AEqMethid
);
1004 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AEqMethid__init_aeqmethid
]))(var3
, var_teqnode2
) /* init_aeqmethid on <var3:AEqMethid>*/;
1005 var_pmethidnode1
= var3
;
1006 var_node_list
= var_pmethidnode1
;
1007 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction533> */
1008 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1009 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1012 /* method parser#ReduceAction533#action for (self: Object, Parser) */
1013 void VIRTUAL_parser__ReduceAction533__action(val
* self
, val
* p0
) {
1014 parser__ReduceAction533__action(self
, p0
);
1017 /* method parser#ReduceAction534#action for (self: ReduceAction534, Parser) */
1018 void parser__ReduceAction534__action(val
* self
, val
* p0
) {
1019 val
* var_p
/* var p: Parser */;
1020 val
* var
/* : null */;
1021 val
* var_node_list
/* var node_list: nullable Object */;
1022 val
* var1
/* : nullable Object */;
1023 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1024 val
* var_tnenode2
/* var tnenode2: nullable Object */;
1025 short int var2
/* : Bool */;
1028 val
* var3
/* : ANeMethid */;
1029 val
* var_pmethidnode1
/* var pmethidnode1: nullable ANeMethid */;
1030 long var4
/* : Int */;
1031 long var5
/* : Int */;
1034 var_node_list
= var
;
1035 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1036 var_nodearraylist1
= var1
;
1037 var_tnenode2
= var_nodearraylist1
;
1038 /* <var_tnenode2:nullable Object> isa nullable TNe */
1039 cltype
= type_nullable_parser_nodes__TNe
.color
;
1040 idtype
= type_nullable_parser_nodes__TNe
.id
;
1041 if(var_tnenode2
== NULL
) {
1044 if(cltype
>= var_tnenode2
->type
->table_size
) {
1047 var2
= var_tnenode2
->type
->type_table
[cltype
] == idtype
;
1051 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1052 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22800);
1055 var3
= NEW_parser_nodes__ANeMethid(&type_parser_nodes__ANeMethid
);
1056 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ANeMethid__init_anemethid
]))(var3
, var_tnenode2
) /* init_anemethid on <var3:ANeMethid>*/;
1057 var_pmethidnode1
= var3
;
1058 var_node_list
= var_pmethidnode1
;
1059 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction534> */
1060 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1061 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1064 /* method parser#ReduceAction534#action for (self: Object, Parser) */
1065 void VIRTUAL_parser__ReduceAction534__action(val
* self
, val
* p0
) {
1066 parser__ReduceAction534__action(self
, p0
);
1069 /* method parser#ReduceAction535#action for (self: ReduceAction535, Parser) */
1070 void parser__ReduceAction535__action(val
* self
, val
* p0
) {
1071 val
* var_p
/* var p: Parser */;
1072 val
* var
/* : null */;
1073 val
* var_node_list
/* var node_list: nullable Object */;
1074 val
* var1
/* : nullable Object */;
1075 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1076 val
* var_tlenode2
/* var tlenode2: nullable Object */;
1077 short int var2
/* : Bool */;
1080 val
* var3
/* : ALeMethid */;
1081 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALeMethid */;
1082 long var4
/* : Int */;
1083 long var5
/* : Int */;
1086 var_node_list
= var
;
1087 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1088 var_nodearraylist1
= var1
;
1089 var_tlenode2
= var_nodearraylist1
;
1090 /* <var_tlenode2:nullable Object> isa nullable TLe */
1091 cltype
= type_nullable_parser_nodes__TLe
.color
;
1092 idtype
= type_nullable_parser_nodes__TLe
.id
;
1093 if(var_tlenode2
== NULL
) {
1096 if(cltype
>= var_tlenode2
->type
->table_size
) {
1099 var2
= var_tlenode2
->type
->type_table
[cltype
] == idtype
;
1103 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1104 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22815);
1107 var3
= NEW_parser_nodes__ALeMethid(&type_parser_nodes__ALeMethid
);
1108 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALeMethid__init_alemethid
]))(var3
, var_tlenode2
) /* init_alemethid on <var3:ALeMethid>*/;
1109 var_pmethidnode1
= var3
;
1110 var_node_list
= var_pmethidnode1
;
1111 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction535> */
1112 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1113 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1116 /* method parser#ReduceAction535#action for (self: Object, Parser) */
1117 void VIRTUAL_parser__ReduceAction535__action(val
* self
, val
* p0
) {
1118 parser__ReduceAction535__action(self
, p0
);
1121 /* method parser#ReduceAction536#action for (self: ReduceAction536, Parser) */
1122 void parser__ReduceAction536__action(val
* self
, val
* p0
) {
1123 val
* var_p
/* var p: Parser */;
1124 val
* var
/* : null */;
1125 val
* var_node_list
/* var node_list: nullable Object */;
1126 val
* var1
/* : nullable Object */;
1127 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1128 val
* var_tgenode2
/* var tgenode2: nullable Object */;
1129 short int var2
/* : Bool */;
1132 val
* var3
/* : AGeMethid */;
1133 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGeMethid */;
1134 long var4
/* : Int */;
1135 long var5
/* : Int */;
1138 var_node_list
= var
;
1139 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1140 var_nodearraylist1
= var1
;
1141 var_tgenode2
= var_nodearraylist1
;
1142 /* <var_tgenode2:nullable Object> isa nullable TGe */
1143 cltype
= type_nullable_parser_nodes__TGe
.color
;
1144 idtype
= type_nullable_parser_nodes__TGe
.id
;
1145 if(var_tgenode2
== NULL
) {
1148 if(cltype
>= var_tgenode2
->type
->table_size
) {
1151 var2
= var_tgenode2
->type
->type_table
[cltype
] == idtype
;
1155 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1156 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22830);
1159 var3
= NEW_parser_nodes__AGeMethid(&type_parser_nodes__AGeMethid
);
1160 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGeMethid__init_agemethid
]))(var3
, var_tgenode2
) /* init_agemethid on <var3:AGeMethid>*/;
1161 var_pmethidnode1
= var3
;
1162 var_node_list
= var_pmethidnode1
;
1163 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction536> */
1164 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1165 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1168 /* method parser#ReduceAction536#action for (self: Object, Parser) */
1169 void VIRTUAL_parser__ReduceAction536__action(val
* self
, val
* p0
) {
1170 parser__ReduceAction536__action(self
, p0
);
1173 /* method parser#ReduceAction537#action for (self: ReduceAction537, Parser) */
1174 void parser__ReduceAction537__action(val
* self
, val
* p0
) {
1175 val
* var_p
/* var p: Parser */;
1176 val
* var
/* : null */;
1177 val
* var_node_list
/* var node_list: nullable Object */;
1178 val
* var1
/* : nullable Object */;
1179 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1180 val
* var_tltnode2
/* var tltnode2: nullable Object */;
1181 short int var2
/* : Bool */;
1184 val
* var3
/* : ALtMethid */;
1185 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALtMethid */;
1186 long var4
/* : Int */;
1187 long var5
/* : Int */;
1190 var_node_list
= var
;
1191 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1192 var_nodearraylist1
= var1
;
1193 var_tltnode2
= var_nodearraylist1
;
1194 /* <var_tltnode2:nullable Object> isa nullable TLt */
1195 cltype
= type_nullable_parser_nodes__TLt
.color
;
1196 idtype
= type_nullable_parser_nodes__TLt
.id
;
1197 if(var_tltnode2
== NULL
) {
1200 if(cltype
>= var_tltnode2
->type
->table_size
) {
1203 var2
= var_tltnode2
->type
->type_table
[cltype
] == idtype
;
1207 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1208 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22845);
1211 var3
= NEW_parser_nodes__ALtMethid(&type_parser_nodes__ALtMethid
);
1212 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALtMethid__init_altmethid
]))(var3
, var_tltnode2
) /* init_altmethid on <var3:ALtMethid>*/;
1213 var_pmethidnode1
= var3
;
1214 var_node_list
= var_pmethidnode1
;
1215 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction537> */
1216 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1217 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1220 /* method parser#ReduceAction537#action for (self: Object, Parser) */
1221 void VIRTUAL_parser__ReduceAction537__action(val
* self
, val
* p0
) {
1222 parser__ReduceAction537__action(self
, p0
);
1225 /* method parser#ReduceAction538#action for (self: ReduceAction538, Parser) */
1226 void parser__ReduceAction538__action(val
* self
, val
* p0
) {
1227 val
* var_p
/* var p: Parser */;
1228 val
* var
/* : null */;
1229 val
* var_node_list
/* var node_list: nullable Object */;
1230 val
* var1
/* : nullable Object */;
1231 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1232 val
* var_tgtnode2
/* var tgtnode2: nullable Object */;
1233 short int var2
/* : Bool */;
1236 val
* var3
/* : AGtMethid */;
1237 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGtMethid */;
1238 long var4
/* : Int */;
1239 long var5
/* : Int */;
1242 var_node_list
= var
;
1243 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1244 var_nodearraylist1
= var1
;
1245 var_tgtnode2
= var_nodearraylist1
;
1246 /* <var_tgtnode2:nullable Object> isa nullable TGt */
1247 cltype
= type_nullable_parser_nodes__TGt
.color
;
1248 idtype
= type_nullable_parser_nodes__TGt
.id
;
1249 if(var_tgtnode2
== NULL
) {
1252 if(cltype
>= var_tgtnode2
->type
->table_size
) {
1255 var2
= var_tgtnode2
->type
->type_table
[cltype
] == idtype
;
1259 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1260 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22860);
1263 var3
= NEW_parser_nodes__AGtMethid(&type_parser_nodes__AGtMethid
);
1264 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGtMethid__init_agtmethid
]))(var3
, var_tgtnode2
) /* init_agtmethid on <var3:AGtMethid>*/;
1265 var_pmethidnode1
= var3
;
1266 var_node_list
= var_pmethidnode1
;
1267 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction538> */
1268 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1269 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1272 /* method parser#ReduceAction538#action for (self: Object, Parser) */
1273 void VIRTUAL_parser__ReduceAction538__action(val
* self
, val
* p0
) {
1274 parser__ReduceAction538__action(self
, p0
);
1277 /* method parser#ReduceAction539#action for (self: ReduceAction539, Parser) */
1278 void parser__ReduceAction539__action(val
* self
, val
* p0
) {
1279 val
* var_p
/* var p: Parser */;
1280 val
* var
/* : null */;
1281 val
* var_node_list
/* var node_list: nullable Object */;
1282 val
* var1
/* : nullable Object */;
1283 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1284 val
* var_tllnode2
/* var tllnode2: nullable Object */;
1285 short int var2
/* : Bool */;
1288 val
* var3
/* : ALlMethid */;
1289 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALlMethid */;
1290 long var4
/* : Int */;
1291 long var5
/* : Int */;
1294 var_node_list
= var
;
1295 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1296 var_nodearraylist1
= var1
;
1297 var_tllnode2
= var_nodearraylist1
;
1298 /* <var_tllnode2:nullable Object> isa nullable TLl */
1299 cltype
= type_nullable_parser_nodes__TLl
.color
;
1300 idtype
= type_nullable_parser_nodes__TLl
.id
;
1301 if(var_tllnode2
== NULL
) {
1304 if(cltype
>= var_tllnode2
->type
->table_size
) {
1307 var2
= var_tllnode2
->type
->type_table
[cltype
] == idtype
;
1311 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1312 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22875);
1315 var3
= NEW_parser_nodes__ALlMethid(&type_parser_nodes__ALlMethid
);
1316 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALlMethid__init_allmethid
]))(var3
, var_tllnode2
) /* init_allmethid on <var3:ALlMethid>*/;
1317 var_pmethidnode1
= var3
;
1318 var_node_list
= var_pmethidnode1
;
1319 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction539> */
1320 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1321 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1324 /* method parser#ReduceAction539#action for (self: Object, Parser) */
1325 void VIRTUAL_parser__ReduceAction539__action(val
* self
, val
* p0
) {
1326 parser__ReduceAction539__action(self
, p0
);
1329 /* method parser#ReduceAction540#action for (self: ReduceAction540, Parser) */
1330 void parser__ReduceAction540__action(val
* self
, val
* p0
) {
1331 val
* var_p
/* var p: Parser */;
1332 val
* var
/* : null */;
1333 val
* var_node_list
/* var node_list: nullable Object */;
1334 val
* var1
/* : nullable Object */;
1335 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1336 val
* var_tggnode2
/* var tggnode2: nullable Object */;
1337 short int var2
/* : Bool */;
1340 val
* var3
/* : AGgMethid */;
1341 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGgMethid */;
1342 long var4
/* : Int */;
1343 long var5
/* : Int */;
1346 var_node_list
= var
;
1347 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1348 var_nodearraylist1
= var1
;
1349 var_tggnode2
= var_nodearraylist1
;
1350 /* <var_tggnode2:nullable Object> isa nullable TGg */
1351 cltype
= type_nullable_parser_nodes__TGg
.color
;
1352 idtype
= type_nullable_parser_nodes__TGg
.id
;
1353 if(var_tggnode2
== NULL
) {
1356 if(cltype
>= var_tggnode2
->type
->table_size
) {
1359 var2
= var_tggnode2
->type
->type_table
[cltype
] == idtype
;
1363 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1364 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22890);
1367 var3
= NEW_parser_nodes__AGgMethid(&type_parser_nodes__AGgMethid
);
1368 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGgMethid__init_aggmethid
]))(var3
, var_tggnode2
) /* init_aggmethid on <var3:AGgMethid>*/;
1369 var_pmethidnode1
= var3
;
1370 var_node_list
= var_pmethidnode1
;
1371 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction540> */
1372 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1373 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1376 /* method parser#ReduceAction540#action for (self: Object, Parser) */
1377 void VIRTUAL_parser__ReduceAction540__action(val
* self
, val
* p0
) {
1378 parser__ReduceAction540__action(self
, p0
);
1381 /* method parser#ReduceAction541#action for (self: ReduceAction541, Parser) */
1382 void parser__ReduceAction541__action(val
* self
, val
* p0
) {
1383 val
* var_p
/* var p: Parser */;
1384 val
* var
/* : null */;
1385 val
* var_node_list
/* var node_list: nullable Object */;
1386 val
* var1
/* : nullable Object */;
1387 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1388 val
* var2
/* : nullable Object */;
1389 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1390 val
* var_tobranode2
/* var tobranode2: nullable Object */;
1391 short int var3
/* : Bool */;
1394 val
* var_tcbranode3
/* var tcbranode3: nullable Object */;
1395 short int var4
/* : Bool */;
1398 val
* var7
/* : ABraMethid */;
1399 val
* var_pmethidnode1
/* var pmethidnode1: nullable ABraMethid */;
1400 long var8
/* : Int */;
1401 long var9
/* : Int */;
1404 var_node_list
= var
;
1405 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1406 var_nodearraylist2
= var1
;
1407 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1408 var_nodearraylist1
= var2
;
1409 var_tobranode2
= var_nodearraylist1
;
1410 /* <var_tobranode2:nullable Object> isa nullable TObra */
1411 cltype
= type_nullable_parser_nodes__TObra
.color
;
1412 idtype
= type_nullable_parser_nodes__TObra
.id
;
1413 if(var_tobranode2
== NULL
) {
1416 if(cltype
>= var_tobranode2
->type
->table_size
) {
1419 var3
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
1423 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1424 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22906);
1427 var_tcbranode3
= var_nodearraylist2
;
1428 /* <var_tcbranode3:nullable Object> isa nullable TCbra */
1429 cltype5
= type_nullable_parser_nodes__TCbra
.color
;
1430 idtype6
= type_nullable_parser_nodes__TCbra
.id
;
1431 if(var_tcbranode3
== NULL
) {
1434 if(cltype5
>= var_tcbranode3
->type
->table_size
) {
1437 var4
= var_tcbranode3
->type
->type_table
[cltype5
] == idtype6
;
1441 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1442 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22908);
1445 var7
= NEW_parser_nodes__ABraMethid(&type_parser_nodes__ABraMethid
);
1446 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABraMethid__init_abramethid
]))(var7
, var_tobranode2
, var_tcbranode3
) /* init_abramethid on <var7:ABraMethid>*/;
1447 var_pmethidnode1
= var7
;
1448 var_node_list
= var_pmethidnode1
;
1449 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction541> */
1450 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
1451 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
1454 /* method parser#ReduceAction541#action for (self: Object, Parser) */
1455 void VIRTUAL_parser__ReduceAction541__action(val
* self
, val
* p0
) {
1456 parser__ReduceAction541__action(self
, p0
);
1459 /* method parser#ReduceAction542#action for (self: ReduceAction542, Parser) */
1460 void parser__ReduceAction542__action(val
* self
, val
* p0
) {
1461 val
* var_p
/* var p: Parser */;
1462 val
* var
/* : null */;
1463 val
* var_node_list
/* var node_list: nullable Object */;
1464 val
* var1
/* : nullable Object */;
1465 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1466 val
* var_tstarshipnode2
/* var tstarshipnode2: nullable Object */;
1467 short int var2
/* : Bool */;
1470 val
* var3
/* : AStarshipMethid */;
1471 val
* var_pmethidnode1
/* var pmethidnode1: nullable AStarshipMethid */;
1472 long var4
/* : Int */;
1473 long var5
/* : Int */;
1476 var_node_list
= var
;
1477 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1478 var_nodearraylist1
= var1
;
1479 var_tstarshipnode2
= var_nodearraylist1
;
1480 /* <var_tstarshipnode2:nullable Object> isa nullable TStarship */
1481 cltype
= type_nullable_parser_nodes__TStarship
.color
;
1482 idtype
= type_nullable_parser_nodes__TStarship
.id
;
1483 if(var_tstarshipnode2
== NULL
) {
1486 if(cltype
>= var_tstarshipnode2
->type
->table_size
) {
1489 var2
= var_tstarshipnode2
->type
->type_table
[cltype
] == idtype
;
1493 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1494 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22924);
1497 var3
= NEW_parser_nodes__AStarshipMethid(&type_parser_nodes__AStarshipMethid
);
1498 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStarshipMethid__init_astarshipmethid
]))(var3
, var_tstarshipnode2
) /* init_astarshipmethid on <var3:AStarshipMethid>*/;
1499 var_pmethidnode1
= var3
;
1500 var_node_list
= var_pmethidnode1
;
1501 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction542> */
1502 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
1503 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
1506 /* method parser#ReduceAction542#action for (self: Object, Parser) */
1507 void VIRTUAL_parser__ReduceAction542__action(val
* self
, val
* p0
) {
1508 parser__ReduceAction542__action(self
, p0
);
1511 /* method parser#ReduceAction543#action for (self: ReduceAction543, Parser) */
1512 void parser__ReduceAction543__action(val
* self
, val
* p0
) {
1513 val
* var_p
/* var p: Parser */;
1514 val
* var
/* : null */;
1515 val
* var_node_list
/* var node_list: nullable Object */;
1516 val
* var1
/* : nullable Object */;
1517 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1518 val
* var2
/* : nullable Object */;
1519 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1520 val
* var_tidnode2
/* var tidnode2: nullable Object */;
1521 short int var3
/* : Bool */;
1524 val
* var_tassignnode3
/* var tassignnode3: nullable Object */;
1525 short int var4
/* : Bool */;
1528 val
* var7
/* : AAssignMethid */;
1529 val
* var_pmethidnode1
/* var pmethidnode1: nullable AAssignMethid */;
1530 long var8
/* : Int */;
1531 long var9
/* : Int */;
1534 var_node_list
= var
;
1535 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1536 var_nodearraylist2
= var1
;
1537 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1538 var_nodearraylist1
= var2
;
1539 var_tidnode2
= var_nodearraylist1
;
1540 /* <var_tidnode2:nullable Object> isa nullable TId */
1541 cltype
= type_nullable_parser_nodes__TId
.color
;
1542 idtype
= type_nullable_parser_nodes__TId
.id
;
1543 if(var_tidnode2
== NULL
) {
1546 if(cltype
>= var_tidnode2
->type
->table_size
) {
1549 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
1553 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1554 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22940);
1557 var_tassignnode3
= var_nodearraylist2
;
1558 /* <var_tassignnode3:nullable Object> isa nullable TAssign */
1559 cltype5
= type_nullable_parser_nodes__TAssign
.color
;
1560 idtype6
= type_nullable_parser_nodes__TAssign
.id
;
1561 if(var_tassignnode3
== NULL
) {
1564 if(cltype5
>= var_tassignnode3
->type
->table_size
) {
1567 var4
= var_tassignnode3
->type
->type_table
[cltype5
] == idtype6
;
1571 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1572 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22942);
1575 var7
= NEW_parser_nodes__AAssignMethid(&type_parser_nodes__AAssignMethid
);
1576 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AAssignMethid__init_aassignmethid
]))(var7
, var_tidnode2
, var_tassignnode3
) /* init_aassignmethid on <var7:AAssignMethid>*/;
1577 var_pmethidnode1
= var7
;
1578 var_node_list
= var_pmethidnode1
;
1579 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction543> */
1580 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
1581 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
1584 /* method parser#ReduceAction543#action for (self: Object, Parser) */
1585 void VIRTUAL_parser__ReduceAction543__action(val
* self
, val
* p0
) {
1586 parser__ReduceAction543__action(self
, p0
);
1589 /* method parser#ReduceAction544#action for (self: ReduceAction544, Parser) */
1590 void parser__ReduceAction544__action(val
* self
, val
* p0
) {
1591 val
* var_p
/* var p: Parser */;
1592 val
* var
/* : null */;
1593 val
* var_node_list
/* var node_list: nullable Object */;
1594 val
* var1
/* : nullable Object */;
1595 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1596 val
* var2
/* : nullable Object */;
1597 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1598 val
* var3
/* : nullable Object */;
1599 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1600 val
* var_tobranode2
/* var tobranode2: nullable Object */;
1601 short int var4
/* : Bool */;
1604 val
* var_tcbranode3
/* var tcbranode3: nullable Object */;
1605 short int var5
/* : Bool */;
1608 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
1609 short int var8
/* : Bool */;
1612 val
* var11
/* : ABraassignMethid */;
1613 val
* var_pmethidnode1
/* var pmethidnode1: nullable ABraassignMethid */;
1614 long var12
/* : Int */;
1615 long var13
/* : Int */;
1618 var_node_list
= var
;
1619 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1620 var_nodearraylist3
= var1
;
1621 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1622 var_nodearraylist2
= var2
;
1623 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1624 var_nodearraylist1
= var3
;
1625 var_tobranode2
= var_nodearraylist1
;
1626 /* <var_tobranode2:nullable Object> isa nullable TObra */
1627 cltype
= type_nullable_parser_nodes__TObra
.color
;
1628 idtype
= type_nullable_parser_nodes__TObra
.id
;
1629 if(var_tobranode2
== NULL
) {
1632 if(cltype
>= var_tobranode2
->type
->table_size
) {
1635 var4
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
1639 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1640 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22960);
1643 var_tcbranode3
= var_nodearraylist2
;
1644 /* <var_tcbranode3:nullable Object> isa nullable TCbra */
1645 cltype6
= type_nullable_parser_nodes__TCbra
.color
;
1646 idtype7
= type_nullable_parser_nodes__TCbra
.id
;
1647 if(var_tcbranode3
== NULL
) {
1650 if(cltype6
>= var_tcbranode3
->type
->table_size
) {
1653 var5
= var_tcbranode3
->type
->type_table
[cltype6
] == idtype7
;
1657 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1658 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22962);
1661 var_tassignnode4
= var_nodearraylist3
;
1662 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
1663 cltype9
= type_nullable_parser_nodes__TAssign
.color
;
1664 idtype10
= type_nullable_parser_nodes__TAssign
.id
;
1665 if(var_tassignnode4
== NULL
) {
1668 if(cltype9
>= var_tassignnode4
->type
->table_size
) {
1671 var8
= var_tassignnode4
->type
->type_table
[cltype9
] == idtype10
;
1675 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1676 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22964);
1679 var11
= NEW_parser_nodes__ABraassignMethid(&type_parser_nodes__ABraassignMethid
);
1680 ((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>*/;
1681 var_pmethidnode1
= var11
;
1682 var_node_list
= var_pmethidnode1
;
1683 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction544> */
1684 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
1685 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
1688 /* method parser#ReduceAction544#action for (self: Object, Parser) */
1689 void VIRTUAL_parser__ReduceAction544__action(val
* self
, val
* p0
) {
1690 parser__ReduceAction544__action(self
, p0
);
1693 /* method parser#ReduceAction545#action for (self: ReduceAction545, Parser) */
1694 void parser__ReduceAction545__action(val
* self
, val
* p0
) {
1695 val
* var_p
/* var p: Parser */;
1696 val
* var
/* : null */;
1697 val
* var_node_list
/* var node_list: nullable Object */;
1698 val
* var1
/* : nullable Object */;
1699 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1700 val
* var2
/* : nullable Object */;
1701 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1702 val
* var3
/* : nullable Object */;
1703 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1704 val
* var4
/* : nullable Object */;
1705 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1706 val
* var5
/* : nullable Object */;
1707 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1708 val
* var6
/* : Array[Object] */;
1709 val
* var_listnode3
/* var listnode3: Array[Object] */;
1710 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1711 short int var7
/* : Bool */;
1714 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
1715 short int var8
/* : Bool */;
1718 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
1719 short int var11
/* : Bool */;
1722 val
* var14
/* : ASignature */;
1723 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1724 long var15
/* : Int */;
1725 long var16
/* : Int */;
1728 var_node_list
= var
;
1729 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1730 var_nodearraylist5
= var1
;
1731 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1732 var_nodearraylist4
= var2
;
1733 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1734 var_nodearraylist3
= var3
;
1735 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1736 var_nodearraylist2
= var4
;
1737 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1738 var_nodearraylist1
= 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 var_listnode3
= var6
;
1742 var_toparnode2
= var_nodearraylist1
;
1743 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1744 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1745 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1746 if(var_toparnode2
== NULL
) {
1749 if(cltype
>= var_toparnode2
->type
->table_size
) {
1752 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1756 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1757 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22986);
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", "Assert failed");
1775 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22988);
1778 var_ptypenode5
= var_nodearraylist4
;
1779 /* <var_ptypenode5:nullable Object> isa nullable AType */
1780 cltype12
= type_nullable_parser_nodes__AType
.color
;
1781 idtype13
= type_nullable_parser_nodes__AType
.id
;
1782 if(var_ptypenode5
== NULL
) {
1785 if(cltype12
>= var_ptypenode5
->type
->table_size
) {
1788 var11
= var_ptypenode5
->type
->type_table
[cltype12
] == idtype13
;
1792 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1793 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22990);
1796 var14
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1797 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var14
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var_ptypenode5
) /* init_asignature on <var14:ASignature>*/;
1798 var_psignaturenode1
= var14
;
1799 var_node_list
= var_psignaturenode1
;
1800 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction545> */
1801 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
1802 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
1805 /* method parser#ReduceAction545#action for (self: Object, Parser) */
1806 void VIRTUAL_parser__ReduceAction545__action(val
* self
, val
* p0
) {
1807 parser__ReduceAction545__action(self
, p0
);
1810 /* method parser#ReduceAction546#action for (self: ReduceAction546, Parser) */
1811 void parser__ReduceAction546__action(val
* self
, val
* p0
) {
1812 val
* var_p
/* var p: Parser */;
1813 val
* var
/* : null */;
1814 val
* var_node_list
/* var node_list: nullable Object */;
1815 val
* var1
/* : nullable Object */;
1816 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1817 val
* var2
/* : nullable Object */;
1818 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1819 val
* var3
/* : nullable Object */;
1820 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1821 val
* var4
/* : nullable Object */;
1822 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1823 val
* var5
/* : nullable Object */;
1824 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1825 val
* var6
/* : nullable Object */;
1826 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1827 val
* var7
/* : Array[Object] */;
1828 val
* var_listnode4
/* var listnode4: Array[Object] */;
1829 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1830 short int var8
/* : Bool */;
1833 val
* var_listnode3
/* var listnode3: nullable Object */;
1834 short int var9
/* : Bool */;
1837 val
* var12
/* : Array[Object] */;
1838 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
1839 short int var13
/* : Bool */;
1842 val
* var_ptypenode6
/* var ptypenode6: nullable Object */;
1843 short int var16
/* : Bool */;
1846 val
* var19
/* : ASignature */;
1847 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1848 long var20
/* : Int */;
1849 long var21
/* : Int */;
1852 var_node_list
= var
;
1853 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1854 var_nodearraylist6
= var1
;
1855 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1856 var_nodearraylist5
= var2
;
1857 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1858 var_nodearraylist4
= var3
;
1859 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1860 var_nodearraylist3
= var4
;
1861 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1862 var_nodearraylist2
= var5
;
1863 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1864 var_nodearraylist1
= var6
;
1865 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
1866 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
1867 var_listnode4
= var7
;
1868 var_toparnode2
= var_nodearraylist1
;
1869 /* <var_toparnode2:nullable Object> isa nullable TOpar */
1870 cltype
= type_nullable_parser_nodes__TOpar
.color
;
1871 idtype
= type_nullable_parser_nodes__TOpar
.id
;
1872 if(var_toparnode2
== NULL
) {
1875 if(cltype
>= var_toparnode2
->type
->table_size
) {
1878 var8
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
1882 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1883 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23014);
1886 var_listnode3
= var_nodearraylist3
;
1887 /* <var_listnode3:nullable Object> isa Array[Object] */
1888 cltype10
= type_array__Arraykernel__Object
.color
;
1889 idtype11
= type_array__Arraykernel__Object
.id
;
1890 if(var_listnode3
== NULL
) {
1893 if(cltype10
>= var_listnode3
->type
->table_size
) {
1896 var9
= var_listnode3
->type
->type_table
[cltype10
] == idtype11
;
1900 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1901 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23016);
1904 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction546>*/;
1905 var_listnode4
= var12
;
1906 var_tcparnode5
= var_nodearraylist4
;
1907 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
1908 cltype14
= type_nullable_parser_nodes__TCpar
.color
;
1909 idtype15
= type_nullable_parser_nodes__TCpar
.id
;
1910 if(var_tcparnode5
== NULL
) {
1913 if(cltype14
>= var_tcparnode5
->type
->table_size
) {
1916 var13
= var_tcparnode5
->type
->type_table
[cltype14
] == idtype15
;
1920 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1921 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23019);
1924 var_ptypenode6
= var_nodearraylist5
;
1925 /* <var_ptypenode6:nullable Object> isa nullable AType */
1926 cltype17
= type_nullable_parser_nodes__AType
.color
;
1927 idtype18
= type_nullable_parser_nodes__AType
.id
;
1928 if(var_ptypenode6
== NULL
) {
1931 if(cltype17
>= var_ptypenode6
->type
->table_size
) {
1934 var16
= var_ptypenode6
->type
->type_table
[cltype17
] == idtype18
;
1938 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1939 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23021);
1942 var19
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
1943 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var19
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var_ptypenode6
) /* init_asignature on <var19:ASignature>*/;
1944 var_psignaturenode1
= var19
;
1945 var_node_list
= var_psignaturenode1
;
1946 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction546> */
1947 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
1948 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
1951 /* method parser#ReduceAction546#action for (self: Object, Parser) */
1952 void VIRTUAL_parser__ReduceAction546__action(val
* self
, val
* p0
) {
1953 parser__ReduceAction546__action(self
, p0
);
1956 /* method parser#ReduceAction547#action for (self: ReduceAction547, Parser) */
1957 void parser__ReduceAction547__action(val
* self
, val
* p0
) {
1958 val
* var_p
/* var p: Parser */;
1959 val
* var
/* : null */;
1960 val
* var_node_list
/* var node_list: nullable Object */;
1961 val
* var1
/* : nullable Object */;
1962 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1963 val
* var2
/* : nullable Object */;
1964 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1965 val
* var3
/* : nullable Object */;
1966 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1967 val
* var4
/* : nullable Object */;
1968 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1969 val
* var5
/* : Array[Object] */;
1970 val
* var_listnode3
/* var listnode3: Array[Object] */;
1971 val
* var_toparnode2
/* var toparnode2: nullable Object */;
1972 short int var6
/* : Bool */;
1975 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
1976 short int var7
/* : Bool */;
1979 val
* var10
/* : ASignature */;
1980 val
* var11
/* : null */;
1981 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
1982 long var12
/* : Int */;
1983 long var13
/* : Int */;
1986 var_node_list
= var
;
1987 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1988 var_nodearraylist4
= var1
;
1989 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1990 var_nodearraylist3
= var2
;
1991 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1992 var_nodearraylist2
= var3
;
1993 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1994 var_nodearraylist1
= var4
;
1995 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
1996 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
1997 var_listnode3
= var5
;
1998 var_toparnode2
= var_nodearraylist1
;
1999 /* <var_toparnode2:nullable Object> isa nullable TOpar */
2000 cltype
= type_nullable_parser_nodes__TOpar
.color
;
2001 idtype
= type_nullable_parser_nodes__TOpar
.id
;
2002 if(var_toparnode2
== NULL
) {
2005 if(cltype
>= var_toparnode2
->type
->table_size
) {
2008 var6
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
2012 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2013 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23043);
2016 var_tcparnode4
= var_nodearraylist3
;
2017 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
2018 cltype8
= type_nullable_parser_nodes__TCpar
.color
;
2019 idtype9
= type_nullable_parser_nodes__TCpar
.id
;
2020 if(var_tcparnode4
== NULL
) {
2023 if(cltype8
>= var_tcparnode4
->type
->table_size
) {
2026 var7
= var_tcparnode4
->type
->type_table
[cltype8
] == idtype9
;
2030 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2031 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23045);
2034 var10
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2036 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var10
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var11
) /* init_asignature on <var10:ASignature>*/;
2037 var_psignaturenode1
= var10
;
2038 var_node_list
= var_psignaturenode1
;
2039 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction547> */
2040 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
2041 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
2044 /* method parser#ReduceAction547#action for (self: Object, Parser) */
2045 void VIRTUAL_parser__ReduceAction547__action(val
* self
, val
* p0
) {
2046 parser__ReduceAction547__action(self
, p0
);
2049 /* method parser#ReduceAction548#action for (self: ReduceAction548, Parser) */
2050 void parser__ReduceAction548__action(val
* self
, val
* p0
) {
2051 val
* var_p
/* var p: Parser */;
2052 val
* var
/* : null */;
2053 val
* var_node_list
/* var node_list: nullable Object */;
2054 val
* var1
/* : nullable Object */;
2055 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2056 val
* var2
/* : nullable Object */;
2057 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2058 val
* var3
/* : nullable Object */;
2059 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2060 val
* var4
/* : nullable Object */;
2061 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2062 val
* var5
/* : nullable Object */;
2063 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2064 val
* var6
/* : Array[Object] */;
2065 val
* var_listnode4
/* var listnode4: Array[Object] */;
2066 val
* var_toparnode2
/* var toparnode2: nullable Object */;
2067 short int var7
/* : Bool */;
2070 val
* var_listnode3
/* var listnode3: nullable Object */;
2071 short int var8
/* : Bool */;
2074 val
* var11
/* : Array[Object] */;
2075 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
2076 short int var12
/* : Bool */;
2079 val
* var15
/* : ASignature */;
2080 val
* var16
/* : null */;
2081 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2082 long var17
/* : Int */;
2083 long var18
/* : Int */;
2086 var_node_list
= var
;
2087 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2088 var_nodearraylist5
= var1
;
2089 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2090 var_nodearraylist4
= var2
;
2091 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2092 var_nodearraylist3
= var3
;
2093 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2094 var_nodearraylist2
= var4
;
2095 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2096 var_nodearraylist1
= var5
;
2097 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
2098 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
2099 var_listnode4
= var6
;
2100 var_toparnode2
= var_nodearraylist1
;
2101 /* <var_toparnode2:nullable Object> isa nullable TOpar */
2102 cltype
= type_nullable_parser_nodes__TOpar
.color
;
2103 idtype
= type_nullable_parser_nodes__TOpar
.id
;
2104 if(var_toparnode2
== NULL
) {
2107 if(cltype
>= var_toparnode2
->type
->table_size
) {
2110 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
2114 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2115 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23068);
2118 var_listnode3
= var_nodearraylist3
;
2119 /* <var_listnode3:nullable Object> isa Array[Object] */
2120 cltype9
= type_array__Arraykernel__Object
.color
;
2121 idtype10
= type_array__Arraykernel__Object
.id
;
2122 if(var_listnode3
== NULL
) {
2125 if(cltype9
>= var_listnode3
->type
->table_size
) {
2128 var8
= var_listnode3
->type
->type_table
[cltype9
] == idtype10
;
2132 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2133 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23070);
2136 var11
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction548>*/;
2137 var_listnode4
= var11
;
2138 var_tcparnode5
= var_nodearraylist4
;
2139 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
2140 cltype13
= type_nullable_parser_nodes__TCpar
.color
;
2141 idtype14
= type_nullable_parser_nodes__TCpar
.id
;
2142 if(var_tcparnode5
== NULL
) {
2145 if(cltype13
>= var_tcparnode5
->type
->table_size
) {
2148 var12
= var_tcparnode5
->type
->type_table
[cltype13
] == idtype14
;
2152 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2153 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23073);
2156 var15
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2158 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var15
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var16
) /* init_asignature on <var15:ASignature>*/;
2159 var_psignaturenode1
= var15
;
2160 var_node_list
= var_psignaturenode1
;
2161 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction548> */
2162 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
2163 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
2166 /* method parser#ReduceAction548#action for (self: Object, Parser) */
2167 void VIRTUAL_parser__ReduceAction548__action(val
* self
, val
* p0
) {
2168 parser__ReduceAction548__action(self
, p0
);
2171 /* method parser#ReduceAction549#action for (self: ReduceAction549, Parser) */
2172 void parser__ReduceAction549__action(val
* self
, val
* p0
) {
2173 val
* var_p
/* var p: Parser */;
2174 val
* var
/* : null */;
2175 val
* var_node_list
/* var node_list: nullable Object */;
2176 val
* var1
/* : nullable Object */;
2177 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2178 val
* var2
/* : nullable Object */;
2179 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2180 val
* var3
/* : Array[Object] */;
2181 val
* var_listnode3
/* var listnode3: Array[Object] */;
2182 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
2183 short int var4
/* : Bool */;
2186 val
* var5
/* : ASignature */;
2187 val
* var6
/* : null */;
2188 val
* var7
/* : null */;
2189 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2190 long var8
/* : Int */;
2191 long var9
/* : Int */;
2194 var_node_list
= var
;
2195 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2196 var_nodearraylist2
= var1
;
2197 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2198 var_nodearraylist1
= var2
;
2199 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
2200 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
2201 var_listnode3
= var3
;
2202 var_ptypenode5
= var_nodearraylist1
;
2203 /* <var_ptypenode5:nullable Object> isa nullable AType */
2204 cltype
= type_nullable_parser_nodes__AType
.color
;
2205 idtype
= type_nullable_parser_nodes__AType
.id
;
2206 if(var_ptypenode5
== NULL
) {
2209 if(cltype
>= var_ptypenode5
->type
->table_size
) {
2212 var4
= var_ptypenode5
->type
->type_table
[cltype
] == idtype
;
2216 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2217 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23093);
2220 var5
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2223 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var5
, var6
, var_listnode3
, var7
, var_ptypenode5
) /* init_asignature on <var5:ASignature>*/;
2224 var_psignaturenode1
= var5
;
2225 var_node_list
= var_psignaturenode1
;
2226 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction549> */
2227 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
2228 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
2231 /* method parser#ReduceAction549#action for (self: Object, Parser) */
2232 void VIRTUAL_parser__ReduceAction549__action(val
* self
, val
* p0
) {
2233 parser__ReduceAction549__action(self
, p0
);
2236 /* method parser#ReduceAction550#action for (self: ReduceAction550, Parser) */
2237 void parser__ReduceAction550__action(val
* self
, val
* p0
) {
2238 val
* var_p
/* var p: Parser */;
2239 val
* var
/* : null */;
2240 val
* var_node_list
/* var node_list: nullable Object */;
2241 val
* var1
/* : nullable Object */;
2242 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2243 val
* var2
/* : Array[Object] */;
2244 val
* var_listnode3
/* var listnode3: Array[Object] */;
2245 val
* var3
/* : ASignature */;
2246 val
* var4
/* : null */;
2247 val
* var5
/* : null */;
2248 val
* var6
/* : null */;
2249 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
2250 long var7
/* : Int */;
2251 long var8
/* : Int */;
2254 var_node_list
= var
;
2255 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2256 var_nodearraylist1
= var1
;
2257 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
2258 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
2259 var_listnode3
= var2
;
2260 var3
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
2264 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var3
, var4
, var_listnode3
, var5
, var6
) /* init_asignature on <var3:ASignature>*/;
2265 var_psignaturenode1
= var3
;
2266 var_node_list
= var_psignaturenode1
;
2267 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction550> */
2268 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
2269 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
2272 /* method parser#ReduceAction550#action for (self: Object, Parser) */
2273 void VIRTUAL_parser__ReduceAction550__action(val
* self
, val
* p0
) {
2274 parser__ReduceAction550__action(self
, p0
);
2277 /* method parser#ReduceAction551#action for (self: ReduceAction551, Parser) */
2278 void parser__ReduceAction551__action(val
* self
, val
* p0
) {
2279 val
* var_p
/* var p: Parser */;
2280 val
* var
/* : null */;
2281 val
* var_node_list
/* var node_list: nullable Object */;
2282 val
* var1
/* : nullable Object */;
2283 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2284 val
* var2
/* : nullable Object */;
2285 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2286 val
* var3
/* : Array[Object] */;
2287 val
* var_listnode2
/* var listnode2: Array[Object] */;
2288 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
2289 val
* var4
/* : null */;
2290 short int var5
/* : Bool */;
2291 long var6
/* : Int */;
2292 long var7
/* : Int */;
2295 var_node_list
= var
;
2296 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2297 var_nodearraylist2
= var1
;
2298 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2299 var_nodearraylist1
= var2
;
2300 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
2301 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
2302 var_listnode2
= var3
;
2303 var_pparamnode1
= var_nodearraylist1
;
2305 if (var_pparamnode1
== NULL
) {
2306 var5
= 0; /* is null */
2308 var5
= 1; /* arg is null and recv is not */
2311 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_pparamnode1
) /* add on <var_listnode2:Array[Object]>*/;
2314 var_node_list
= var_listnode2
;
2315 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction551> */
2316 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
2317 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
2320 /* method parser#ReduceAction551#action for (self: Object, Parser) */
2321 void VIRTUAL_parser__ReduceAction551__action(val
* self
, val
* p0
) {
2322 parser__ReduceAction551__action(self
, p0
);
2325 /* method parser#ReduceAction552#action for (self: ReduceAction552, Parser) */
2326 void parser__ReduceAction552__action(val
* self
, val
* p0
) {
2327 val
* var_p
/* var p: Parser */;
2328 val
* var
/* : null */;
2329 val
* var_node_list
/* var node_list: nullable Object */;
2330 val
* var1
/* : nullable Object */;
2331 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2332 val
* var2
/* : nullable Object */;
2333 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2334 val
* var3
/* : nullable Object */;
2335 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2336 val
* var4
/* : Array[Object] */;
2337 val
* var_listnode3
/* var listnode3: Array[Object] */;
2338 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
2339 val
* var_listnode2
/* var listnode2: nullable Object */;
2340 short int var5
/* : Bool */;
2343 val
* var6
/* : null */;
2344 short int var7
/* : Bool */;
2345 val
* var8
/* : Array[Object] */;
2346 long var9
/* : Int */;
2347 long var10
/* : Int */;
2350 var_node_list
= var
;
2351 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2352 var_nodearraylist3
= var1
;
2353 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2354 var_nodearraylist2
= var2
;
2355 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2356 var_nodearraylist1
= var3
;
2357 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
2358 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
2359 var_listnode3
= var4
;
2360 var_pparamnode1
= var_nodearraylist1
;
2361 var_listnode2
= var_nodearraylist2
;
2362 /* <var_listnode2:nullable Object> isa Array[Object] */
2363 cltype
= type_array__Arraykernel__Object
.color
;
2364 idtype
= type_array__Arraykernel__Object
.id
;
2365 if(var_listnode2
== NULL
) {
2368 if(cltype
>= var_listnode2
->type
->table_size
) {
2371 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
2375 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2376 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23148);
2380 if (var_pparamnode1
== NULL
) {
2381 var7
= 0; /* is null */
2383 var7
= 1; /* arg is null and recv is not */
2386 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pparamnode1
) /* add on <var_listnode3:Array[Object]>*/;
2389 var8
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction552>*/;
2390 var_listnode3
= var8
;
2391 var_node_list
= var_listnode3
;
2392 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction552> */
2393 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
2394 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
2397 /* method parser#ReduceAction552#action for (self: Object, Parser) */
2398 void VIRTUAL_parser__ReduceAction552__action(val
* self
, val
* p0
) {
2399 parser__ReduceAction552__action(self
, p0
);
2402 /* method parser#ReduceAction553#action for (self: ReduceAction553, Parser) */
2403 void parser__ReduceAction553__action(val
* self
, val
* p0
) {
2404 val
* var_p
/* var p: Parser */;
2405 val
* var
/* : null */;
2406 val
* var_node_list
/* var node_list: nullable Object */;
2407 val
* var1
/* : nullable Object */;
2408 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2409 val
* var2
/* : nullable Object */;
2410 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2411 val
* var3
/* : nullable Object */;
2412 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2413 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
2414 long var4
/* : Int */;
2415 long var5
/* : Int */;
2418 var_node_list
= var
;
2419 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2420 var_nodearraylist3
= var1
;
2421 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2422 var_nodearraylist2
= var2
;
2423 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2424 var_nodearraylist1
= var3
;
2425 var_pparamnode1
= var_nodearraylist3
;
2426 var_node_list
= var_pparamnode1
;
2427 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction553> */
2428 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
2429 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
2432 /* method parser#ReduceAction553#action for (self: Object, Parser) */
2433 void VIRTUAL_parser__ReduceAction553__action(val
* self
, val
* p0
) {
2434 parser__ReduceAction553__action(self
, p0
);
2437 /* method parser#ReduceAction554#action for (self: ReduceAction554, Parser) */
2438 void parser__ReduceAction554__action(val
* self
, val
* p0
) {
2439 val
* var_p
/* var p: Parser */;
2440 val
* var
/* : null */;
2441 val
* var_node_list
/* var node_list: nullable Object */;
2442 val
* var1
/* : nullable Object */;
2443 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2444 val
* var_tidnode2
/* var tidnode2: nullable Object */;
2445 short int var2
/* : Bool */;
2448 val
* var3
/* : AParam */;
2449 val
* var4
/* : null */;
2450 val
* var5
/* : null */;
2451 val
* var6
/* : null */;
2452 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
2453 long var7
/* : Int */;
2454 long var8
/* : Int */;
2457 var_node_list
= var
;
2458 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2459 var_nodearraylist1
= var1
;
2460 var_tidnode2
= var_nodearraylist1
;
2461 /* <var_tidnode2:nullable Object> isa nullable TId */
2462 cltype
= type_nullable_parser_nodes__TId
.color
;
2463 idtype
= type_nullable_parser_nodes__TId
.id
;
2464 if(var_tidnode2
== NULL
) {
2467 if(cltype
>= var_tidnode2
->type
->table_size
) {
2470 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
2474 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2475 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23177);
2478 var3
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
2482 ((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>*/;
2483 var_pparamnode1
= var3
;
2484 var_node_list
= var_pparamnode1
;
2485 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction554> */
2486 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
2487 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
2490 /* method parser#ReduceAction554#action for (self: Object, Parser) */
2491 void VIRTUAL_parser__ReduceAction554__action(val
* self
, val
* p0
) {
2492 parser__ReduceAction554__action(self
, p0
);
2495 /* method parser#ReduceAction555#action for (self: ReduceAction555, Parser) */
2496 void parser__ReduceAction555__action(val
* self
, val
* p0
) {
2497 val
* var_p
/* var p: Parser */;
2498 val
* var
/* : null */;
2499 val
* var_node_list
/* var node_list: nullable Object */;
2500 val
* var1
/* : nullable Object */;
2501 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2502 val
* var2
/* : nullable Object */;
2503 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2504 val
* var_tidnode2
/* var tidnode2: nullable Object */;
2505 short int var3
/* : Bool */;
2508 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
2509 short int var4
/* : Bool */;
2512 val
* var7
/* : AParam */;
2513 val
* var8
/* : null */;
2514 val
* var9
/* : null */;
2515 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
2516 long var10
/* : Int */;
2517 long var11
/* : Int */;
2520 var_node_list
= var
;
2521 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2522 var_nodearraylist2
= var1
;
2523 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2524 var_nodearraylist1
= var2
;
2525 var_tidnode2
= var_nodearraylist1
;
2526 /* <var_tidnode2:nullable Object> isa nullable TId */
2527 cltype
= type_nullable_parser_nodes__TId
.color
;
2528 idtype
= type_nullable_parser_nodes__TId
.id
;
2529 if(var_tidnode2
== NULL
) {
2532 if(cltype
>= var_tidnode2
->type
->table_size
) {
2535 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
2539 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2540 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23196);
2543 var_pannotationsnode5
= var_nodearraylist2
;
2544 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
2545 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
2546 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
2547 if(var_pannotationsnode5
== NULL
) {
2550 if(cltype5
>= var_pannotationsnode5
->type
->table_size
) {
2553 var4
= var_pannotationsnode5
->type
->type_table
[cltype5
] == idtype6
;
2557 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2558 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23198);
2561 var7
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
2564 ((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>*/;
2565 var_pparamnode1
= var7
;
2566 var_node_list
= var_pparamnode1
;
2567 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction555> */
2568 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2569 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2572 /* method parser#ReduceAction555#action for (self: Object, Parser) */
2573 void VIRTUAL_parser__ReduceAction555__action(val
* self
, val
* p0
) {
2574 parser__ReduceAction555__action(self
, p0
);
2577 /* method parser#ReduceAction556#action for (self: ReduceAction556, Parser) */
2578 void parser__ReduceAction556__action(val
* self
, val
* p0
) {
2579 val
* var_p
/* var p: Parser */;
2580 val
* var
/* : null */;
2581 val
* var_node_list
/* var node_list: nullable Object */;
2582 val
* var1
/* : nullable Object */;
2583 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2584 val
* var2
/* : nullable Object */;
2585 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2586 val
* var_tidnode2
/* var tidnode2: nullable Object */;
2587 short int var3
/* : Bool */;
2590 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2591 short int var4
/* : Bool */;
2594 val
* var7
/* : AParam */;
2595 val
* var8
/* : null */;
2596 val
* var9
/* : null */;
2597 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
2598 long var10
/* : Int */;
2599 long var11
/* : Int */;
2602 var_node_list
= var
;
2603 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2604 var_nodearraylist2
= var1
;
2605 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2606 var_nodearraylist1
= var2
;
2607 var_tidnode2
= var_nodearraylist1
;
2608 /* <var_tidnode2:nullable Object> isa nullable TId */
2609 cltype
= type_nullable_parser_nodes__TId
.color
;
2610 idtype
= type_nullable_parser_nodes__TId
.id
;
2611 if(var_tidnode2
== NULL
) {
2614 if(cltype
>= var_tidnode2
->type
->table_size
) {
2617 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
2621 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2622 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23217);
2625 var_ptypenode3
= var_nodearraylist2
;
2626 /* <var_ptypenode3:nullable Object> isa nullable AType */
2627 cltype5
= type_nullable_parser_nodes__AType
.color
;
2628 idtype6
= type_nullable_parser_nodes__AType
.id
;
2629 if(var_ptypenode3
== NULL
) {
2632 if(cltype5
>= var_ptypenode3
->type
->table_size
) {
2635 var4
= var_ptypenode3
->type
->type_table
[cltype5
] == idtype6
;
2639 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2640 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23219);
2643 var7
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
2646 ((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>*/;
2647 var_pparamnode1
= var7
;
2648 var_node_list
= var_pparamnode1
;
2649 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction556> */
2650 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
2651 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
2654 /* method parser#ReduceAction556#action for (self: Object, Parser) */
2655 void VIRTUAL_parser__ReduceAction556__action(val
* self
, val
* p0
) {
2656 parser__ReduceAction556__action(self
, p0
);
2659 /* method parser#ReduceAction557#action for (self: ReduceAction557, Parser) */
2660 void parser__ReduceAction557__action(val
* self
, val
* p0
) {
2661 val
* var_p
/* var p: Parser */;
2662 val
* var
/* : null */;
2663 val
* var_node_list
/* var node_list: nullable Object */;
2664 val
* var1
/* : nullable Object */;
2665 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2666 val
* var2
/* : nullable Object */;
2667 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2668 val
* var3
/* : nullable Object */;
2669 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2670 val
* var_tidnode2
/* var tidnode2: nullable Object */;
2671 short int var4
/* : Bool */;
2674 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2675 short int var5
/* : Bool */;
2678 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
2679 short int var8
/* : Bool */;
2682 val
* var11
/* : AParam */;
2683 val
* var12
/* : null */;
2684 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
2685 long var13
/* : Int */;
2686 long var14
/* : Int */;
2689 var_node_list
= var
;
2690 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2691 var_nodearraylist3
= var1
;
2692 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2693 var_nodearraylist2
= var2
;
2694 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2695 var_nodearraylist1
= var3
;
2696 var_tidnode2
= var_nodearraylist1
;
2697 /* <var_tidnode2:nullable Object> isa nullable TId */
2698 cltype
= type_nullable_parser_nodes__TId
.color
;
2699 idtype
= type_nullable_parser_nodes__TId
.id
;
2700 if(var_tidnode2
== NULL
) {
2703 if(cltype
>= var_tidnode2
->type
->table_size
) {
2706 var4
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
2710 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2711 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23239);
2714 var_ptypenode3
= var_nodearraylist3
;
2715 /* <var_ptypenode3:nullable Object> isa nullable AType */
2716 cltype6
= type_nullable_parser_nodes__AType
.color
;
2717 idtype7
= type_nullable_parser_nodes__AType
.id
;
2718 if(var_ptypenode3
== NULL
) {
2721 if(cltype6
>= var_ptypenode3
->type
->table_size
) {
2724 var5
= var_ptypenode3
->type
->type_table
[cltype6
] == idtype7
;
2728 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2729 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23241);
2732 var_pannotationsnode5
= var_nodearraylist2
;
2733 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
2734 cltype9
= type_nullable_parser_nodes__AAnnotations
.color
;
2735 idtype10
= type_nullable_parser_nodes__AAnnotations
.id
;
2736 if(var_pannotationsnode5
== NULL
) {
2739 if(cltype9
>= var_pannotationsnode5
->type
->table_size
) {
2742 var8
= var_pannotationsnode5
->type
->type_table
[cltype9
] == idtype10
;
2746 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2747 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23243);
2750 var11
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
2752 ((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>*/;
2753 var_pparamnode1
= var11
;
2754 var_node_list
= var_pparamnode1
;
2755 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction557> */
2756 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
2757 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
2760 /* method parser#ReduceAction557#action for (self: Object, Parser) */
2761 void VIRTUAL_parser__ReduceAction557__action(val
* self
, val
* p0
) {
2762 parser__ReduceAction557__action(self
, p0
);
2765 /* method parser#ReduceAction558#action for (self: ReduceAction558, Parser) */
2766 void parser__ReduceAction558__action(val
* self
, val
* p0
) {
2767 val
* var_p
/* var p: Parser */;
2768 val
* var
/* : null */;
2769 val
* var_node_list
/* var node_list: nullable Object */;
2770 val
* var1
/* : nullable Object */;
2771 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2772 val
* var2
/* : nullable Object */;
2773 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2774 val
* var3
/* : nullable Object */;
2775 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2776 val
* var_tidnode2
/* var tidnode2: nullable Object */;
2777 short int var4
/* : Bool */;
2780 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2781 short int var5
/* : Bool */;
2784 val
* var_tdotdotdotnode4
/* var tdotdotdotnode4: nullable Object */;
2785 short int var8
/* : Bool */;
2788 val
* var11
/* : AParam */;
2789 val
* var12
/* : null */;
2790 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
2791 long var13
/* : Int */;
2792 long var14
/* : Int */;
2795 var_node_list
= var
;
2796 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2797 var_nodearraylist3
= var1
;
2798 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2799 var_nodearraylist2
= var2
;
2800 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2801 var_nodearraylist1
= var3
;
2802 var_tidnode2
= var_nodearraylist1
;
2803 /* <var_tidnode2:nullable Object> isa nullable TId */
2804 cltype
= type_nullable_parser_nodes__TId
.color
;
2805 idtype
= type_nullable_parser_nodes__TId
.id
;
2806 if(var_tidnode2
== NULL
) {
2809 if(cltype
>= var_tidnode2
->type
->table_size
) {
2812 var4
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
2816 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2817 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23263);
2820 var_ptypenode3
= var_nodearraylist2
;
2821 /* <var_ptypenode3:nullable Object> isa nullable AType */
2822 cltype6
= type_nullable_parser_nodes__AType
.color
;
2823 idtype7
= type_nullable_parser_nodes__AType
.id
;
2824 if(var_ptypenode3
== NULL
) {
2827 if(cltype6
>= var_ptypenode3
->type
->table_size
) {
2830 var5
= var_ptypenode3
->type
->type_table
[cltype6
] == idtype7
;
2834 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2835 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23265);
2838 var_tdotdotdotnode4
= var_nodearraylist3
;
2839 /* <var_tdotdotdotnode4:nullable Object> isa nullable TDotdotdot */
2840 cltype9
= type_nullable_parser_nodes__TDotdotdot
.color
;
2841 idtype10
= type_nullable_parser_nodes__TDotdotdot
.id
;
2842 if(var_tdotdotdotnode4
== NULL
) {
2845 if(cltype9
>= var_tdotdotdotnode4
->type
->table_size
) {
2848 var8
= var_tdotdotdotnode4
->type
->type_table
[cltype9
] == idtype10
;
2852 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2853 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23267);
2856 var11
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
2858 ((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>*/;
2859 var_pparamnode1
= var11
;
2860 var_node_list
= var_pparamnode1
;
2861 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction558> */
2862 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
2863 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
2866 /* method parser#ReduceAction558#action for (self: Object, Parser) */
2867 void VIRTUAL_parser__ReduceAction558__action(val
* self
, val
* p0
) {
2868 parser__ReduceAction558__action(self
, p0
);
2871 /* method parser#ReduceAction559#action for (self: ReduceAction559, Parser) */
2872 void parser__ReduceAction559__action(val
* self
, val
* p0
) {
2873 val
* var_p
/* var p: Parser */;
2874 val
* var
/* : null */;
2875 val
* var_node_list
/* var node_list: nullable Object */;
2876 val
* var1
/* : nullable Object */;
2877 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2878 val
* var2
/* : nullable Object */;
2879 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2880 val
* var3
/* : nullable Object */;
2881 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2882 val
* var4
/* : nullable Object */;
2883 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2884 val
* var_tidnode2
/* var tidnode2: nullable Object */;
2885 short int var5
/* : Bool */;
2888 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
2889 short int var6
/* : Bool */;
2892 val
* var_tdotdotdotnode4
/* var tdotdotdotnode4: nullable Object */;
2893 short int var9
/* : Bool */;
2896 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
2897 short int var12
/* : Bool */;
2900 val
* var15
/* : AParam */;
2901 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
2902 long var16
/* : Int */;
2903 long var17
/* : Int */;
2906 var_node_list
= var
;
2907 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2908 var_nodearraylist4
= var1
;
2909 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2910 var_nodearraylist3
= var2
;
2911 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2912 var_nodearraylist2
= var3
;
2913 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2914 var_nodearraylist1
= var4
;
2915 var_tidnode2
= var_nodearraylist1
;
2916 /* <var_tidnode2:nullable Object> isa nullable TId */
2917 cltype
= type_nullable_parser_nodes__TId
.color
;
2918 idtype
= type_nullable_parser_nodes__TId
.id
;
2919 if(var_tidnode2
== NULL
) {
2922 if(cltype
>= var_tidnode2
->type
->table_size
) {
2925 var5
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
2929 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2930 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23288);
2933 var_ptypenode3
= var_nodearraylist3
;
2934 /* <var_ptypenode3:nullable Object> isa nullable AType */
2935 cltype7
= type_nullable_parser_nodes__AType
.color
;
2936 idtype8
= type_nullable_parser_nodes__AType
.id
;
2937 if(var_ptypenode3
== NULL
) {
2940 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
2943 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
2947 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2948 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23290);
2951 var_tdotdotdotnode4
= var_nodearraylist4
;
2952 /* <var_tdotdotdotnode4:nullable Object> isa nullable TDotdotdot */
2953 cltype10
= type_nullable_parser_nodes__TDotdotdot
.color
;
2954 idtype11
= type_nullable_parser_nodes__TDotdotdot
.id
;
2955 if(var_tdotdotdotnode4
== NULL
) {
2958 if(cltype10
>= var_tdotdotdotnode4
->type
->table_size
) {
2961 var9
= var_tdotdotdotnode4
->type
->type_table
[cltype10
] == idtype11
;
2965 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2966 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23292);
2969 var_pannotationsnode5
= var_nodearraylist2
;
2970 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
2971 cltype13
= type_nullable_parser_nodes__AAnnotations
.color
;
2972 idtype14
= type_nullable_parser_nodes__AAnnotations
.id
;
2973 if(var_pannotationsnode5
== NULL
) {
2976 if(cltype13
>= var_pannotationsnode5
->type
->table_size
) {
2979 var12
= var_pannotationsnode5
->type
->type_table
[cltype13
] == idtype14
;
2983 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2984 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23294);
2987 var15
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
2988 ((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>*/;
2989 var_pparamnode1
= var15
;
2990 var_node_list
= var_pparamnode1
;
2991 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction559> */
2992 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
2993 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
2996 /* method parser#ReduceAction559#action for (self: Object, Parser) */
2997 void VIRTUAL_parser__ReduceAction559__action(val
* self
, val
* p0
) {
2998 parser__ReduceAction559__action(self
, p0
);
3001 /* method parser#ReduceAction560#action for (self: ReduceAction560, Parser) */
3002 void parser__ReduceAction560__action(val
* self
, val
* p0
) {
3003 val
* var_p
/* var p: Parser */;
3004 val
* var
/* : null */;
3005 val
* var_node_list
/* var node_list: nullable Object */;
3006 val
* var1
/* : nullable Object */;
3007 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3008 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3009 short int var2
/* : Bool */;
3012 val
* var3
/* : AReturnExpr */;
3013 val
* var4
/* : null */;
3014 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
3015 long var5
/* : Int */;
3016 long var6
/* : Int */;
3019 var_node_list
= var
;
3020 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3021 var_nodearraylist1
= var1
;
3022 var_pexprnode3
= var_nodearraylist1
;
3023 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3024 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3025 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3026 if(var_pexprnode3
== NULL
) {
3029 if(cltype
>= var_pexprnode3
->type
->table_size
) {
3032 var2
= var_pexprnode3
->type
->type_table
[cltype
] == idtype
;
3036 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3037 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23312);
3040 var3
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
3042 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var3
, var4
, var_pexprnode3
) /* init_areturnexpr on <var3:AReturnExpr>*/;
3043 var_pexprnode1
= var3
;
3044 var_node_list
= var_pexprnode1
;
3045 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction560> */
3046 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
3047 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
3050 /* method parser#ReduceAction560#action for (self: Object, Parser) */
3051 void VIRTUAL_parser__ReduceAction560__action(val
* self
, val
* p0
) {
3052 parser__ReduceAction560__action(self
, p0
);
3055 /* method parser#ReduceAction561#action for (self: ReduceAction561, Parser) */
3056 void parser__ReduceAction561__action(val
* self
, val
* p0
) {
3057 val
* var_p
/* var p: Parser */;
3058 val
* var
/* : null */;
3059 val
* var_node_list
/* var node_list: nullable Object */;
3060 val
* var1
/* : nullable Object */;
3061 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3062 val
* var2
/* : nullable Object */;
3063 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3064 val
* var3
/* : nullable Object */;
3065 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3066 val
* var4
/* : Array[Object] */;
3067 val
* var_listnode4
/* var listnode4: Array[Object] */;
3068 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
3069 short int var5
/* : Bool */;
3072 val
* var_pexterncallnode3
/* var pexterncallnode3: nullable Object */;
3073 short int var6
/* : Bool */;
3076 val
* var9
/* : null */;
3077 short int var10
/* : Bool */;
3078 val
* var11
/* : AExternCalls */;
3079 val
* var_pexterncallsnode1
/* var pexterncallsnode1: nullable AExternCalls */;
3080 long var12
/* : Int */;
3081 long var13
/* : Int */;
3084 var_node_list
= var
;
3085 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3086 var_nodearraylist3
= var1
;
3087 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3088 var_nodearraylist2
= var2
;
3089 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3090 var_nodearraylist1
= var3
;
3091 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
3092 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
3093 var_listnode4
= var4
;
3094 var_tkwimportnode2
= var_nodearraylist1
;
3095 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
3096 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
3097 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
3098 if(var_tkwimportnode2
== NULL
) {
3101 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
3104 var5
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
3108 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3109 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23331);
3112 var_pexterncallnode3
= var_nodearraylist3
;
3113 /* <var_pexterncallnode3:nullable Object> isa nullable AExternCall */
3114 cltype7
= type_nullable_parser_nodes__AExternCall
.color
;
3115 idtype8
= type_nullable_parser_nodes__AExternCall
.id
;
3116 if(var_pexterncallnode3
== NULL
) {
3119 if(cltype7
>= var_pexterncallnode3
->type
->table_size
) {
3122 var6
= var_pexterncallnode3
->type
->type_table
[cltype7
] == idtype8
;
3126 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3127 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23333);
3131 if (var_pexterncallnode3
== NULL
) {
3132 var10
= 0; /* is null */
3134 var10
= 1; /* arg is null and recv is not */
3137 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexterncallnode3
) /* add on <var_listnode4:Array[Object]>*/;
3140 var11
= NEW_parser_nodes__AExternCalls(&type_parser_nodes__AExternCalls
);
3141 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AExternCalls__init_aexterncalls
]))(var11
, var_tkwimportnode2
, var_listnode4
) /* init_aexterncalls on <var11:AExternCalls>*/;
3142 var_pexterncallsnode1
= var11
;
3143 var_node_list
= var_pexterncallsnode1
;
3144 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction561> */
3145 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
3146 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
3149 /* method parser#ReduceAction561#action for (self: Object, Parser) */
3150 void VIRTUAL_parser__ReduceAction561__action(val
* self
, val
* p0
) {
3151 parser__ReduceAction561__action(self
, p0
);
3154 /* method parser#ReduceAction562#action for (self: ReduceAction562, Parser) */
3155 void parser__ReduceAction562__action(val
* self
, val
* p0
) {
3156 val
* var_p
/* var p: Parser */;
3157 val
* var
/* : null */;
3158 val
* var_node_list
/* var node_list: nullable Object */;
3159 val
* var1
/* : nullable Object */;
3160 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3161 val
* var2
/* : nullable Object */;
3162 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3163 val
* var3
/* : nullable Object */;
3164 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3165 val
* var4
/* : nullable Object */;
3166 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3167 val
* var5
/* : Array[Object] */;
3168 val
* var_listnode5
/* var listnode5: Array[Object] */;
3169 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
3170 short int var6
/* : Bool */;
3173 val
* var_pexterncallnode3
/* var pexterncallnode3: nullable Object */;
3174 short int var7
/* : Bool */;
3177 val
* var_listnode4
/* var listnode4: nullable Object */;
3178 short int var10
/* : Bool */;
3181 val
* var13
/* : null */;
3182 short int var14
/* : Bool */;
3183 val
* var15
/* : Array[Object] */;
3184 val
* var16
/* : AExternCalls */;
3185 val
* var_pexterncallsnode1
/* var pexterncallsnode1: nullable AExternCalls */;
3186 long var17
/* : Int */;
3187 long var18
/* : Int */;
3190 var_node_list
= var
;
3191 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3192 var_nodearraylist4
= var1
;
3193 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3194 var_nodearraylist3
= var2
;
3195 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3196 var_nodearraylist2
= var3
;
3197 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3198 var_nodearraylist1
= var4
;
3199 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
3200 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
3201 var_listnode5
= var5
;
3202 var_tkwimportnode2
= var_nodearraylist1
;
3203 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
3204 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
3205 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
3206 if(var_tkwimportnode2
== NULL
) {
3209 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
3212 var6
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
3216 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3217 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23356);
3220 var_pexterncallnode3
= var_nodearraylist3
;
3221 /* <var_pexterncallnode3:nullable Object> isa nullable AExternCall */
3222 cltype8
= type_nullable_parser_nodes__AExternCall
.color
;
3223 idtype9
= type_nullable_parser_nodes__AExternCall
.id
;
3224 if(var_pexterncallnode3
== NULL
) {
3227 if(cltype8
>= var_pexterncallnode3
->type
->table_size
) {
3230 var7
= var_pexterncallnode3
->type
->type_table
[cltype8
] == idtype9
;
3234 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3235 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23358);
3238 var_listnode4
= var_nodearraylist4
;
3239 /* <var_listnode4:nullable Object> isa Array[Object] */
3240 cltype11
= type_array__Arraykernel__Object
.color
;
3241 idtype12
= type_array__Arraykernel__Object
.id
;
3242 if(var_listnode4
== NULL
) {
3245 if(cltype11
>= var_listnode4
->type
->table_size
) {
3248 var10
= var_listnode4
->type
->type_table
[cltype11
] == idtype12
;
3252 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3253 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23360);
3257 if (var_pexterncallnode3
== NULL
) {
3258 var14
= 0; /* is null */
3260 var14
= 1; /* arg is null and recv is not */
3263 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pexterncallnode3
) /* add on <var_listnode5:Array[Object]>*/;
3266 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction562>*/;
3267 var_listnode5
= var15
;
3268 var16
= NEW_parser_nodes__AExternCalls(&type_parser_nodes__AExternCalls
);
3269 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AExternCalls__init_aexterncalls
]))(var16
, var_tkwimportnode2
, var_listnode5
) /* init_aexterncalls on <var16:AExternCalls>*/;
3270 var_pexterncallsnode1
= var16
;
3271 var_node_list
= var_pexterncallsnode1
;
3272 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction562> */
3273 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
3274 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
3277 /* method parser#ReduceAction562#action for (self: Object, Parser) */
3278 void VIRTUAL_parser__ReduceAction562__action(val
* self
, val
* p0
) {
3279 parser__ReduceAction562__action(self
, p0
);
3282 /* method parser#ReduceAction563#action for (self: ReduceAction563, Parser) */
3283 void parser__ReduceAction563__action(val
* self
, val
* p0
) {
3284 val
* var_p
/* var p: Parser */;
3285 val
* var
/* : null */;
3286 val
* var_node_list
/* var node_list: nullable Object */;
3287 val
* var1
/* : nullable Object */;
3288 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3289 val
* var2
/* : nullable Object */;
3290 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3291 val
* var3
/* : nullable Object */;
3292 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3293 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable Object */;
3294 long var4
/* : Int */;
3295 long var5
/* : Int */;
3298 var_node_list
= var
;
3299 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3300 var_nodearraylist3
= var1
;
3301 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3302 var_nodearraylist2
= var2
;
3303 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3304 var_nodearraylist1
= var3
;
3305 var_pexterncallnode1
= var_nodearraylist3
;
3306 var_node_list
= var_pexterncallnode1
;
3307 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction563> */
3308 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3309 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3312 /* method parser#ReduceAction563#action for (self: Object, Parser) */
3313 void VIRTUAL_parser__ReduceAction563__action(val
* self
, val
* p0
) {
3314 parser__ReduceAction563__action(self
, p0
);
3317 /* method parser#ReduceAction564#action for (self: ReduceAction564, Parser) */
3318 void parser__ReduceAction564__action(val
* self
, val
* p0
) {
3319 val
* var_p
/* var p: Parser */;
3320 val
* var
/* : null */;
3321 val
* var_node_list
/* var node_list: nullable Object */;
3322 val
* var1
/* : nullable Object */;
3323 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3324 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable Object */;
3325 long var2
/* : Int */;
3326 long var3
/* : Int */;
3329 var_node_list
= var
;
3330 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3331 var_nodearraylist1
= var1
;
3332 var_pexterncallnode1
= var_nodearraylist1
;
3333 var_node_list
= var_pexterncallnode1
;
3334 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction564> */
3335 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
3336 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
3339 /* method parser#ReduceAction564#action for (self: Object, Parser) */
3340 void VIRTUAL_parser__ReduceAction564__action(val
* self
, val
* p0
) {
3341 parser__ReduceAction564__action(self
, p0
);
3344 /* method parser#ReduceAction566#action for (self: ReduceAction566, Parser) */
3345 void parser__ReduceAction566__action(val
* self
, val
* p0
) {
3346 val
* var_p
/* var p: Parser */;
3347 val
* var
/* : null */;
3348 val
* var_node_list
/* var node_list: nullable Object */;
3349 val
* var1
/* : nullable Object */;
3350 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3351 val
* var_tkwsupernode2
/* var tkwsupernode2: nullable Object */;
3352 short int var2
/* : Bool */;
3355 val
* var3
/* : ASuperExternCall */;
3356 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ASuperExternCall */;
3357 long var4
/* : Int */;
3358 long var5
/* : Int */;
3361 var_node_list
= var
;
3362 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3363 var_nodearraylist1
= var1
;
3364 var_tkwsupernode2
= var_nodearraylist1
;
3365 /* <var_tkwsupernode2:nullable Object> isa nullable TKwsuper */
3366 cltype
= type_nullable_parser_nodes__TKwsuper
.color
;
3367 idtype
= type_nullable_parser_nodes__TKwsuper
.id
;
3368 if(var_tkwsupernode2
== NULL
) {
3371 if(cltype
>= var_tkwsupernode2
->type
->table_size
) {
3374 var2
= var_tkwsupernode2
->type
->type_table
[cltype
] == idtype
;
3378 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3379 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23404);
3382 var3
= NEW_parser_nodes__ASuperExternCall(&type_parser_nodes__ASuperExternCall
);
3383 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASuperExternCall__init_asuperexterncall
]))(var3
, var_tkwsupernode2
) /* init_asuperexterncall on <var3:ASuperExternCall>*/;
3384 var_pexterncallnode1
= var3
;
3385 var_node_list
= var_pexterncallnode1
;
3386 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction566> */
3387 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3388 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3391 /* method parser#ReduceAction566#action for (self: Object, Parser) */
3392 void VIRTUAL_parser__ReduceAction566__action(val
* self
, val
* p0
) {
3393 parser__ReduceAction566__action(self
, p0
);
3396 /* method parser#ReduceAction567#action for (self: ReduceAction567, Parser) */
3397 void parser__ReduceAction567__action(val
* self
, val
* p0
) {
3398 val
* var_p
/* var p: Parser */;
3399 val
* var
/* : null */;
3400 val
* var_node_list
/* var node_list: nullable Object */;
3401 val
* var1
/* : nullable Object */;
3402 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3403 val
* var_pmethidnode2
/* var pmethidnode2: nullable Object */;
3404 short int var2
/* : Bool */;
3407 val
* var3
/* : ALocalPropExternCall */;
3408 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ALocalPropExternCall */;
3409 long var4
/* : Int */;
3410 long var5
/* : Int */;
3413 var_node_list
= var
;
3414 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3415 var_nodearraylist1
= var1
;
3416 var_pmethidnode2
= var_nodearraylist1
;
3417 /* <var_pmethidnode2:nullable Object> isa nullable AMethid */
3418 cltype
= type_nullable_parser_nodes__AMethid
.color
;
3419 idtype
= type_nullable_parser_nodes__AMethid
.id
;
3420 if(var_pmethidnode2
== NULL
) {
3423 if(cltype
>= var_pmethidnode2
->type
->table_size
) {
3426 var2
= var_pmethidnode2
->type
->type_table
[cltype
] == idtype
;
3430 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3431 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23419);
3434 var3
= NEW_parser_nodes__ALocalPropExternCall(&type_parser_nodes__ALocalPropExternCall
);
3435 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALocalPropExternCall__init_alocalpropexterncall
]))(var3
, var_pmethidnode2
) /* init_alocalpropexterncall on <var3:ALocalPropExternCall>*/;
3436 var_pexterncallnode1
= var3
;
3437 var_node_list
= var_pexterncallnode1
;
3438 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction567> */
3439 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3440 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3443 /* method parser#ReduceAction567#action for (self: Object, Parser) */
3444 void VIRTUAL_parser__ReduceAction567__action(val
* self
, val
* p0
) {
3445 parser__ReduceAction567__action(self
, p0
);
3448 /* method parser#ReduceAction568#action for (self: ReduceAction568, Parser) */
3449 void parser__ReduceAction568__action(val
* self
, val
* p0
) {
3450 val
* var_p
/* var p: Parser */;
3451 val
* var
/* : null */;
3452 val
* var_node_list
/* var node_list: nullable Object */;
3453 val
* var1
/* : nullable Object */;
3454 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3455 val
* var2
/* : nullable Object */;
3456 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3457 val
* var3
/* : nullable Object */;
3458 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3459 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
3460 short int var4
/* : Bool */;
3463 val
* var_pmethidnode4
/* var pmethidnode4: nullable Object */;
3464 short int var5
/* : Bool */;
3467 val
* var8
/* : AFullPropExternCall */;
3468 val
* var9
/* : null */;
3469 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AFullPropExternCall */;
3470 long var10
/* : Int */;
3471 long var11
/* : Int */;
3474 var_node_list
= var
;
3475 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3476 var_nodearraylist3
= var1
;
3477 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3478 var_nodearraylist2
= var2
;
3479 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3480 var_nodearraylist1
= var3
;
3481 var_ptypenode2
= var_nodearraylist1
;
3482 /* <var_ptypenode2:nullable Object> isa nullable AType */
3483 cltype
= type_nullable_parser_nodes__AType
.color
;
3484 idtype
= type_nullable_parser_nodes__AType
.id
;
3485 if(var_ptypenode2
== NULL
) {
3488 if(cltype
>= var_ptypenode2
->type
->table_size
) {
3491 var4
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
3495 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3496 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23436);
3499 var_pmethidnode4
= var_nodearraylist3
;
3500 /* <var_pmethidnode4:nullable Object> isa nullable AMethid */
3501 cltype6
= type_nullable_parser_nodes__AMethid
.color
;
3502 idtype7
= type_nullable_parser_nodes__AMethid
.id
;
3503 if(var_pmethidnode4
== NULL
) {
3506 if(cltype6
>= var_pmethidnode4
->type
->table_size
) {
3509 var5
= var_pmethidnode4
->type
->type_table
[cltype6
] == idtype7
;
3513 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3514 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23438);
3517 var8
= NEW_parser_nodes__AFullPropExternCall(&type_parser_nodes__AFullPropExternCall
);
3519 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AFullPropExternCall__init_afullpropexterncall
]))(var8
, var_ptypenode2
, var9
, var_pmethidnode4
) /* init_afullpropexterncall on <var8:AFullPropExternCall>*/;
3520 var_pexterncallnode1
= var8
;
3521 var_node_list
= var_pexterncallnode1
;
3522 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction568> */
3523 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
3524 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
3527 /* method parser#ReduceAction568#action for (self: Object, Parser) */
3528 void VIRTUAL_parser__ReduceAction568__action(val
* self
, val
* p0
) {
3529 parser__ReduceAction568__action(self
, p0
);
3532 /* method parser#ReduceAction569#action for (self: ReduceAction569, Parser) */
3533 void parser__ReduceAction569__action(val
* self
, val
* p0
) {
3534 val
* var_p
/* var p: Parser */;
3535 val
* var
/* : null */;
3536 val
* var_node_list
/* var node_list: nullable Object */;
3537 val
* var1
/* : nullable Object */;
3538 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3539 val
* var2
/* : nullable Object */;
3540 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3541 val
* var3
/* : nullable Object */;
3542 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3543 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
3544 short int var4
/* : Bool */;
3547 val
* var_tdotnode3
/* var tdotnode3: nullable Object */;
3548 short int var5
/* : Bool */;
3551 val
* var_pmethidnode4
/* var pmethidnode4: nullable Object */;
3552 short int var8
/* : Bool */;
3555 val
* var11
/* : AFullPropExternCall */;
3556 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AFullPropExternCall */;
3557 long var12
/* : Int */;
3558 long var13
/* : Int */;
3561 var_node_list
= var
;
3562 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3563 var_nodearraylist3
= var1
;
3564 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3565 var_nodearraylist2
= var2
;
3566 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3567 var_nodearraylist1
= var3
;
3568 var_ptypenode2
= var_nodearraylist1
;
3569 /* <var_ptypenode2:nullable Object> isa nullable AType */
3570 cltype
= type_nullable_parser_nodes__AType
.color
;
3571 idtype
= type_nullable_parser_nodes__AType
.id
;
3572 if(var_ptypenode2
== NULL
) {
3575 if(cltype
>= var_ptypenode2
->type
->table_size
) {
3578 var4
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
3582 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3583 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23457);
3586 var_tdotnode3
= var_nodearraylist2
;
3587 /* <var_tdotnode3:nullable Object> isa nullable TDot */
3588 cltype6
= type_nullable_parser_nodes__TDot
.color
;
3589 idtype7
= type_nullable_parser_nodes__TDot
.id
;
3590 if(var_tdotnode3
== NULL
) {
3593 if(cltype6
>= var_tdotnode3
->type
->table_size
) {
3596 var5
= var_tdotnode3
->type
->type_table
[cltype6
] == idtype7
;
3600 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3601 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23459);
3604 var_pmethidnode4
= var_nodearraylist3
;
3605 /* <var_pmethidnode4:nullable Object> isa nullable AMethid */
3606 cltype9
= type_nullable_parser_nodes__AMethid
.color
;
3607 idtype10
= type_nullable_parser_nodes__AMethid
.id
;
3608 if(var_pmethidnode4
== NULL
) {
3611 if(cltype9
>= var_pmethidnode4
->type
->table_size
) {
3614 var8
= var_pmethidnode4
->type
->type_table
[cltype9
] == idtype10
;
3618 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3619 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23461);
3622 var11
= NEW_parser_nodes__AFullPropExternCall(&type_parser_nodes__AFullPropExternCall
);
3623 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AFullPropExternCall__init_afullpropexterncall
]))(var11
, var_ptypenode2
, var_tdotnode3
, var_pmethidnode4
) /* init_afullpropexterncall on <var11:AFullPropExternCall>*/;
3624 var_pexterncallnode1
= var11
;
3625 var_node_list
= var_pexterncallnode1
;
3626 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction569> */
3627 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
3628 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
3631 /* method parser#ReduceAction569#action for (self: Object, Parser) */
3632 void VIRTUAL_parser__ReduceAction569__action(val
* self
, val
* p0
) {
3633 parser__ReduceAction569__action(self
, p0
);
3636 /* method parser#ReduceAction570#action for (self: ReduceAction570, Parser) */
3637 void parser__ReduceAction570__action(val
* self
, val
* p0
) {
3638 val
* var_p
/* var p: Parser */;
3639 val
* var
/* : null */;
3640 val
* var_node_list
/* var node_list: nullable Object */;
3641 val
* var1
/* : nullable Object */;
3642 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3643 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
3644 short int var2
/* : Bool */;
3647 val
* var3
/* : AInitPropExternCall */;
3648 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AInitPropExternCall */;
3649 long var4
/* : Int */;
3650 long var5
/* : Int */;
3653 var_node_list
= var
;
3654 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3655 var_nodearraylist1
= var1
;
3656 var_ptypenode2
= var_nodearraylist1
;
3657 /* <var_ptypenode2:nullable Object> isa nullable AType */
3658 cltype
= type_nullable_parser_nodes__AType
.color
;
3659 idtype
= type_nullable_parser_nodes__AType
.id
;
3660 if(var_ptypenode2
== NULL
) {
3663 if(cltype
>= var_ptypenode2
->type
->table_size
) {
3666 var2
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
3670 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3671 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23478);
3674 var3
= NEW_parser_nodes__AInitPropExternCall(&type_parser_nodes__AInitPropExternCall
);
3675 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AInitPropExternCall__init_ainitpropexterncall
]))(var3
, var_ptypenode2
) /* init_ainitpropexterncall on <var3:AInitPropExternCall>*/;
3676 var_pexterncallnode1
= var3
;
3677 var_node_list
= var_pexterncallnode1
;
3678 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction570> */
3679 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3680 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3683 /* method parser#ReduceAction570#action for (self: Object, Parser) */
3684 void VIRTUAL_parser__ReduceAction570__action(val
* self
, val
* p0
) {
3685 parser__ReduceAction570__action(self
, p0
);
3688 /* method parser#ReduceAction571#action for (self: ReduceAction571, Parser) */
3689 void parser__ReduceAction571__action(val
* self
, val
* p0
) {
3690 val
* var_p
/* var p: Parser */;
3691 val
* var
/* : null */;
3692 val
* var_node_list
/* var node_list: nullable Object */;
3693 val
* var1
/* : nullable Object */;
3694 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3695 val
* var2
/* : nullable Object */;
3696 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3697 val
* var3
/* : nullable Object */;
3698 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3699 val
* var4
/* : nullable Object */;
3700 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3701 val
* var5
/* : nullable Object */;
3702 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3703 val
* var6
/* : nullable Object */;
3704 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3705 val
* var7
/* : nullable Object */;
3706 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3707 val
* var8
/* : nullable Object */;
3708 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3709 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
3710 short int var9
/* : Bool */;
3713 val
* var_tkwasnode4
/* var tkwasnode4: nullable Object */;
3714 short int var10
/* : Bool */;
3717 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
3718 short int var13
/* : Bool */;
3721 val
* var16
/* : ACastAsExternCall */;
3722 val
* var17
/* : null */;
3723 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ACastAsExternCall */;
3724 long var18
/* : Int */;
3725 long var19
/* : Int */;
3728 var_node_list
= var
;
3729 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3730 var_nodearraylist8
= var1
;
3731 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3732 var_nodearraylist7
= var2
;
3733 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3734 var_nodearraylist6
= var3
;
3735 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3736 var_nodearraylist5
= var4
;
3737 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3738 var_nodearraylist4
= var5
;
3739 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3740 var_nodearraylist3
= var6
;
3741 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3742 var_nodearraylist2
= var7
;
3743 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3744 var_nodearraylist1
= var8
;
3745 var_ptypenode2
= var_nodearraylist1
;
3746 /* <var_ptypenode2:nullable Object> isa nullable AType */
3747 cltype
= type_nullable_parser_nodes__AType
.color
;
3748 idtype
= type_nullable_parser_nodes__AType
.id
;
3749 if(var_ptypenode2
== NULL
) {
3752 if(cltype
>= var_ptypenode2
->type
->table_size
) {
3755 var9
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
3759 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3760 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23500);
3763 var_tkwasnode4
= var_nodearraylist2
;
3764 /* <var_tkwasnode4:nullable Object> isa nullable TKwas */
3765 cltype11
= type_nullable_parser_nodes__TKwas
.color
;
3766 idtype12
= type_nullable_parser_nodes__TKwas
.id
;
3767 if(var_tkwasnode4
== NULL
) {
3770 if(cltype11
>= var_tkwasnode4
->type
->table_size
) {
3773 var10
= var_tkwasnode4
->type
->type_table
[cltype11
] == idtype12
;
3777 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3778 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23502);
3781 var_ptypenode5
= var_nodearraylist6
;
3782 /* <var_ptypenode5:nullable Object> isa nullable AType */
3783 cltype14
= type_nullable_parser_nodes__AType
.color
;
3784 idtype15
= type_nullable_parser_nodes__AType
.id
;
3785 if(var_ptypenode5
== NULL
) {
3788 if(cltype14
>= var_ptypenode5
->type
->table_size
) {
3791 var13
= var_ptypenode5
->type
->type_table
[cltype14
] == idtype15
;
3795 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3796 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23504);
3799 var16
= NEW_parser_nodes__ACastAsExternCall(&type_parser_nodes__ACastAsExternCall
);
3801 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ACastAsExternCall__init_acastasexterncall
]))(var16
, var_ptypenode2
, var17
, var_tkwasnode4
, var_ptypenode5
) /* init_acastasexterncall on <var16:ACastAsExternCall>*/;
3802 var_pexterncallnode1
= var16
;
3803 var_node_list
= var_pexterncallnode1
;
3804 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction571> */
3805 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
3806 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
3809 /* method parser#ReduceAction571#action for (self: Object, Parser) */
3810 void VIRTUAL_parser__ReduceAction571__action(val
* self
, val
* p0
) {
3811 parser__ReduceAction571__action(self
, p0
);
3814 /* method parser#ReduceAction572#action for (self: ReduceAction572, Parser) */
3815 void parser__ReduceAction572__action(val
* self
, val
* p0
) {
3816 val
* var_p
/* var p: Parser */;
3817 val
* var
/* : null */;
3818 val
* var_node_list
/* var node_list: nullable Object */;
3819 val
* var1
/* : nullable Object */;
3820 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
3821 val
* var2
/* : nullable Object */;
3822 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3823 val
* var3
/* : nullable Object */;
3824 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3825 val
* var4
/* : nullable Object */;
3826 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3827 val
* var5
/* : nullable Object */;
3828 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3829 val
* var6
/* : nullable Object */;
3830 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3831 val
* var7
/* : nullable Object */;
3832 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3833 val
* var8
/* : nullable Object */;
3834 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3835 val
* var9
/* : nullable Object */;
3836 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3837 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
3838 short int var10
/* : Bool */;
3841 val
* var_tdotnode3
/* var tdotnode3: nullable Object */;
3842 short int var11
/* : Bool */;
3845 val
* var_tkwasnode4
/* var tkwasnode4: nullable Object */;
3846 short int var14
/* : Bool */;
3849 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
3850 short int var17
/* : Bool */;
3853 val
* var20
/* : ACastAsExternCall */;
3854 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ACastAsExternCall */;
3855 long var21
/* : Int */;
3856 long var22
/* : Int */;
3859 var_node_list
= var
;
3860 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3861 var_nodearraylist9
= var1
;
3862 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3863 var_nodearraylist8
= var2
;
3864 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3865 var_nodearraylist7
= var3
;
3866 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3867 var_nodearraylist6
= var4
;
3868 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3869 var_nodearraylist5
= var5
;
3870 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3871 var_nodearraylist4
= var6
;
3872 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3873 var_nodearraylist3
= var7
;
3874 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3875 var_nodearraylist2
= var8
;
3876 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3877 var_nodearraylist1
= var9
;
3878 var_ptypenode2
= var_nodearraylist1
;
3879 /* <var_ptypenode2:nullable Object> isa nullable AType */
3880 cltype
= type_nullable_parser_nodes__AType
.color
;
3881 idtype
= type_nullable_parser_nodes__AType
.id
;
3882 if(var_ptypenode2
== NULL
) {
3885 if(cltype
>= var_ptypenode2
->type
->table_size
) {
3888 var10
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
3892 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3893 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23530);
3896 var_tdotnode3
= var_nodearraylist2
;
3897 /* <var_tdotnode3:nullable Object> isa nullable TDot */
3898 cltype12
= type_nullable_parser_nodes__TDot
.color
;
3899 idtype13
= type_nullable_parser_nodes__TDot
.id
;
3900 if(var_tdotnode3
== NULL
) {
3903 if(cltype12
>= var_tdotnode3
->type
->table_size
) {
3906 var11
= var_tdotnode3
->type
->type_table
[cltype12
] == idtype13
;
3910 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3911 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23532);
3914 var_tkwasnode4
= var_nodearraylist3
;
3915 /* <var_tkwasnode4:nullable Object> isa nullable TKwas */
3916 cltype15
= type_nullable_parser_nodes__TKwas
.color
;
3917 idtype16
= type_nullable_parser_nodes__TKwas
.id
;
3918 if(var_tkwasnode4
== NULL
) {
3921 if(cltype15
>= var_tkwasnode4
->type
->table_size
) {
3924 var14
= var_tkwasnode4
->type
->type_table
[cltype15
] == idtype16
;
3928 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3929 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23534);
3932 var_ptypenode5
= var_nodearraylist7
;
3933 /* <var_ptypenode5:nullable Object> isa nullable AType */
3934 cltype18
= type_nullable_parser_nodes__AType
.color
;
3935 idtype19
= type_nullable_parser_nodes__AType
.id
;
3936 if(var_ptypenode5
== NULL
) {
3939 if(cltype18
>= var_ptypenode5
->type
->table_size
) {
3942 var17
= var_ptypenode5
->type
->type_table
[cltype18
] == idtype19
;
3946 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3947 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23536);
3950 var20
= NEW_parser_nodes__ACastAsExternCall(&type_parser_nodes__ACastAsExternCall
);
3951 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__ACastAsExternCall__init_acastasexterncall
]))(var20
, var_ptypenode2
, var_tdotnode3
, var_tkwasnode4
, var_ptypenode5
) /* init_acastasexterncall on <var20:ACastAsExternCall>*/;
3952 var_pexterncallnode1
= var20
;
3953 var_node_list
= var_pexterncallnode1
;
3954 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction572> */
3955 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
3956 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
3959 /* method parser#ReduceAction572#action for (self: Object, Parser) */
3960 void VIRTUAL_parser__ReduceAction572__action(val
* self
, val
* p0
) {
3961 parser__ReduceAction572__action(self
, p0
);
3964 /* method parser#ReduceAction573#action for (self: ReduceAction573, Parser) */
3965 void parser__ReduceAction573__action(val
* self
, val
* p0
) {
3966 val
* var_p
/* var p: Parser */;
3967 val
* var
/* : null */;
3968 val
* var_node_list
/* var node_list: nullable Object */;
3969 val
* var1
/* : nullable Object */;
3970 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3971 val
* var2
/* : nullable Object */;
3972 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3973 val
* var3
/* : nullable Object */;
3974 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3975 val
* var4
/* : nullable Object */;
3976 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3977 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
3978 short int var5
/* : Bool */;
3981 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
3982 short int var6
/* : Bool */;
3985 val
* var_tkwnullablenode4
/* var tkwnullablenode4: nullable Object */;
3986 short int var9
/* : Bool */;
3989 val
* var12
/* : AAsNullableExternCall */;
3990 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNullableExternCall */;
3991 long var13
/* : Int */;
3992 long var14
/* : Int */;
3995 var_node_list
= var
;
3996 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3997 var_nodearraylist4
= var1
;
3998 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3999 var_nodearraylist3
= var2
;
4000 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4001 var_nodearraylist2
= var3
;
4002 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4003 var_nodearraylist1
= var4
;
4004 var_ptypenode2
= var_nodearraylist1
;
4005 /* <var_ptypenode2:nullable Object> isa nullable AType */
4006 cltype
= type_nullable_parser_nodes__AType
.color
;
4007 idtype
= type_nullable_parser_nodes__AType
.id
;
4008 if(var_ptypenode2
== NULL
) {
4011 if(cltype
>= var_ptypenode2
->type
->table_size
) {
4014 var5
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
4018 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4019 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23557);
4022 var_tkwasnode3
= var_nodearraylist2
;
4023 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
4024 cltype7
= type_nullable_parser_nodes__TKwas
.color
;
4025 idtype8
= type_nullable_parser_nodes__TKwas
.id
;
4026 if(var_tkwasnode3
== NULL
) {
4029 if(cltype7
>= var_tkwasnode3
->type
->table_size
) {
4032 var6
= var_tkwasnode3
->type
->type_table
[cltype7
] == idtype8
;
4036 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4037 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23559);
4040 var_tkwnullablenode4
= var_nodearraylist4
;
4041 /* <var_tkwnullablenode4:nullable Object> isa nullable TKwnullable */
4042 cltype10
= type_nullable_parser_nodes__TKwnullable
.color
;
4043 idtype11
= type_nullable_parser_nodes__TKwnullable
.id
;
4044 if(var_tkwnullablenode4
== NULL
) {
4047 if(cltype10
>= var_tkwnullablenode4
->type
->table_size
) {
4050 var9
= var_tkwnullablenode4
->type
->type_table
[cltype10
] == idtype11
;
4054 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4055 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23561);
4058 var12
= NEW_parser_nodes__AAsNullableExternCall(&type_parser_nodes__AAsNullableExternCall
);
4059 ((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>*/;
4060 var_pexterncallnode1
= var12
;
4061 var_node_list
= var_pexterncallnode1
;
4062 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction573> */
4063 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
4064 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
4067 /* method parser#ReduceAction573#action for (self: Object, Parser) */
4068 void VIRTUAL_parser__ReduceAction573__action(val
* self
, val
* p0
) {
4069 parser__ReduceAction573__action(self
, p0
);
4072 /* method parser#ReduceAction574#action for (self: ReduceAction574, Parser) */
4073 void parser__ReduceAction574__action(val
* self
, val
* p0
) {
4074 val
* var_p
/* var p: Parser */;
4075 val
* var
/* : null */;
4076 val
* var_node_list
/* var node_list: nullable Object */;
4077 val
* var1
/* : nullable Object */;
4078 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4079 val
* var2
/* : nullable Object */;
4080 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4081 val
* var3
/* : nullable Object */;
4082 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4083 val
* var4
/* : nullable Object */;
4084 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4085 val
* var5
/* : nullable Object */;
4086 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4087 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
4088 short int var6
/* : Bool */;
4091 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
4092 short int var7
/* : Bool */;
4095 val
* var_tkwnullablenode4
/* var tkwnullablenode4: nullable Object */;
4096 short int var10
/* : Bool */;
4099 val
* var13
/* : AAsNullableExternCall */;
4100 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNullableExternCall */;
4101 long var14
/* : Int */;
4102 long var15
/* : Int */;
4105 var_node_list
= var
;
4106 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4107 var_nodearraylist5
= var1
;
4108 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4109 var_nodearraylist4
= var2
;
4110 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4111 var_nodearraylist3
= var3
;
4112 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4113 var_nodearraylist2
= var4
;
4114 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4115 var_nodearraylist1
= var5
;
4116 var_ptypenode2
= var_nodearraylist1
;
4117 /* <var_ptypenode2:nullable Object> isa nullable AType */
4118 cltype
= type_nullable_parser_nodes__AType
.color
;
4119 idtype
= type_nullable_parser_nodes__AType
.id
;
4120 if(var_ptypenode2
== NULL
) {
4123 if(cltype
>= var_ptypenode2
->type
->table_size
) {
4126 var6
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
4130 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4131 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23582);
4134 var_tkwasnode3
= var_nodearraylist3
;
4135 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
4136 cltype8
= type_nullable_parser_nodes__TKwas
.color
;
4137 idtype9
= type_nullable_parser_nodes__TKwas
.id
;
4138 if(var_tkwasnode3
== NULL
) {
4141 if(cltype8
>= var_tkwasnode3
->type
->table_size
) {
4144 var7
= var_tkwasnode3
->type
->type_table
[cltype8
] == idtype9
;
4148 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4149 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23584);
4152 var_tkwnullablenode4
= var_nodearraylist5
;
4153 /* <var_tkwnullablenode4:nullable Object> isa nullable TKwnullable */
4154 cltype11
= type_nullable_parser_nodes__TKwnullable
.color
;
4155 idtype12
= type_nullable_parser_nodes__TKwnullable
.id
;
4156 if(var_tkwnullablenode4
== NULL
) {
4159 if(cltype11
>= var_tkwnullablenode4
->type
->table_size
) {
4162 var10
= var_tkwnullablenode4
->type
->type_table
[cltype11
] == idtype12
;
4166 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4167 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23586);
4170 var13
= NEW_parser_nodes__AAsNullableExternCall(&type_parser_nodes__AAsNullableExternCall
);
4171 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AAsNullableExternCall__init_aasnullableexterncall
]))(var13
, var_ptypenode2
, var_tkwasnode3
, var_tkwnullablenode4
) /* init_aasnullableexterncall on <var13:AAsNullableExternCall>*/;
4172 var_pexterncallnode1
= var13
;
4173 var_node_list
= var_pexterncallnode1
;
4174 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction574> */
4175 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
4176 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
4179 /* method parser#ReduceAction574#action for (self: Object, Parser) */
4180 void VIRTUAL_parser__ReduceAction574__action(val
* self
, val
* p0
) {
4181 parser__ReduceAction574__action(self
, p0
);
4184 /* method parser#ReduceAction575#action for (self: ReduceAction575, Parser) */
4185 void parser__ReduceAction575__action(val
* self
, val
* p0
) {
4186 val
* var_p
/* var p: Parser */;
4187 val
* var
/* : null */;
4188 val
* var_node_list
/* var node_list: nullable Object */;
4189 val
* var1
/* : nullable Object */;
4190 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4191 val
* var2
/* : nullable Object */;
4192 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4193 val
* var3
/* : nullable Object */;
4194 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4195 val
* var4
/* : nullable Object */;
4196 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4197 val
* var5
/* : nullable Object */;
4198 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4199 val
* var6
/* : nullable Object */;
4200 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4201 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
4202 short int var7
/* : Bool */;
4205 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
4206 short int var8
/* : Bool */;
4209 val
* var_tkwnotnode4
/* var tkwnotnode4: nullable Object */;
4210 short int var11
/* : Bool */;
4213 val
* var_tkwnullablenode5
/* var tkwnullablenode5: nullable Object */;
4214 short int var14
/* : Bool */;
4217 val
* var17
/* : AAsNotNullableExternCall */;
4218 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNotNullableExternCall */;
4219 long var18
/* : Int */;
4220 long var19
/* : Int */;
4223 var_node_list
= var
;
4224 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4225 var_nodearraylist6
= var1
;
4226 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4227 var_nodearraylist5
= var2
;
4228 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4229 var_nodearraylist4
= var3
;
4230 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4231 var_nodearraylist3
= var4
;
4232 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4233 var_nodearraylist2
= var5
;
4234 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4235 var_nodearraylist1
= var6
;
4236 var_ptypenode2
= var_nodearraylist1
;
4237 /* <var_ptypenode2:nullable Object> isa nullable AType */
4238 cltype
= type_nullable_parser_nodes__AType
.color
;
4239 idtype
= type_nullable_parser_nodes__AType
.id
;
4240 if(var_ptypenode2
== NULL
) {
4243 if(cltype
>= var_ptypenode2
->type
->table_size
) {
4246 var7
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
4250 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4251 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23608);
4254 var_tkwasnode3
= var_nodearraylist2
;
4255 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
4256 cltype9
= type_nullable_parser_nodes__TKwas
.color
;
4257 idtype10
= type_nullable_parser_nodes__TKwas
.id
;
4258 if(var_tkwasnode3
== NULL
) {
4261 if(cltype9
>= var_tkwasnode3
->type
->table_size
) {
4264 var8
= var_tkwasnode3
->type
->type_table
[cltype9
] == idtype10
;
4268 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4269 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23610);
4272 var_tkwnotnode4
= var_nodearraylist4
;
4273 /* <var_tkwnotnode4:nullable Object> isa nullable TKwnot */
4274 cltype12
= type_nullable_parser_nodes__TKwnot
.color
;
4275 idtype13
= type_nullable_parser_nodes__TKwnot
.id
;
4276 if(var_tkwnotnode4
== NULL
) {
4279 if(cltype12
>= var_tkwnotnode4
->type
->table_size
) {
4282 var11
= var_tkwnotnode4
->type
->type_table
[cltype12
] == idtype13
;
4286 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4287 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23612);
4290 var_tkwnullablenode5
= var_nodearraylist6
;
4291 /* <var_tkwnullablenode5:nullable Object> isa nullable TKwnullable */
4292 cltype15
= type_nullable_parser_nodes__TKwnullable
.color
;
4293 idtype16
= type_nullable_parser_nodes__TKwnullable
.id
;
4294 if(var_tkwnullablenode5
== NULL
) {
4297 if(cltype15
>= var_tkwnullablenode5
->type
->table_size
) {
4300 var14
= var_tkwnullablenode5
->type
->type_table
[cltype15
] == idtype16
;
4304 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4305 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23614);
4308 var17
= NEW_parser_nodes__AAsNotNullableExternCall(&type_parser_nodes__AAsNotNullableExternCall
);
4309 ((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>*/;
4310 var_pexterncallnode1
= var17
;
4311 var_node_list
= var_pexterncallnode1
;
4312 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction575> */
4313 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
4314 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
4317 /* method parser#ReduceAction575#action for (self: Object, Parser) */
4318 void VIRTUAL_parser__ReduceAction575__action(val
* self
, val
* p0
) {
4319 parser__ReduceAction575__action(self
, p0
);
4322 /* method parser#ReduceAction576#action for (self: ReduceAction576, Parser) */
4323 void parser__ReduceAction576__action(val
* self
, val
* p0
) {
4324 val
* var_p
/* var p: Parser */;
4325 val
* var
/* : null */;
4326 val
* var_node_list
/* var node_list: nullable Object */;
4327 val
* var1
/* : nullable Object */;
4328 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4329 val
* var2
/* : nullable Object */;
4330 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4331 val
* var3
/* : nullable Object */;
4332 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4333 val
* var4
/* : nullable Object */;
4334 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4335 val
* var5
/* : nullable Object */;
4336 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4337 val
* var6
/* : nullable Object */;
4338 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4339 val
* var7
/* : nullable Object */;
4340 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4341 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
4342 short int var8
/* : Bool */;
4345 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
4346 short int var9
/* : Bool */;
4349 val
* var_tkwnotnode4
/* var tkwnotnode4: nullable Object */;
4350 short int var12
/* : Bool */;
4353 val
* var_tkwnullablenode5
/* var tkwnullablenode5: nullable Object */;
4354 short int var15
/* : Bool */;
4357 val
* var18
/* : AAsNotNullableExternCall */;
4358 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNotNullableExternCall */;
4359 long var19
/* : Int */;
4360 long var20
/* : Int */;
4363 var_node_list
= var
;
4364 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4365 var_nodearraylist7
= var1
;
4366 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4367 var_nodearraylist6
= var2
;
4368 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4369 var_nodearraylist5
= var3
;
4370 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4371 var_nodearraylist4
= var4
;
4372 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4373 var_nodearraylist3
= var5
;
4374 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4375 var_nodearraylist2
= var6
;
4376 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4377 var_nodearraylist1
= var7
;
4378 var_ptypenode2
= var_nodearraylist1
;
4379 /* <var_ptypenode2:nullable Object> isa nullable AType */
4380 cltype
= type_nullable_parser_nodes__AType
.color
;
4381 idtype
= type_nullable_parser_nodes__AType
.id
;
4382 if(var_ptypenode2
== NULL
) {
4385 if(cltype
>= var_ptypenode2
->type
->table_size
) {
4388 var8
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
4392 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4393 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23638);
4396 var_tkwasnode3
= var_nodearraylist3
;
4397 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
4398 cltype10
= type_nullable_parser_nodes__TKwas
.color
;
4399 idtype11
= type_nullable_parser_nodes__TKwas
.id
;
4400 if(var_tkwasnode3
== NULL
) {
4403 if(cltype10
>= var_tkwasnode3
->type
->table_size
) {
4406 var9
= var_tkwasnode3
->type
->type_table
[cltype10
] == idtype11
;
4410 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4411 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23640);
4414 var_tkwnotnode4
= var_nodearraylist5
;
4415 /* <var_tkwnotnode4:nullable Object> isa nullable TKwnot */
4416 cltype13
= type_nullable_parser_nodes__TKwnot
.color
;
4417 idtype14
= type_nullable_parser_nodes__TKwnot
.id
;
4418 if(var_tkwnotnode4
== NULL
) {
4421 if(cltype13
>= var_tkwnotnode4
->type
->table_size
) {
4424 var12
= var_tkwnotnode4
->type
->type_table
[cltype13
] == idtype14
;
4428 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4429 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23642);
4432 var_tkwnullablenode5
= var_nodearraylist7
;
4433 /* <var_tkwnullablenode5:nullable Object> isa nullable TKwnullable */
4434 cltype16
= type_nullable_parser_nodes__TKwnullable
.color
;
4435 idtype17
= type_nullable_parser_nodes__TKwnullable
.id
;
4436 if(var_tkwnullablenode5
== NULL
) {
4439 if(cltype16
>= var_tkwnullablenode5
->type
->table_size
) {
4442 var15
= var_tkwnullablenode5
->type
->type_table
[cltype16
] == idtype17
;
4446 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4447 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23644);
4450 var18
= NEW_parser_nodes__AAsNotNullableExternCall(&type_parser_nodes__AAsNotNullableExternCall
);
4451 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__AAsNotNullableExternCall__init_aasnotnullableexterncall
]))(var18
, var_ptypenode2
, var_tkwasnode3
, var_tkwnotnode4
, var_tkwnullablenode5
) /* init_aasnotnullableexterncall on <var18:AAsNotNullableExternCall>*/;
4452 var_pexterncallnode1
= var18
;
4453 var_node_list
= var_pexterncallnode1
;
4454 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction576> */
4455 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
4456 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
4459 /* method parser#ReduceAction576#action for (self: Object, Parser) */
4460 void VIRTUAL_parser__ReduceAction576__action(val
* self
, val
* p0
) {
4461 parser__ReduceAction576__action(self
, p0
);
4464 /* method parser#ReduceAction577#action for (self: ReduceAction577, Parser) */
4465 void parser__ReduceAction577__action(val
* self
, val
* p0
) {
4466 val
* var_p
/* var p: Parser */;
4467 val
* var
/* : null */;
4468 val
* var_node_list
/* var node_list: nullable Object */;
4469 val
* var1
/* : nullable Object */;
4470 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4471 val
* var2
/* : nullable Object */;
4472 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4473 val
* var_tkwinnode2
/* var tkwinnode2: nullable Object */;
4474 short int var3
/* : Bool */;
4477 val
* var_tstringnode3
/* var tstringnode3: nullable Object */;
4478 short int var4
/* : Bool */;
4481 val
* var7
/* : AInLanguage */;
4482 val
* var_pinlanguagenode1
/* var pinlanguagenode1: nullable AInLanguage */;
4483 long var8
/* : Int */;
4484 long var9
/* : Int */;
4487 var_node_list
= var
;
4488 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4489 var_nodearraylist2
= var1
;
4490 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4491 var_nodearraylist1
= var2
;
4492 var_tkwinnode2
= var_nodearraylist1
;
4493 /* <var_tkwinnode2:nullable Object> isa nullable TKwin */
4494 cltype
= type_nullable_parser_nodes__TKwin
.color
;
4495 idtype
= type_nullable_parser_nodes__TKwin
.id
;
4496 if(var_tkwinnode2
== NULL
) {
4499 if(cltype
>= var_tkwinnode2
->type
->table_size
) {
4502 var3
= var_tkwinnode2
->type
->type_table
[cltype
] == idtype
;
4506 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4507 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23663);
4510 var_tstringnode3
= var_nodearraylist2
;
4511 /* <var_tstringnode3:nullable Object> isa nullable TString */
4512 cltype5
= type_nullable_parser_nodes__TString
.color
;
4513 idtype6
= type_nullable_parser_nodes__TString
.id
;
4514 if(var_tstringnode3
== NULL
) {
4517 if(cltype5
>= var_tstringnode3
->type
->table_size
) {
4520 var4
= var_tstringnode3
->type
->type_table
[cltype5
] == idtype6
;
4524 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4525 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23665);
4528 var7
= NEW_parser_nodes__AInLanguage(&type_parser_nodes__AInLanguage
);
4529 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AInLanguage__init_ainlanguage
]))(var7
, var_tkwinnode2
, var_tstringnode3
) /* init_ainlanguage on <var7:AInLanguage>*/;
4530 var_pinlanguagenode1
= var7
;
4531 var_node_list
= var_pinlanguagenode1
;
4532 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction577> */
4533 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
4534 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
4537 /* method parser#ReduceAction577#action for (self: Object, Parser) */
4538 void VIRTUAL_parser__ReduceAction577__action(val
* self
, val
* p0
) {
4539 parser__ReduceAction577__action(self
, p0
);
4542 /* method parser#ReduceAction578#action for (self: ReduceAction578, Parser) */
4543 void parser__ReduceAction578__action(val
* self
, val
* p0
) {
4544 val
* var_p
/* var p: Parser */;
4545 val
* var
/* : null */;
4546 val
* var_node_list
/* var node_list: nullable Object */;
4547 val
* var1
/* : nullable Object */;
4548 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4549 val
* var_texterncodesegmentnode3
/* var texterncodesegmentnode3: nullable Object */;
4550 short int var2
/* : Bool */;
4553 val
* var3
/* : AExternCodeBlock */;
4554 val
* var4
/* : null */;
4555 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable AExternCodeBlock */;
4556 long var5
/* : Int */;
4557 long var6
/* : Int */;
4560 var_node_list
= var
;
4561 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4562 var_nodearraylist1
= var1
;
4563 var_texterncodesegmentnode3
= var_nodearraylist1
;
4564 /* <var_texterncodesegmentnode3:nullable Object> isa nullable TExternCodeSegment */
4565 cltype
= type_nullable_parser_nodes__TExternCodeSegment
.color
;
4566 idtype
= type_nullable_parser_nodes__TExternCodeSegment
.id
;
4567 if(var_texterncodesegmentnode3
== NULL
) {
4570 if(cltype
>= var_texterncodesegmentnode3
->type
->table_size
) {
4573 var2
= var_texterncodesegmentnode3
->type
->type_table
[cltype
] == idtype
;
4577 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4578 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23681);
4581 var3
= NEW_parser_nodes__AExternCodeBlock(&type_parser_nodes__AExternCodeBlock
);
4583 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AExternCodeBlock__init_aexterncodeblock
]))(var3
, var4
, var_texterncodesegmentnode3
) /* init_aexterncodeblock on <var3:AExternCodeBlock>*/;
4584 var_pexterncodeblocknode1
= var3
;
4585 var_node_list
= var_pexterncodeblocknode1
;
4586 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction578> */
4587 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
4588 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
4591 /* method parser#ReduceAction578#action for (self: Object, Parser) */
4592 void VIRTUAL_parser__ReduceAction578__action(val
* self
, val
* p0
) {
4593 parser__ReduceAction578__action(self
, p0
);
4596 /* method parser#ReduceAction579#action for (self: ReduceAction579, Parser) */
4597 void parser__ReduceAction579__action(val
* self
, val
* p0
) {
4598 val
* var_p
/* var p: Parser */;
4599 val
* var
/* : null */;
4600 val
* var_node_list
/* var node_list: nullable Object */;
4601 val
* var1
/* : nullable Object */;
4602 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4603 val
* var2
/* : nullable Object */;
4604 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4605 val
* var_pinlanguagenode2
/* var pinlanguagenode2: nullable Object */;
4606 short int var3
/* : Bool */;
4609 val
* var_texterncodesegmentnode3
/* var texterncodesegmentnode3: nullable Object */;
4610 short int var4
/* : Bool */;
4613 val
* var7
/* : AExternCodeBlock */;
4614 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable AExternCodeBlock */;
4615 long var8
/* : Int */;
4616 long var9
/* : Int */;
4619 var_node_list
= var
;
4620 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4621 var_nodearraylist2
= var1
;
4622 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4623 var_nodearraylist1
= var2
;
4624 var_pinlanguagenode2
= var_nodearraylist1
;
4625 /* <var_pinlanguagenode2:nullable Object> isa nullable AInLanguage */
4626 cltype
= type_nullable_parser_nodes__AInLanguage
.color
;
4627 idtype
= type_nullable_parser_nodes__AInLanguage
.id
;
4628 if(var_pinlanguagenode2
== NULL
) {
4631 if(cltype
>= var_pinlanguagenode2
->type
->table_size
) {
4634 var3
= var_pinlanguagenode2
->type
->type_table
[cltype
] == idtype
;
4638 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4639 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23698);
4642 var_texterncodesegmentnode3
= var_nodearraylist2
;
4643 /* <var_texterncodesegmentnode3:nullable Object> isa nullable TExternCodeSegment */
4644 cltype5
= type_nullable_parser_nodes__TExternCodeSegment
.color
;
4645 idtype6
= type_nullable_parser_nodes__TExternCodeSegment
.id
;
4646 if(var_texterncodesegmentnode3
== NULL
) {
4649 if(cltype5
>= var_texterncodesegmentnode3
->type
->table_size
) {
4652 var4
= var_texterncodesegmentnode3
->type
->type_table
[cltype5
] == idtype6
;
4656 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4657 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23700);
4660 var7
= NEW_parser_nodes__AExternCodeBlock(&type_parser_nodes__AExternCodeBlock
);
4661 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AExternCodeBlock__init_aexterncodeblock
]))(var7
, var_pinlanguagenode2
, var_texterncodesegmentnode3
) /* init_aexterncodeblock on <var7:AExternCodeBlock>*/;
4662 var_pexterncodeblocknode1
= var7
;
4663 var_node_list
= var_pexterncodeblocknode1
;
4664 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction579> */
4665 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
4666 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
4669 /* method parser#ReduceAction579#action for (self: Object, Parser) */
4670 void VIRTUAL_parser__ReduceAction579__action(val
* self
, val
* p0
) {
4671 parser__ReduceAction579__action(self
, p0
);
4674 /* method parser#ReduceAction580#action for (self: ReduceAction580, Parser) */
4675 void parser__ReduceAction580__action(val
* self
, val
* p0
) {
4676 val
* var_p
/* var p: Parser */;
4677 val
* var
/* : null */;
4678 val
* var_node_list
/* var node_list: nullable Object */;
4679 val
* var1
/* : nullable Object */;
4680 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4681 val
* var2
/* : nullable Object */;
4682 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4683 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable Object */;
4684 long var3
/* : Int */;
4685 long var4
/* : Int */;
4688 var_node_list
= var
;
4689 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4690 var_nodearraylist2
= var1
;
4691 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4692 var_nodearraylist1
= var2
;
4693 var_pexterncodeblocknode1
= var_nodearraylist2
;
4694 var_node_list
= var_pexterncodeblocknode1
;
4695 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction580> */
4696 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
4697 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
4700 /* method parser#ReduceAction580#action for (self: Object, Parser) */
4701 void VIRTUAL_parser__ReduceAction580__action(val
* self
, val
* p0
) {
4702 parser__ReduceAction580__action(self
, p0
);
4705 /* method parser#ReduceAction581#action for (self: ReduceAction581, Parser) */
4706 void parser__ReduceAction581__action(val
* self
, val
* p0
) {
4707 val
* var_p
/* var p: Parser */;
4708 val
* var
/* : null */;
4709 val
* var_node_list
/* var node_list: nullable Object */;
4710 val
* var1
/* : nullable Object */;
4711 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4712 val
* var2
/* : Array[Object] */;
4713 val
* var_listnode4
/* var listnode4: Array[Object] */;
4714 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
4715 short int var3
/* : Bool */;
4718 val
* var4
/* : AType */;
4719 val
* var5
/* : null */;
4720 val
* var6
/* : null */;
4721 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
4722 long var7
/* : Int */;
4723 long var8
/* : Int */;
4726 var_node_list
= var
;
4727 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4728 var_nodearraylist1
= var1
;
4729 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
4730 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
4731 var_listnode4
= var2
;
4732 var_tclassidnode3
= var_nodearraylist1
;
4733 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
4734 cltype
= type_nullable_parser_nodes__TClassid
.color
;
4735 idtype
= type_nullable_parser_nodes__TClassid
.id
;
4736 if(var_tclassidnode3
== NULL
) {
4739 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
4742 var3
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
4746 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4747 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23729);
4750 var4
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
4753 ((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>*/;
4754 var_ptypenode1
= var4
;
4755 var_node_list
= var_ptypenode1
;
4756 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction581> */
4757 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
4758 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
4761 /* method parser#ReduceAction581#action for (self: Object, Parser) */
4762 void VIRTUAL_parser__ReduceAction581__action(val
* self
, val
* p0
) {
4763 parser__ReduceAction581__action(self
, p0
);
4766 /* method parser#ReduceAction582#action for (self: ReduceAction582, Parser) */
4767 void parser__ReduceAction582__action(val
* self
, val
* p0
) {
4768 val
* var_p
/* var p: Parser */;
4769 val
* var
/* : null */;
4770 val
* var_node_list
/* var node_list: nullable Object */;
4771 val
* var1
/* : nullable Object */;
4772 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4773 val
* var2
/* : nullable Object */;
4774 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4775 val
* var3
/* : Array[Object] */;
4776 val
* var_listnode4
/* var listnode4: Array[Object] */;
4777 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
4778 short int var4
/* : Bool */;
4781 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
4782 short int var5
/* : Bool */;
4785 val
* var8
/* : AType */;
4786 val
* var9
/* : null */;
4787 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
4788 long var10
/* : Int */;
4789 long var11
/* : Int */;
4792 var_node_list
= var
;
4793 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4794 var_nodearraylist2
= var1
;
4795 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4796 var_nodearraylist1
= var2
;
4797 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
4798 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
4799 var_listnode4
= var3
;
4800 var_tkwnullablenode2
= var_nodearraylist1
;
4801 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
4802 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
4803 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
4804 if(var_tkwnullablenode2
== NULL
) {
4807 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
4810 var4
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
4814 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4815 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23749);
4818 var_tclassidnode3
= var_nodearraylist2
;
4819 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
4820 cltype6
= type_nullable_parser_nodes__TClassid
.color
;
4821 idtype7
= type_nullable_parser_nodes__TClassid
.id
;
4822 if(var_tclassidnode3
== NULL
) {
4825 if(cltype6
>= var_tclassidnode3
->type
->table_size
) {
4828 var5
= var_tclassidnode3
->type
->type_table
[cltype6
] == idtype7
;
4832 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4833 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23751);
4836 var8
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
4838 ((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>*/;
4839 var_ptypenode1
= var8
;
4840 var_node_list
= var_ptypenode1
;
4841 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction582> */
4842 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
4843 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
4846 /* method parser#ReduceAction582#action for (self: Object, Parser) */
4847 void VIRTUAL_parser__ReduceAction582__action(val
* self
, val
* p0
) {
4848 parser__ReduceAction582__action(self
, p0
);
4851 /* method parser#ReduceAction583#action for (self: ReduceAction583, Parser) */
4852 void parser__ReduceAction583__action(val
* self
, val
* p0
) {
4853 val
* var_p
/* var p: Parser */;
4854 val
* var
/* : null */;
4855 val
* var_node_list
/* var node_list: nullable Object */;
4856 val
* var1
/* : nullable Object */;
4857 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4858 val
* var2
/* : nullable Object */;
4859 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4860 val
* var3
/* : Array[Object] */;
4861 val
* var_listnode4
/* var listnode4: Array[Object] */;
4862 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
4863 short int var4
/* : Bool */;
4866 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
4867 short int var5
/* : Bool */;
4870 val
* var8
/* : AType */;
4871 val
* var9
/* : null */;
4872 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
4873 long var10
/* : Int */;
4874 long var11
/* : Int */;
4877 var_node_list
= var
;
4878 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4879 var_nodearraylist2
= var1
;
4880 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4881 var_nodearraylist1
= var2
;
4882 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
4883 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
4884 var_listnode4
= var3
;
4885 var_tclassidnode3
= var_nodearraylist1
;
4886 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
4887 cltype
= type_nullable_parser_nodes__TClassid
.color
;
4888 idtype
= type_nullable_parser_nodes__TClassid
.id
;
4889 if(var_tclassidnode3
== NULL
) {
4892 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
4895 var4
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
4899 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4900 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23771);
4903 var_pannotationsnode5
= var_nodearraylist2
;
4904 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
4905 cltype6
= type_nullable_parser_nodes__AAnnotations
.color
;
4906 idtype7
= type_nullable_parser_nodes__AAnnotations
.id
;
4907 if(var_pannotationsnode5
== NULL
) {
4910 if(cltype6
>= var_pannotationsnode5
->type
->table_size
) {
4913 var5
= var_pannotationsnode5
->type
->type_table
[cltype6
] == idtype7
;
4917 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4918 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23773);
4921 var8
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
4923 ((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>*/;
4924 var_ptypenode1
= var8
;
4925 var_node_list
= var_ptypenode1
;
4926 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction583> */
4927 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
4928 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
4931 /* method parser#ReduceAction583#action for (self: Object, Parser) */
4932 void VIRTUAL_parser__ReduceAction583__action(val
* self
, val
* p0
) {
4933 parser__ReduceAction583__action(self
, p0
);
4936 /* method parser#ReduceAction584#action for (self: ReduceAction584, Parser) */
4937 void parser__ReduceAction584__action(val
* self
, val
* p0
) {
4938 val
* var_p
/* var p: Parser */;
4939 val
* var
/* : null */;
4940 val
* var_node_list
/* var node_list: nullable Object */;
4941 val
* var1
/* : nullable Object */;
4942 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4943 val
* var2
/* : nullable Object */;
4944 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4945 val
* var3
/* : nullable Object */;
4946 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4947 val
* var4
/* : Array[Object] */;
4948 val
* var_listnode4
/* var listnode4: Array[Object] */;
4949 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
4950 short int var5
/* : Bool */;
4953 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
4954 short int var6
/* : Bool */;
4957 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
4958 short int var9
/* : Bool */;
4961 val
* var12
/* : AType */;
4962 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
4963 long var13
/* : Int */;
4964 long var14
/* : Int */;
4967 var_node_list
= var
;
4968 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4969 var_nodearraylist3
= var1
;
4970 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4971 var_nodearraylist2
= var2
;
4972 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4973 var_nodearraylist1
= var3
;
4974 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
4975 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
4976 var_listnode4
= var4
;
4977 var_tkwnullablenode2
= var_nodearraylist1
;
4978 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
4979 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
4980 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
4981 if(var_tkwnullablenode2
== NULL
) {
4984 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
4987 var5
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
4991 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4992 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23794);
4995 var_tclassidnode3
= var_nodearraylist2
;
4996 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
4997 cltype7
= type_nullable_parser_nodes__TClassid
.color
;
4998 idtype8
= type_nullable_parser_nodes__TClassid
.id
;
4999 if(var_tclassidnode3
== NULL
) {
5002 if(cltype7
>= var_tclassidnode3
->type
->table_size
) {
5005 var6
= var_tclassidnode3
->type
->type_table
[cltype7
] == idtype8
;
5009 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5010 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23796);
5013 var_pannotationsnode5
= var_nodearraylist3
;
5014 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
5015 cltype10
= type_nullable_parser_nodes__AAnnotations
.color
;
5016 idtype11
= type_nullable_parser_nodes__AAnnotations
.id
;
5017 if(var_pannotationsnode5
== NULL
) {
5020 if(cltype10
>= var_pannotationsnode5
->type
->table_size
) {
5023 var9
= var_pannotationsnode5
->type
->type_table
[cltype10
] == idtype11
;
5027 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5028 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23798);
5031 var12
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
5032 ((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>*/;
5033 var_ptypenode1
= var12
;
5034 var_node_list
= var_ptypenode1
;
5035 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction584> */
5036 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
5037 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
5040 /* method parser#ReduceAction584#action for (self: Object, Parser) */
5041 void VIRTUAL_parser__ReduceAction584__action(val
* self
, val
* p0
) {
5042 parser__ReduceAction584__action(self
, p0
);
5045 /* method parser#ReduceAction585#action for (self: ReduceAction585, Parser) */
5046 void parser__ReduceAction585__action(val
* self
, val
* p0
) {
5047 val
* var_p
/* var p: Parser */;
5048 val
* var
/* : null */;
5049 val
* var_node_list
/* var node_list: nullable Object */;
5050 val
* var1
/* : nullable Object */;
5051 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5052 val
* var2
/* : nullable Object */;
5053 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5054 val
* var3
/* : nullable Object */;
5055 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5056 val
* var4
/* : nullable Object */;
5057 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5058 val
* var5
/* : nullable Object */;
5059 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5060 val
* var6
/* : nullable Object */;
5061 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5062 val
* var7
/* : Array[Object] */;
5063 val
* var_listnode5
/* var listnode5: Array[Object] */;
5064 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
5065 short int var8
/* : Bool */;
5068 val
* var_listnode4
/* var listnode4: nullable Object */;
5069 short int var9
/* : Bool */;
5072 val
* var12
/* : Array[Object] */;
5073 val
* var13
/* : AType */;
5074 val
* var14
/* : null */;
5075 val
* var15
/* : null */;
5076 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
5077 long var16
/* : Int */;
5078 long var17
/* : Int */;
5081 var_node_list
= var
;
5082 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5083 var_nodearraylist6
= var1
;
5084 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5085 var_nodearraylist5
= var2
;
5086 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5087 var_nodearraylist4
= var3
;
5088 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5089 var_nodearraylist3
= var4
;
5090 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5091 var_nodearraylist2
= var5
;
5092 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5093 var_nodearraylist1
= var6
;
5094 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
5095 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
5096 var_listnode5
= var7
;
5097 var_tclassidnode3
= var_nodearraylist1
;
5098 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
5099 cltype
= type_nullable_parser_nodes__TClassid
.color
;
5100 idtype
= type_nullable_parser_nodes__TClassid
.id
;
5101 if(var_tclassidnode3
== NULL
) {
5104 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
5107 var8
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
5111 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5112 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23822);
5115 var_listnode4
= var_nodearraylist4
;
5116 /* <var_listnode4:nullable Object> isa Array[Object] */
5117 cltype10
= type_array__Arraykernel__Object
.color
;
5118 idtype11
= type_array__Arraykernel__Object
.id
;
5119 if(var_listnode4
== NULL
) {
5122 if(cltype10
>= var_listnode4
->type
->table_size
) {
5125 var9
= var_listnode4
->type
->type_table
[cltype10
] == idtype11
;
5129 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5130 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23824);
5133 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction585>*/;
5134 var_listnode5
= var12
;
5135 var13
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
5138 ((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>*/;
5139 var_ptypenode1
= var13
;
5140 var_node_list
= var_ptypenode1
;
5141 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction585> */
5142 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
5143 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
5146 /* method parser#ReduceAction585#action for (self: Object, Parser) */
5147 void VIRTUAL_parser__ReduceAction585__action(val
* self
, val
* p0
) {
5148 parser__ReduceAction585__action(self
, p0
);
5151 /* method parser#ReduceAction586#action for (self: ReduceAction586, Parser) */
5152 void parser__ReduceAction586__action(val
* self
, val
* p0
) {
5153 val
* var_p
/* var p: Parser */;
5154 val
* var
/* : null */;
5155 val
* var_node_list
/* var node_list: nullable Object */;
5156 val
* var1
/* : nullable Object */;
5157 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5158 val
* var2
/* : nullable Object */;
5159 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5160 val
* var3
/* : nullable Object */;
5161 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5162 val
* var4
/* : nullable Object */;
5163 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5164 val
* var5
/* : nullable Object */;
5165 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5166 val
* var6
/* : nullable Object */;
5167 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5168 val
* var7
/* : nullable Object */;
5169 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5170 val
* var8
/* : Array[Object] */;
5171 val
* var_listnode5
/* var listnode5: Array[Object] */;
5172 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
5173 short int var9
/* : Bool */;
5176 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
5177 short int var10
/* : Bool */;
5180 val
* var_listnode4
/* var listnode4: nullable Object */;
5181 short int var13
/* : Bool */;
5184 val
* var16
/* : Array[Object] */;
5185 val
* var17
/* : AType */;
5186 val
* var18
/* : null */;
5187 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
5188 long var19
/* : Int */;
5189 long var20
/* : Int */;
5192 var_node_list
= var
;
5193 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5194 var_nodearraylist7
= var1
;
5195 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5196 var_nodearraylist6
= var2
;
5197 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5198 var_nodearraylist5
= var3
;
5199 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5200 var_nodearraylist4
= var4
;
5201 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5202 var_nodearraylist3
= var5
;
5203 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5204 var_nodearraylist2
= var6
;
5205 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5206 var_nodearraylist1
= var7
;
5207 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
5208 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
5209 var_listnode5
= var8
;
5210 var_tkwnullablenode2
= var_nodearraylist1
;
5211 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
5212 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
5213 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
5214 if(var_tkwnullablenode2
== NULL
) {
5217 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
5220 var9
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
5224 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5225 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23850);
5228 var_tclassidnode3
= var_nodearraylist2
;
5229 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
5230 cltype11
= type_nullable_parser_nodes__TClassid
.color
;
5231 idtype12
= type_nullable_parser_nodes__TClassid
.id
;
5232 if(var_tclassidnode3
== NULL
) {
5235 if(cltype11
>= var_tclassidnode3
->type
->table_size
) {
5238 var10
= var_tclassidnode3
->type
->type_table
[cltype11
] == idtype12
;
5242 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5243 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23852);
5246 var_listnode4
= var_nodearraylist5
;
5247 /* <var_listnode4:nullable Object> isa Array[Object] */
5248 cltype14
= type_array__Arraykernel__Object
.color
;
5249 idtype15
= type_array__Arraykernel__Object
.id
;
5250 if(var_listnode4
== NULL
) {
5253 if(cltype14
>= var_listnode4
->type
->table_size
) {
5256 var13
= var_listnode4
->type
->type_table
[cltype14
] == idtype15
;
5260 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5261 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23854);
5264 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction586>*/;
5265 var_listnode5
= var16
;
5266 var17
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
5268 ((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>*/;
5269 var_ptypenode1
= var17
;
5270 var_node_list
= var_ptypenode1
;
5271 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction586> */
5272 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
5273 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
5276 /* method parser#ReduceAction586#action for (self: Object, Parser) */
5277 void VIRTUAL_parser__ReduceAction586__action(val
* self
, val
* p0
) {
5278 parser__ReduceAction586__action(self
, p0
);
5281 /* method parser#ReduceAction587#action for (self: ReduceAction587, Parser) */
5282 void parser__ReduceAction587__action(val
* self
, val
* p0
) {
5283 val
* var_p
/* var p: Parser */;
5284 val
* var
/* : null */;
5285 val
* var_node_list
/* var node_list: nullable Object */;
5286 val
* var1
/* : nullable Object */;
5287 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5288 val
* var2
/* : nullable Object */;
5289 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5290 val
* var3
/* : nullable Object */;
5291 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5292 val
* var4
/* : nullable Object */;
5293 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5294 val
* var5
/* : nullable Object */;
5295 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5296 val
* var6
/* : nullable Object */;
5297 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5298 val
* var7
/* : nullable Object */;
5299 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5300 val
* var8
/* : Array[Object] */;
5301 val
* var_listnode5
/* var listnode5: Array[Object] */;
5302 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
5303 short int var9
/* : Bool */;
5306 val
* var_listnode4
/* var listnode4: nullable Object */;
5307 short int var10
/* : Bool */;
5310 val
* var13
/* : Array[Object] */;
5311 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
5312 short int var14
/* : Bool */;
5315 val
* var17
/* : AType */;
5316 val
* var18
/* : null */;
5317 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
5318 long var19
/* : Int */;
5319 long var20
/* : Int */;
5322 var_node_list
= var
;
5323 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5324 var_nodearraylist7
= var1
;
5325 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5326 var_nodearraylist6
= var2
;
5327 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5328 var_nodearraylist5
= var3
;
5329 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5330 var_nodearraylist4
= var4
;
5331 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5332 var_nodearraylist3
= var5
;
5333 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5334 var_nodearraylist2
= var6
;
5335 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5336 var_nodearraylist1
= var7
;
5337 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
5338 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
5339 var_listnode5
= var8
;
5340 var_tclassidnode3
= var_nodearraylist1
;
5341 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
5342 cltype
= type_nullable_parser_nodes__TClassid
.color
;
5343 idtype
= type_nullable_parser_nodes__TClassid
.id
;
5344 if(var_tclassidnode3
== NULL
) {
5347 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
5350 var9
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
5354 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5355 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23880);
5358 var_listnode4
= var_nodearraylist4
;
5359 /* <var_listnode4:nullable Object> isa Array[Object] */
5360 cltype11
= type_array__Arraykernel__Object
.color
;
5361 idtype12
= type_array__Arraykernel__Object
.id
;
5362 if(var_listnode4
== NULL
) {
5365 if(cltype11
>= var_listnode4
->type
->table_size
) {
5368 var10
= var_listnode4
->type
->type_table
[cltype11
] == idtype12
;
5372 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5373 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23882);
5376 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction587>*/;
5377 var_listnode5
= var13
;
5378 var_pannotationsnode6
= var_nodearraylist7
;
5379 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
5380 cltype15
= type_nullable_parser_nodes__AAnnotations
.color
;
5381 idtype16
= type_nullable_parser_nodes__AAnnotations
.id
;
5382 if(var_pannotationsnode6
== NULL
) {
5385 if(cltype15
>= var_pannotationsnode6
->type
->table_size
) {
5388 var14
= var_pannotationsnode6
->type
->type_table
[cltype15
] == idtype16
;
5392 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5393 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23885);
5396 var17
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
5398 ((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>*/;
5399 var_ptypenode1
= var17
;
5400 var_node_list
= var_ptypenode1
;
5401 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction587> */
5402 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
5403 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
5406 /* method parser#ReduceAction587#action for (self: Object, Parser) */
5407 void VIRTUAL_parser__ReduceAction587__action(val
* self
, val
* p0
) {
5408 parser__ReduceAction587__action(self
, p0
);
5411 /* method parser#ReduceAction588#action for (self: ReduceAction588, Parser) */
5412 void parser__ReduceAction588__action(val
* self
, val
* p0
) {
5413 val
* var_p
/* var p: Parser */;
5414 val
* var
/* : null */;
5415 val
* var_node_list
/* var node_list: nullable Object */;
5416 val
* var1
/* : nullable Object */;
5417 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5418 val
* var2
/* : nullable Object */;
5419 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5420 val
* var3
/* : nullable Object */;
5421 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5422 val
* var4
/* : nullable Object */;
5423 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5424 val
* var5
/* : nullable Object */;
5425 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5426 val
* var6
/* : nullable Object */;
5427 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5428 val
* var7
/* : nullable Object */;
5429 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5430 val
* var8
/* : nullable Object */;
5431 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5432 val
* var9
/* : Array[Object] */;
5433 val
* var_listnode5
/* var listnode5: Array[Object] */;
5434 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
5435 short int var10
/* : Bool */;
5438 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
5439 short int var11
/* : Bool */;
5442 val
* var_listnode4
/* var listnode4: nullable Object */;
5443 short int var14
/* : Bool */;
5446 val
* var17
/* : Array[Object] */;
5447 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
5448 short int var18
/* : Bool */;
5451 val
* var21
/* : AType */;
5452 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
5453 long var22
/* : Int */;
5454 long var23
/* : Int */;
5457 var_node_list
= var
;
5458 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5459 var_nodearraylist8
= var1
;
5460 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5461 var_nodearraylist7
= var2
;
5462 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5463 var_nodearraylist6
= var3
;
5464 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5465 var_nodearraylist5
= var4
;
5466 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5467 var_nodearraylist4
= var5
;
5468 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5469 var_nodearraylist3
= var6
;
5470 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5471 var_nodearraylist2
= var7
;
5472 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5473 var_nodearraylist1
= var8
;
5474 var9
= NEW_array__Array(&type_array__Arraykernel__Object
);
5475 ((void (*)(val
*))(var9
->class->vft
[COLOR_array__Array__init
]))(var9
) /* init on <var9:Array[Object]>*/;
5476 var_listnode5
= var9
;
5477 var_tkwnullablenode2
= var_nodearraylist1
;
5478 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
5479 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
5480 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
5481 if(var_tkwnullablenode2
== NULL
) {
5484 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
5487 var10
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
5491 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5492 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23911);
5495 var_tclassidnode3
= var_nodearraylist2
;
5496 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
5497 cltype12
= type_nullable_parser_nodes__TClassid
.color
;
5498 idtype13
= type_nullable_parser_nodes__TClassid
.id
;
5499 if(var_tclassidnode3
== NULL
) {
5502 if(cltype12
>= var_tclassidnode3
->type
->table_size
) {
5505 var11
= var_tclassidnode3
->type
->type_table
[cltype12
] == idtype13
;
5509 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5510 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23913);
5513 var_listnode4
= var_nodearraylist5
;
5514 /* <var_listnode4:nullable Object> isa Array[Object] */
5515 cltype15
= type_array__Arraykernel__Object
.color
;
5516 idtype16
= type_array__Arraykernel__Object
.id
;
5517 if(var_listnode4
== NULL
) {
5520 if(cltype15
>= var_listnode4
->type
->table_size
) {
5523 var14
= var_listnode4
->type
->type_table
[cltype15
] == idtype16
;
5527 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5528 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23915);
5531 var17
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction588>*/;
5532 var_listnode5
= var17
;
5533 var_pannotationsnode6
= var_nodearraylist8
;
5534 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
5535 cltype19
= type_nullable_parser_nodes__AAnnotations
.color
;
5536 idtype20
= type_nullable_parser_nodes__AAnnotations
.id
;
5537 if(var_pannotationsnode6
== NULL
) {
5540 if(cltype19
>= var_pannotationsnode6
->type
->table_size
) {
5543 var18
= var_pannotationsnode6
->type
->type_table
[cltype19
] == idtype20
;
5547 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5548 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23918);
5551 var21
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
5552 ((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>*/;
5553 var_ptypenode1
= var21
;
5554 var_node_list
= var_ptypenode1
;
5555 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction588> */
5556 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
5557 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
5560 /* method parser#ReduceAction588#action for (self: Object, Parser) */
5561 void VIRTUAL_parser__ReduceAction588__action(val
* self
, val
* p0
) {
5562 parser__ReduceAction588__action(self
, p0
);
5565 /* method parser#ReduceAction589#action for (self: ReduceAction589, Parser) */
5566 void parser__ReduceAction589__action(val
* self
, val
* p0
) {
5567 val
* var_p
/* var p: Parser */;
5568 val
* var
/* : null */;
5569 val
* var_node_list
/* var node_list: nullable Object */;
5570 val
* var1
/* : nullable Object */;
5571 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5572 val
* var2
/* : Array[Object] */;
5573 val
* var_listnode2
/* var listnode2: Array[Object] */;
5574 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
5575 val
* var3
/* : null */;
5576 short int var4
/* : Bool */;
5577 long var5
/* : Int */;
5578 long var6
/* : Int */;
5581 var_node_list
= var
;
5582 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5583 var_nodearraylist1
= var1
;
5584 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
5585 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
5586 var_listnode2
= var2
;
5587 var_ptypenode1
= var_nodearraylist1
;
5589 if (var_ptypenode1
== NULL
) {
5590 var4
= 0; /* is null */
5592 var4
= 1; /* arg is null and recv is not */
5595 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_ptypenode1
) /* add on <var_listnode2:Array[Object]>*/;
5598 var_node_list
= var_listnode2
;
5599 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction589> */
5600 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
5601 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
5604 /* method parser#ReduceAction589#action for (self: Object, Parser) */
5605 void VIRTUAL_parser__ReduceAction589__action(val
* self
, val
* p0
) {
5606 parser__ReduceAction589__action(self
, p0
);
5609 /* method parser#ReduceAction590#action for (self: ReduceAction590, Parser) */
5610 void parser__ReduceAction590__action(val
* self
, val
* p0
) {
5611 val
* var_p
/* var p: Parser */;
5612 val
* var
/* : null */;
5613 val
* var_node_list
/* var node_list: nullable Object */;
5614 val
* var1
/* : nullable Object */;
5615 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5616 val
* var2
/* : nullable Object */;
5617 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5618 val
* var3
/* : Array[Object] */;
5619 val
* var_listnode3
/* var listnode3: Array[Object] */;
5620 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
5621 val
* var_listnode2
/* var listnode2: nullable Object */;
5622 short int var4
/* : Bool */;
5625 val
* var5
/* : null */;
5626 short int var6
/* : Bool */;
5627 val
* var7
/* : Array[Object] */;
5628 long var8
/* : Int */;
5629 long var9
/* : Int */;
5632 var_node_list
= var
;
5633 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5634 var_nodearraylist2
= var1
;
5635 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5636 var_nodearraylist1
= var2
;
5637 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
5638 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
5639 var_listnode3
= var3
;
5640 var_ptypenode1
= var_nodearraylist1
;
5641 var_listnode2
= var_nodearraylist2
;
5642 /* <var_listnode2:nullable Object> isa Array[Object] */
5643 cltype
= type_array__Arraykernel__Object
.color
;
5644 idtype
= type_array__Arraykernel__Object
.id
;
5645 if(var_listnode2
== NULL
) {
5648 if(cltype
>= var_listnode2
->type
->table_size
) {
5651 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
5655 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5656 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23954);
5660 if (var_ptypenode1
== NULL
) {
5661 var6
= 0; /* is null */
5663 var6
= 1; /* arg is null and recv is not */
5666 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_ptypenode1
) /* add on <var_listnode3:Array[Object]>*/;
5669 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction590>*/;
5670 var_listnode3
= var7
;
5671 var_node_list
= var_listnode3
;
5672 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction590> */
5673 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
5674 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
5677 /* method parser#ReduceAction590#action for (self: Object, Parser) */
5678 void VIRTUAL_parser__ReduceAction590__action(val
* self
, val
* p0
) {
5679 parser__ReduceAction590__action(self
, p0
);
5682 /* method parser#ReduceAction591#action for (self: ReduceAction591, Parser) */
5683 void parser__ReduceAction591__action(val
* self
, val
* p0
) {
5684 val
* var_p
/* var p: Parser */;
5685 val
* var
/* : null */;
5686 val
* var_node_list
/* var node_list: nullable Object */;
5687 val
* var1
/* : nullable Object */;
5688 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5689 val
* var2
/* : nullable Object */;
5690 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5691 val
* var3
/* : nullable Object */;
5692 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5693 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
5694 long var4
/* : Int */;
5695 long var5
/* : Int */;
5698 var_node_list
= var
;
5699 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5700 var_nodearraylist3
= var1
;
5701 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5702 var_nodearraylist2
= var2
;
5703 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5704 var_nodearraylist1
= var3
;
5705 var_ptypenode1
= var_nodearraylist3
;
5706 var_node_list
= var_ptypenode1
;
5707 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction591> */
5708 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5709 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5712 /* method parser#ReduceAction591#action for (self: Object, Parser) */
5713 void VIRTUAL_parser__ReduceAction591__action(val
* self
, val
* p0
) {
5714 parser__ReduceAction591__action(self
, p0
);
5717 /* method parser#ReduceAction593#action for (self: ReduceAction593, Parser) */
5718 void parser__ReduceAction593__action(val
* self
, val
* p0
) {
5719 val
* var_p
/* var p: Parser */;
5720 val
* var
/* : null */;
5721 val
* var_node_list
/* var node_list: nullable Object */;
5722 val
* var1
/* : nullable Object */;
5723 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5724 val
* var2
/* : nullable Object */;
5725 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5726 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
5727 long var3
/* : Int */;
5728 long var4
/* : Int */;
5731 var_node_list
= var
;
5732 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5733 var_nodearraylist2
= var1
;
5734 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5735 var_nodearraylist1
= var2
;
5736 var_pexprnode1
= var_nodearraylist2
;
5737 var_node_list
= var_pexprnode1
;
5738 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction593> */
5739 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
5740 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
5743 /* method parser#ReduceAction593#action for (self: Object, Parser) */
5744 void VIRTUAL_parser__ReduceAction593__action(val
* self
, val
* p0
) {
5745 parser__ReduceAction593__action(self
, p0
);
5748 /* method parser#ReduceAction594#action for (self: ReduceAction594, Parser) */
5749 void parser__ReduceAction594__action(val
* self
, val
* p0
) {
5750 val
* var_p
/* var p: Parser */;
5751 val
* var
/* : null */;
5752 val
* var_node_list
/* var node_list: nullable Object */;
5753 val
* var1
/* : nullable Object */;
5754 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5755 val
* var2
/* : nullable Object */;
5756 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5757 val
* var3
/* : Array[Object] */;
5758 val
* var_listnode2
/* var listnode2: Array[Object] */;
5759 val
* var_tkwendnode3
/* var tkwendnode3: nullable Object */;
5760 short int var4
/* : Bool */;
5763 val
* var5
/* : ABlockExpr */;
5764 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
5765 long var6
/* : Int */;
5766 long var7
/* : 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_nodearraylist2
= var1
;
5772 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5773 var_nodearraylist1
= var2
;
5774 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
5775 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
5776 var_listnode2
= var3
;
5777 var_tkwendnode3
= var_nodearraylist2
;
5778 /* <var_tkwendnode3:nullable Object> isa nullable TKwend */
5779 cltype
= type_nullable_parser_nodes__TKwend
.color
;
5780 idtype
= type_nullable_parser_nodes__TKwend
.id
;
5781 if(var_tkwendnode3
== NULL
) {
5784 if(cltype
>= var_tkwendnode3
->type
->table_size
) {
5787 var4
= var_tkwendnode3
->type
->type_table
[cltype
] == idtype
;
5791 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5792 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23997);
5795 var5
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
5796 ((void (*)(val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var5
, var_listnode2
, var_tkwendnode3
) /* init_ablockexpr on <var5:ABlockExpr>*/;
5797 var_pexprnode1
= var5
;
5798 var_node_list
= var_pexprnode1
;
5799 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction594> */
5800 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
5801 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
5804 /* method parser#ReduceAction594#action for (self: Object, Parser) */
5805 void VIRTUAL_parser__ReduceAction594__action(val
* self
, val
* p0
) {
5806 parser__ReduceAction594__action(self
, p0
);
5809 /* method parser#ReduceAction595#action for (self: ReduceAction595, Parser) */
5810 void parser__ReduceAction595__action(val
* self
, val
* p0
) {
5811 val
* var_p
/* var p: Parser */;
5812 val
* var
/* : null */;
5813 val
* var_node_list
/* var node_list: nullable Object */;
5814 val
* var1
/* : nullable Object */;
5815 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5816 val
* var2
/* : Array[Object] */;
5817 val
* var_listnode2
/* var listnode2: Array[Object] */;
5818 val
* var_tkwendnode3
/* var tkwendnode3: nullable Object */;
5819 short int var3
/* : Bool */;
5822 val
* var4
/* : ABlockExpr */;
5823 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
5824 long var5
/* : Int */;
5825 long var6
/* : 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_nodearraylist1
= var1
;
5831 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
5832 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
5833 var_listnode2
= var2
;
5834 var_tkwendnode3
= var_nodearraylist1
;
5835 /* <var_tkwendnode3:nullable Object> isa nullable TKwend */
5836 cltype
= type_nullable_parser_nodes__TKwend
.color
;
5837 idtype
= type_nullable_parser_nodes__TKwend
.id
;
5838 if(var_tkwendnode3
== NULL
) {
5841 if(cltype
>= var_tkwendnode3
->type
->table_size
) {
5844 var3
= var_tkwendnode3
->type
->type_table
[cltype
] == idtype
;
5848 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5849 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24014);
5852 var4
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
5853 ((void (*)(val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var4
, var_listnode2
, var_tkwendnode3
) /* init_ablockexpr on <var4:ABlockExpr>*/;
5854 var_pexprnode1
= var4
;
5855 var_node_list
= var_pexprnode1
;
5856 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction595> */
5857 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
5858 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
5861 /* method parser#ReduceAction595#action for (self: Object, Parser) */
5862 void VIRTUAL_parser__ReduceAction595__action(val
* self
, val
* p0
) {
5863 parser__ReduceAction595__action(self
, p0
);
5866 /* method parser#ReduceAction596#action for (self: ReduceAction596, Parser) */
5867 void parser__ReduceAction596__action(val
* self
, val
* p0
) {
5868 val
* var_p
/* var p: Parser */;
5869 val
* var
/* : null */;
5870 val
* var_node_list
/* var node_list: nullable Object */;
5871 val
* var1
/* : nullable Object */;
5872 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5873 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
5874 long var2
/* : Int */;
5875 long var3
/* : Int */;
5878 var_node_list
= var
;
5879 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5880 var_nodearraylist1
= var1
;
5881 var_pexprnode1
= var_nodearraylist1
;
5882 var_node_list
= var_pexprnode1
;
5883 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction596> */
5884 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
5885 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
5888 /* method parser#ReduceAction596#action for (self: Object, Parser) */
5889 void VIRTUAL_parser__ReduceAction596__action(val
* self
, val
* p0
) {
5890 parser__ReduceAction596__action(self
, p0
);
5893 /* method parser#ReduceAction597#action for (self: ReduceAction597, Parser) */
5894 void parser__ReduceAction597__action(val
* self
, val
* p0
) {
5895 val
* var_p
/* var p: Parser */;
5896 val
* var
/* : null */;
5897 val
* var_node_list
/* var node_list: nullable Object */;
5898 val
* var1
/* : nullable Object */;
5899 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5900 val
* var2
/* : Array[Object] */;
5901 val
* var_listnode3
/* var listnode3: Array[Object] */;
5902 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
5903 short int var3
/* : Bool */;
5906 val
* var4
/* : null */;
5907 short int var5
/* : Bool */;
5908 val
* var6
/* : ABlockExpr */;
5909 val
* var7
/* : null */;
5910 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
5911 long var8
/* : Int */;
5912 long var9
/* : Int */;
5915 var_node_list
= var
;
5916 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5917 var_nodearraylist1
= var1
;
5918 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
5919 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
5920 var_listnode3
= var2
;
5921 var_pexprnode2
= var_nodearraylist1
;
5922 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
5923 cltype
= type_nullable_parser_nodes__AExpr
.color
;
5924 idtype
= type_nullable_parser_nodes__AExpr
.id
;
5925 if(var_pexprnode2
== NULL
) {
5928 if(cltype
>= var_pexprnode2
->type
->table_size
) {
5931 var3
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
5935 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5936 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24042);
5940 if (var_pexprnode2
== NULL
) {
5941 var5
= 0; /* is null */
5943 var5
= 1; /* arg is null and recv is not */
5946 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
5949 var6
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
5951 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var6
, var_listnode3
, var7
) /* init_ablockexpr on <var6:ABlockExpr>*/;
5952 var_pexprnode1
= var6
;
5953 var_node_list
= var_pexprnode1
;
5954 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction597> */
5955 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
5956 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
5959 /* method parser#ReduceAction597#action for (self: Object, Parser) */
5960 void VIRTUAL_parser__ReduceAction597__action(val
* self
, val
* p0
) {
5961 parser__ReduceAction597__action(self
, p0
);
5964 /* method parser#ReduceAction598#action for (self: ReduceAction598, Parser) */
5965 void parser__ReduceAction598__action(val
* self
, val
* p0
) {
5966 val
* var_p
/* var p: Parser */;
5967 val
* var
/* : null */;
5968 val
* var_node_list
/* var node_list: nullable Object */;
5969 val
* var1
/* : nullable Object */;
5970 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5971 val
* var2
/* : nullable Object */;
5972 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5973 val
* var3
/* : Array[Object] */;
5974 val
* var_listnode4
/* var listnode4: Array[Object] */;
5975 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
5976 short int var4
/* : Bool */;
5979 val
* var_listnode3
/* var listnode3: nullable Object */;
5980 short int var5
/* : Bool */;
5983 val
* var8
/* : null */;
5984 short int var9
/* : Bool */;
5985 val
* var10
/* : Array[Object] */;
5986 val
* var11
/* : ABlockExpr */;
5987 val
* var12
/* : null */;
5988 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
5989 long var13
/* : Int */;
5990 long var14
/* : Int */;
5993 var_node_list
= var
;
5994 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5995 var_nodearraylist2
= var1
;
5996 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5997 var_nodearraylist1
= var2
;
5998 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
5999 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6000 var_listnode4
= var3
;
6001 var_pexprnode2
= var_nodearraylist1
;
6002 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6003 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6004 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6005 if(var_pexprnode2
== NULL
) {
6008 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6011 var4
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6015 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6016 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24063);
6019 var_listnode3
= var_nodearraylist2
;
6020 /* <var_listnode3:nullable Object> isa Array[Object] */
6021 cltype6
= type_array__Arraykernel__Object
.color
;
6022 idtype7
= type_array__Arraykernel__Object
.id
;
6023 if(var_listnode3
== NULL
) {
6026 if(cltype6
>= var_listnode3
->type
->table_size
) {
6029 var5
= var_listnode3
->type
->type_table
[cltype6
] == idtype7
;
6033 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6034 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24065);
6038 if (var_pexprnode2
== NULL
) {
6039 var9
= 0; /* is null */
6041 var9
= 1; /* arg is null and recv is not */
6044 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
6047 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction598>*/;
6048 var_listnode4
= var10
;
6049 var11
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
6051 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var11
, var_listnode4
, var12
) /* init_ablockexpr on <var11:ABlockExpr>*/;
6052 var_pexprnode1
= var11
;
6053 var_node_list
= var_pexprnode1
;
6054 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction598> */
6055 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
6056 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
6059 /* method parser#ReduceAction598#action for (self: Object, Parser) */
6060 void VIRTUAL_parser__ReduceAction598__action(val
* self
, val
* p0
) {
6061 parser__ReduceAction598__action(self
, p0
);
6064 /* method parser#ReduceAction599#action for (self: ReduceAction599, Parser) */
6065 void parser__ReduceAction599__action(val
* self
, val
* p0
) {
6066 val
* var_p
/* var p: Parser */;
6067 val
* var
/* : null */;
6068 val
* var_node_list
/* var node_list: nullable Object */;
6069 val
* var1
/* : nullable Object */;
6070 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6071 val
* var2
/* : nullable Object */;
6072 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6073 val
* var3
/* : Array[Object] */;
6074 val
* var_listnode3
/* var listnode3: Array[Object] */;
6075 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6076 short int var4
/* : Bool */;
6079 val
* var5
/* : null */;
6080 short int var6
/* : Bool */;
6081 val
* var7
/* : ABlockExpr */;
6082 val
* var8
/* : null */;
6083 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
6084 long var9
/* : Int */;
6085 long var10
/* : Int */;
6088 var_node_list
= var
;
6089 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6090 var_nodearraylist2
= var1
;
6091 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6092 var_nodearraylist1
= var2
;
6093 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6094 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6095 var_listnode3
= var3
;
6096 var_pexprnode2
= var_nodearraylist1
;
6097 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6098 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6099 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6100 if(var_pexprnode2
== NULL
) {
6103 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6106 var4
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6110 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6111 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24087);
6115 if (var_pexprnode2
== NULL
) {
6116 var6
= 0; /* is null */
6118 var6
= 1; /* arg is null and recv is not */
6121 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
6124 var7
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
6126 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var7
, var_listnode3
, var8
) /* init_ablockexpr on <var7:ABlockExpr>*/;
6127 var_pexprnode1
= var7
;
6128 var_node_list
= var_pexprnode1
;
6129 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction599> */
6130 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
6131 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
6134 /* method parser#ReduceAction599#action for (self: Object, Parser) */
6135 void VIRTUAL_parser__ReduceAction599__action(val
* self
, val
* p0
) {
6136 parser__ReduceAction599__action(self
, p0
);
6139 /* method parser#ReduceAction600#action for (self: ReduceAction600, Parser) */
6140 void parser__ReduceAction600__action(val
* self
, val
* p0
) {
6141 val
* var_p
/* var p: Parser */;
6142 val
* var
/* : null */;
6143 val
* var_node_list
/* var node_list: nullable Object */;
6144 val
* var1
/* : nullable Object */;
6145 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6146 val
* var2
/* : nullable Object */;
6147 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6148 val
* var3
/* : nullable Object */;
6149 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6150 val
* var4
/* : Array[Object] */;
6151 val
* var_listnode4
/* var listnode4: Array[Object] */;
6152 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6153 short int var5
/* : Bool */;
6156 val
* var_listnode3
/* var listnode3: nullable Object */;
6157 short int var6
/* : Bool */;
6160 val
* var9
/* : null */;
6161 short int var10
/* : Bool */;
6162 val
* var11
/* : Array[Object] */;
6163 val
* var12
/* : ABlockExpr */;
6164 val
* var13
/* : null */;
6165 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
6166 long var14
/* : Int */;
6167 long var15
/* : Int */;
6170 var_node_list
= var
;
6171 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6172 var_nodearraylist3
= var1
;
6173 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6174 var_nodearraylist2
= var2
;
6175 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6176 var_nodearraylist1
= var3
;
6177 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
6178 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
6179 var_listnode4
= var4
;
6180 var_pexprnode2
= var_nodearraylist1
;
6181 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6182 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6183 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6184 if(var_pexprnode2
== NULL
) {
6187 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6190 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6194 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6195 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24109);
6198 var_listnode3
= var_nodearraylist2
;
6199 /* <var_listnode3:nullable Object> isa Array[Object] */
6200 cltype7
= type_array__Arraykernel__Object
.color
;
6201 idtype8
= type_array__Arraykernel__Object
.id
;
6202 if(var_listnode3
== NULL
) {
6205 if(cltype7
>= var_listnode3
->type
->table_size
) {
6208 var6
= var_listnode3
->type
->type_table
[cltype7
] == idtype8
;
6212 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6213 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24111);
6217 if (var_pexprnode2
== NULL
) {
6218 var10
= 0; /* is null */
6220 var10
= 1; /* arg is null and recv is not */
6223 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
6226 var11
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction600>*/;
6227 var_listnode4
= var11
;
6228 var12
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
6230 ((void (*)(val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var12
, var_listnode4
, var13
) /* init_ablockexpr on <var12:ABlockExpr>*/;
6231 var_pexprnode1
= var12
;
6232 var_node_list
= var_pexprnode1
;
6233 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction600> */
6234 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
6235 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
6238 /* method parser#ReduceAction600#action for (self: Object, Parser) */
6239 void VIRTUAL_parser__ReduceAction600__action(val
* self
, val
* p0
) {
6240 parser__ReduceAction600__action(self
, p0
);
6243 /* method parser#ReduceAction601#action for (self: ReduceAction601, Parser) */
6244 void parser__ReduceAction601__action(val
* self
, val
* p0
) {
6245 val
* var_p
/* var p: Parser */;
6246 val
* var
/* : null */;
6247 val
* var_node_list
/* var node_list: nullable Object */;
6248 val
* var1
/* : nullable Object */;
6249 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6250 val
* var2
/* : nullable Object */;
6251 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6252 val
* var3
/* : nullable Object */;
6253 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6254 val
* var4
/* : Array[Object] */;
6255 val
* var_listnode3
/* var listnode3: Array[Object] */;
6256 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6257 short int var5
/* : Bool */;
6260 val
* var6
/* : null */;
6261 short int var7
/* : Bool */;
6262 val
* var_tkwendnode4
/* var tkwendnode4: nullable Object */;
6263 short int var8
/* : Bool */;
6266 val
* var11
/* : ABlockExpr */;
6267 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
6268 long var12
/* : Int */;
6269 long var13
/* : Int */;
6272 var_node_list
= var
;
6273 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6274 var_nodearraylist3
= var1
;
6275 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6276 var_nodearraylist2
= var2
;
6277 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6278 var_nodearraylist1
= var3
;
6279 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
6280 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
6281 var_listnode3
= var4
;
6282 var_pexprnode2
= var_nodearraylist1
;
6283 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6284 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6285 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6286 if(var_pexprnode2
== NULL
) {
6289 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6292 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6296 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6297 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24134);
6301 if (var_pexprnode2
== NULL
) {
6302 var7
= 0; /* is null */
6304 var7
= 1; /* arg is null and recv is not */
6307 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
6310 var_tkwendnode4
= var_nodearraylist3
;
6311 /* <var_tkwendnode4:nullable Object> isa nullable TKwend */
6312 cltype9
= type_nullable_parser_nodes__TKwend
.color
;
6313 idtype10
= type_nullable_parser_nodes__TKwend
.id
;
6314 if(var_tkwendnode4
== NULL
) {
6317 if(cltype9
>= var_tkwendnode4
->type
->table_size
) {
6320 var8
= var_tkwendnode4
->type
->type_table
[cltype9
] == idtype10
;
6324 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6325 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24139);
6328 var11
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
6329 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var11
, var_listnode3
, var_tkwendnode4
) /* init_ablockexpr on <var11:ABlockExpr>*/;
6330 var_pexprnode1
= var11
;
6331 var_node_list
= var_pexprnode1
;
6332 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction601> */
6333 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
6334 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
6337 /* method parser#ReduceAction601#action for (self: Object, Parser) */
6338 void VIRTUAL_parser__ReduceAction601__action(val
* self
, val
* p0
) {
6339 parser__ReduceAction601__action(self
, p0
);
6342 /* method parser#ReduceAction602#action for (self: ReduceAction602, Parser) */
6343 void parser__ReduceAction602__action(val
* self
, val
* p0
) {
6344 val
* var_p
/* var p: Parser */;
6345 val
* var
/* : null */;
6346 val
* var_node_list
/* var node_list: nullable Object */;
6347 val
* var1
/* : nullable Object */;
6348 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6349 val
* var2
/* : nullable Object */;
6350 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6351 val
* var3
/* : nullable Object */;
6352 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6353 val
* var4
/* : nullable Object */;
6354 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6355 val
* var5
/* : Array[Object] */;
6356 val
* var_listnode4
/* var listnode4: Array[Object] */;
6357 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6358 short int var6
/* : Bool */;
6361 val
* var_listnode3
/* var listnode3: nullable Object */;
6362 short int var7
/* : Bool */;
6365 val
* var10
/* : null */;
6366 short int var11
/* : Bool */;
6367 val
* var12
/* : Array[Object] */;
6368 val
* var_tkwendnode5
/* var tkwendnode5: nullable Object */;
6369 short int var13
/* : Bool */;
6372 val
* var16
/* : ABlockExpr */;
6373 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
6374 long var17
/* : Int */;
6375 long var18
/* : Int */;
6378 var_node_list
= var
;
6379 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6380 var_nodearraylist4
= var1
;
6381 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6382 var_nodearraylist3
= var2
;
6383 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6384 var_nodearraylist2
= var3
;
6385 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6386 var_nodearraylist1
= var4
;
6387 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
6388 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
6389 var_listnode4
= var5
;
6390 var_pexprnode2
= var_nodearraylist1
;
6391 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6392 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6393 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6394 if(var_pexprnode2
== NULL
) {
6397 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6400 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6404 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6405 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24159);
6408 var_listnode3
= var_nodearraylist2
;
6409 /* <var_listnode3:nullable Object> isa Array[Object] */
6410 cltype8
= type_array__Arraykernel__Object
.color
;
6411 idtype9
= type_array__Arraykernel__Object
.id
;
6412 if(var_listnode3
== NULL
) {
6415 if(cltype8
>= var_listnode3
->type
->table_size
) {
6418 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
6422 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6423 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24161);
6427 if (var_pexprnode2
== NULL
) {
6428 var11
= 0; /* is null */
6430 var11
= 1; /* arg is null and recv is not */
6433 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
6436 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction602>*/;
6437 var_listnode4
= var12
;
6438 var_tkwendnode5
= var_nodearraylist4
;
6439 /* <var_tkwendnode5:nullable Object> isa nullable TKwend */
6440 cltype14
= type_nullable_parser_nodes__TKwend
.color
;
6441 idtype15
= type_nullable_parser_nodes__TKwend
.id
;
6442 if(var_tkwendnode5
== NULL
) {
6445 if(cltype14
>= var_tkwendnode5
->type
->table_size
) {
6448 var13
= var_tkwendnode5
->type
->type_table
[cltype14
] == idtype15
;
6452 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6453 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24167);
6456 var16
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
6457 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var16
, var_listnode4
, var_tkwendnode5
) /* init_ablockexpr on <var16:ABlockExpr>*/;
6458 var_pexprnode1
= var16
;
6459 var_node_list
= var_pexprnode1
;
6460 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction602> */
6461 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
6462 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
6465 /* method parser#ReduceAction602#action for (self: Object, Parser) */
6466 void VIRTUAL_parser__ReduceAction602__action(val
* self
, val
* p0
) {
6467 parser__ReduceAction602__action(self
, p0
);
6470 /* method parser#ReduceAction606#action for (self: ReduceAction606, Parser) */
6471 void parser__ReduceAction606__action(val
* self
, val
* p0
) {
6472 val
* var_p
/* var p: Parser */;
6473 val
* var
/* : null */;
6474 val
* var_node_list
/* var node_list: nullable Object */;
6475 val
* var1
/* : nullable Object */;
6476 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6477 val
* var_tkwreturnnode2
/* var tkwreturnnode2: nullable Object */;
6478 short int var2
/* : Bool */;
6481 val
* var3
/* : AReturnExpr */;
6482 val
* var4
/* : null */;
6483 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
6484 long var5
/* : Int */;
6485 long var6
/* : Int */;
6488 var_node_list
= var
;
6489 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6490 var_nodearraylist1
= var1
;
6491 var_tkwreturnnode2
= var_nodearraylist1
;
6492 /* <var_tkwreturnnode2:nullable Object> isa nullable TKwreturn */
6493 cltype
= type_nullable_parser_nodes__TKwreturn
.color
;
6494 idtype
= type_nullable_parser_nodes__TKwreturn
.id
;
6495 if(var_tkwreturnnode2
== NULL
) {
6498 if(cltype
>= var_tkwreturnnode2
->type
->table_size
) {
6501 var2
= var_tkwreturnnode2
->type
->type_table
[cltype
] == idtype
;
6505 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6506 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24183);
6509 var3
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
6511 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var3
, var_tkwreturnnode2
, var4
) /* init_areturnexpr on <var3:AReturnExpr>*/;
6512 var_pexprnode1
= var3
;
6513 var_node_list
= var_pexprnode1
;
6514 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction606> */
6515 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6516 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6519 /* method parser#ReduceAction606#action for (self: Object, Parser) */
6520 void VIRTUAL_parser__ReduceAction606__action(val
* self
, val
* p0
) {
6521 parser__ReduceAction606__action(self
, p0
);
6524 /* method parser#ReduceAction607#action for (self: ReduceAction607, Parser) */
6525 void parser__ReduceAction607__action(val
* self
, val
* p0
) {
6526 val
* var_p
/* var p: Parser */;
6527 val
* var
/* : null */;
6528 val
* var_node_list
/* var node_list: nullable Object */;
6529 val
* var1
/* : nullable Object */;
6530 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6531 val
* var2
/* : nullable Object */;
6532 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6533 val
* var_tkwreturnnode2
/* var tkwreturnnode2: nullable Object */;
6534 short int var3
/* : Bool */;
6537 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
6538 short int var4
/* : Bool */;
6541 val
* var7
/* : AReturnExpr */;
6542 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
6543 long var8
/* : Int */;
6544 long var9
/* : Int */;
6547 var_node_list
= var
;
6548 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6549 var_nodearraylist2
= var1
;
6550 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6551 var_nodearraylist1
= var2
;
6552 var_tkwreturnnode2
= var_nodearraylist1
;
6553 /* <var_tkwreturnnode2:nullable Object> isa nullable TKwreturn */
6554 cltype
= type_nullable_parser_nodes__TKwreturn
.color
;
6555 idtype
= type_nullable_parser_nodes__TKwreturn
.id
;
6556 if(var_tkwreturnnode2
== NULL
) {
6559 if(cltype
>= var_tkwreturnnode2
->type
->table_size
) {
6562 var3
= var_tkwreturnnode2
->type
->type_table
[cltype
] == idtype
;
6566 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6567 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24200);
6570 var_pexprnode3
= var_nodearraylist2
;
6571 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
6572 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
6573 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
6574 if(var_pexprnode3
== NULL
) {
6577 if(cltype5
>= var_pexprnode3
->type
->table_size
) {
6580 var4
= var_pexprnode3
->type
->type_table
[cltype5
] == idtype6
;
6584 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6585 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24202);
6588 var7
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
6589 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var7
, var_tkwreturnnode2
, var_pexprnode3
) /* init_areturnexpr on <var7:AReturnExpr>*/;
6590 var_pexprnode1
= var7
;
6591 var_node_list
= var_pexprnode1
;
6592 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction607> */
6593 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6594 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6597 /* method parser#ReduceAction607#action for (self: Object, Parser) */
6598 void VIRTUAL_parser__ReduceAction607__action(val
* self
, val
* p0
) {
6599 parser__ReduceAction607__action(self
, p0
);
6602 /* method parser#ReduceAction608#action for (self: ReduceAction608, Parser) */
6603 void parser__ReduceAction608__action(val
* self
, val
* p0
) {
6604 val
* var_p
/* var p: Parser */;
6605 val
* var
/* : null */;
6606 val
* var_node_list
/* var node_list: nullable Object */;
6607 val
* var1
/* : nullable Object */;
6608 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6609 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
6610 short int var2
/* : Bool */;
6613 val
* var3
/* : ABreakExpr */;
6614 val
* var4
/* : null */;
6615 val
* var5
/* : null */;
6616 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
6617 long var6
/* : Int */;
6618 long var7
/* : Int */;
6621 var_node_list
= var
;
6622 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6623 var_nodearraylist1
= var1
;
6624 var_tkwbreaknode2
= var_nodearraylist1
;
6625 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
6626 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
6627 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
6628 if(var_tkwbreaknode2
== NULL
) {
6631 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
6634 var2
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
6638 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6639 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24218);
6642 var3
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
6645 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var3
, var_tkwbreaknode2
, var4
, var5
) /* init_abreakexpr on <var3:ABreakExpr>*/;
6646 var_pexprnode1
= var3
;
6647 var_node_list
= var_pexprnode1
;
6648 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction608> */
6649 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
6650 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
6653 /* method parser#ReduceAction608#action for (self: Object, Parser) */
6654 void VIRTUAL_parser__ReduceAction608__action(val
* self
, val
* p0
) {
6655 parser__ReduceAction608__action(self
, p0
);
6658 /* method parser#ReduceAction609#action for (self: ReduceAction609, Parser) */
6659 void parser__ReduceAction609__action(val
* self
, val
* p0
) {
6660 val
* var_p
/* var p: Parser */;
6661 val
* var
/* : null */;
6662 val
* var_node_list
/* var node_list: nullable Object */;
6663 val
* var1
/* : nullable Object */;
6664 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6665 val
* var2
/* : nullable Object */;
6666 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6667 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
6668 short int var3
/* : Bool */;
6671 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
6672 short int var4
/* : Bool */;
6675 val
* var7
/* : ABreakExpr */;
6676 val
* var8
/* : null */;
6677 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
6678 long var9
/* : Int */;
6679 long var10
/* : Int */;
6682 var_node_list
= var
;
6683 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6684 var_nodearraylist2
= var1
;
6685 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6686 var_nodearraylist1
= var2
;
6687 var_tkwbreaknode2
= var_nodearraylist1
;
6688 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
6689 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
6690 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
6691 if(var_tkwbreaknode2
== NULL
) {
6694 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
6697 var3
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
6701 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6702 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24236);
6705 var_plabelnode3
= var_nodearraylist2
;
6706 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
6707 cltype5
= type_nullable_parser_nodes__ALabel
.color
;
6708 idtype6
= type_nullable_parser_nodes__ALabel
.id
;
6709 if(var_plabelnode3
== NULL
) {
6712 if(cltype5
>= var_plabelnode3
->type
->table_size
) {
6715 var4
= var_plabelnode3
->type
->type_table
[cltype5
] == idtype6
;
6719 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6720 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24238);
6723 var7
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
6725 ((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>*/;
6726 var_pexprnode1
= var7
;
6727 var_node_list
= var_pexprnode1
;
6728 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction609> */
6729 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
6730 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
6733 /* method parser#ReduceAction609#action for (self: Object, Parser) */
6734 void VIRTUAL_parser__ReduceAction609__action(val
* self
, val
* p0
) {
6735 parser__ReduceAction609__action(self
, p0
);
6738 /* method parser#ReduceAction610#action for (self: ReduceAction610, Parser) */
6739 void parser__ReduceAction610__action(val
* self
, val
* p0
) {
6740 val
* var_p
/* var p: Parser */;
6741 val
* var
/* : null */;
6742 val
* var_node_list
/* var node_list: nullable Object */;
6743 val
* var1
/* : nullable Object */;
6744 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6745 val
* var2
/* : nullable Object */;
6746 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6747 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
6748 short int var3
/* : Bool */;
6751 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
6752 short int var4
/* : Bool */;
6755 val
* var7
/* : ABreakExpr */;
6756 val
* var8
/* : null */;
6757 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
6758 long var9
/* : Int */;
6759 long var10
/* : Int */;
6762 var_node_list
= var
;
6763 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6764 var_nodearraylist2
= var1
;
6765 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6766 var_nodearraylist1
= var2
;
6767 var_tkwbreaknode2
= var_nodearraylist1
;
6768 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
6769 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
6770 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
6771 if(var_tkwbreaknode2
== NULL
) {
6774 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
6777 var3
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
6781 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6782 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24256);
6785 var_pexprnode4
= var_nodearraylist2
;
6786 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
6787 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
6788 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
6789 if(var_pexprnode4
== NULL
) {
6792 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
6795 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
6799 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6800 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24258);
6803 var7
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
6805 ((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>*/;
6806 var_pexprnode1
= var7
;
6807 var_node_list
= var_pexprnode1
;
6808 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction610> */
6809 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
6810 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
6813 /* method parser#ReduceAction610#action for (self: Object, Parser) */
6814 void VIRTUAL_parser__ReduceAction610__action(val
* self
, val
* p0
) {
6815 parser__ReduceAction610__action(self
, p0
);
6818 /* method parser#ReduceAction611#action for (self: ReduceAction611, Parser) */
6819 void parser__ReduceAction611__action(val
* self
, val
* p0
) {
6820 val
* var_p
/* var p: Parser */;
6821 val
* var
/* : null */;
6822 val
* var_node_list
/* var node_list: nullable Object */;
6823 val
* var1
/* : nullable Object */;
6824 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6825 val
* var2
/* : nullable Object */;
6826 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6827 val
* var3
/* : nullable Object */;
6828 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6829 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
6830 short int var4
/* : Bool */;
6833 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
6834 short int var5
/* : Bool */;
6837 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
6838 short int var8
/* : Bool */;
6841 val
* var11
/* : ABreakExpr */;
6842 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
6843 long var12
/* : Int */;
6844 long var13
/* : Int */;
6847 var_node_list
= var
;
6848 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6849 var_nodearraylist3
= var1
;
6850 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6851 var_nodearraylist2
= var2
;
6852 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6853 var_nodearraylist1
= var3
;
6854 var_tkwbreaknode2
= var_nodearraylist1
;
6855 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
6856 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
6857 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
6858 if(var_tkwbreaknode2
== NULL
) {
6861 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
6864 var4
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
6868 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6869 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24277);
6872 var_plabelnode3
= var_nodearraylist2
;
6873 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
6874 cltype6
= type_nullable_parser_nodes__ALabel
.color
;
6875 idtype7
= type_nullable_parser_nodes__ALabel
.id
;
6876 if(var_plabelnode3
== NULL
) {
6879 if(cltype6
>= var_plabelnode3
->type
->table_size
) {
6882 var5
= var_plabelnode3
->type
->type_table
[cltype6
] == idtype7
;
6886 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6887 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24279);
6890 var_pexprnode4
= var_nodearraylist3
;
6891 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
6892 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
6893 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
6894 if(var_pexprnode4
== NULL
) {
6897 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
6900 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
6904 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6905 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24281);
6908 var11
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
6909 ((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>*/;
6910 var_pexprnode1
= var11
;
6911 var_node_list
= var_pexprnode1
;
6912 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction611> */
6913 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
6914 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
6917 /* method parser#ReduceAction611#action for (self: Object, Parser) */
6918 void VIRTUAL_parser__ReduceAction611__action(val
* self
, val
* p0
) {
6919 parser__ReduceAction611__action(self
, p0
);
6922 /* method parser#ReduceAction612#action for (self: ReduceAction612, Parser) */
6923 void parser__ReduceAction612__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_nodearraylist1
/* var nodearraylist1: nullable Object */;
6929 val
* var_tkwabortnode2
/* var tkwabortnode2: nullable Object */;
6930 short int var2
/* : Bool */;
6933 val
* var3
/* : AAbortExpr */;
6934 val
* var_pexprnode1
/* var pexprnode1: nullable AAbortExpr */;
6935 long var4
/* : Int */;
6936 long var5
/* : Int */;
6939 var_node_list
= var
;
6940 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6941 var_nodearraylist1
= var1
;
6942 var_tkwabortnode2
= var_nodearraylist1
;
6943 /* <var_tkwabortnode2:nullable Object> isa nullable TKwabort */
6944 cltype
= type_nullable_parser_nodes__TKwabort
.color
;
6945 idtype
= type_nullable_parser_nodes__TKwabort
.id
;
6946 if(var_tkwabortnode2
== NULL
) {
6949 if(cltype
>= var_tkwabortnode2
->type
->table_size
) {
6952 var2
= var_tkwabortnode2
->type
->type_table
[cltype
] == idtype
;
6956 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6957 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24298);
6960 var3
= NEW_parser_nodes__AAbortExpr(&type_parser_nodes__AAbortExpr
);
6961 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AAbortExpr__init_aabortexpr
]))(var3
, var_tkwabortnode2
) /* init_aabortexpr on <var3:AAbortExpr>*/;
6962 var_pexprnode1
= var3
;
6963 var_node_list
= var_pexprnode1
;
6964 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction612> */
6965 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
6966 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
6969 /* method parser#ReduceAction612#action for (self: Object, Parser) */
6970 void VIRTUAL_parser__ReduceAction612__action(val
* self
, val
* p0
) {
6971 parser__ReduceAction612__action(self
, p0
);
6974 /* method parser#ReduceAction613#action for (self: ReduceAction613, Parser) */
6975 void parser__ReduceAction613__action(val
* self
, val
* p0
) {
6976 val
* var_p
/* var p: Parser */;
6977 val
* var
/* : null */;
6978 val
* var_node_list
/* var node_list: nullable Object */;
6979 val
* var1
/* : nullable Object */;
6980 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6981 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
6982 short int var2
/* : Bool */;
6985 val
* var3
/* : AContinueExpr */;
6986 val
* var4
/* : null */;
6987 val
* var5
/* : null */;
6988 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
6989 long var6
/* : Int */;
6990 long var7
/* : Int */;
6993 var_node_list
= var
;
6994 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6995 var_nodearraylist1
= var1
;
6996 var_tkwcontinuenode2
= var_nodearraylist1
;
6997 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
6998 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
6999 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
7000 if(var_tkwcontinuenode2
== NULL
) {
7003 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
7006 var2
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
7010 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7011 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24313);
7014 var3
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
7017 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var3
, var_tkwcontinuenode2
, var4
, var5
) /* init_acontinueexpr on <var3:AContinueExpr>*/;
7018 var_pexprnode1
= var3
;
7019 var_node_list
= var_pexprnode1
;
7020 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction613> */
7021 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
7022 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
7025 /* method parser#ReduceAction613#action for (self: Object, Parser) */
7026 void VIRTUAL_parser__ReduceAction613__action(val
* self
, val
* p0
) {
7027 parser__ReduceAction613__action(self
, p0
);
7030 /* method parser#ReduceAction614#action for (self: ReduceAction614, Parser) */
7031 void parser__ReduceAction614__action(val
* self
, val
* p0
) {
7032 val
* var_p
/* var p: Parser */;
7033 val
* var
/* : null */;
7034 val
* var_node_list
/* var node_list: nullable Object */;
7035 val
* var1
/* : nullable Object */;
7036 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7037 val
* var2
/* : nullable Object */;
7038 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7039 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
7040 short int var3
/* : Bool */;
7043 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
7044 short int var4
/* : Bool */;
7047 val
* var7
/* : AContinueExpr */;
7048 val
* var8
/* : null */;
7049 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
7050 long var9
/* : Int */;
7051 long var10
/* : Int */;
7054 var_node_list
= var
;
7055 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7056 var_nodearraylist2
= var1
;
7057 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7058 var_nodearraylist1
= var2
;
7059 var_tkwcontinuenode2
= var_nodearraylist1
;
7060 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
7061 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
7062 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
7063 if(var_tkwcontinuenode2
== NULL
) {
7066 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
7069 var3
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
7073 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7074 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24331);
7077 var_plabelnode3
= var_nodearraylist2
;
7078 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
7079 cltype5
= type_nullable_parser_nodes__ALabel
.color
;
7080 idtype6
= type_nullable_parser_nodes__ALabel
.id
;
7081 if(var_plabelnode3
== NULL
) {
7084 if(cltype5
>= var_plabelnode3
->type
->table_size
) {
7087 var4
= var_plabelnode3
->type
->type_table
[cltype5
] == idtype6
;
7091 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7092 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24333);
7095 var7
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
7097 ((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>*/;
7098 var_pexprnode1
= var7
;
7099 var_node_list
= var_pexprnode1
;
7100 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction614> */
7101 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7102 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7105 /* method parser#ReduceAction614#action for (self: Object, Parser) */
7106 void VIRTUAL_parser__ReduceAction614__action(val
* self
, val
* p0
) {
7107 parser__ReduceAction614__action(self
, p0
);
7110 /* method parser#ReduceAction615#action for (self: ReduceAction615, Parser) */
7111 void parser__ReduceAction615__action(val
* self
, val
* p0
) {
7112 val
* var_p
/* var p: Parser */;
7113 val
* var
/* : null */;
7114 val
* var_node_list
/* var node_list: nullable Object */;
7115 val
* var1
/* : nullable Object */;
7116 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7117 val
* var2
/* : nullable Object */;
7118 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7119 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
7120 short int var3
/* : Bool */;
7123 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7124 short int var4
/* : Bool */;
7127 val
* var7
/* : AContinueExpr */;
7128 val
* var8
/* : null */;
7129 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
7130 long var9
/* : Int */;
7131 long var10
/* : Int */;
7134 var_node_list
= var
;
7135 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7136 var_nodearraylist2
= var1
;
7137 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7138 var_nodearraylist1
= var2
;
7139 var_tkwcontinuenode2
= var_nodearraylist1
;
7140 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
7141 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
7142 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
7143 if(var_tkwcontinuenode2
== NULL
) {
7146 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
7149 var3
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
7153 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7154 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24351);
7157 var_pexprnode4
= var_nodearraylist2
;
7158 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7159 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
7160 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
7161 if(var_pexprnode4
== NULL
) {
7164 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
7167 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
7171 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7172 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24353);
7175 var7
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
7177 ((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>*/;
7178 var_pexprnode1
= var7
;
7179 var_node_list
= var_pexprnode1
;
7180 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction615> */
7181 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7182 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7185 /* method parser#ReduceAction615#action for (self: Object, Parser) */
7186 void VIRTUAL_parser__ReduceAction615__action(val
* self
, val
* p0
) {
7187 parser__ReduceAction615__action(self
, p0
);
7190 /* method parser#ReduceAction616#action for (self: ReduceAction616, Parser) */
7191 void parser__ReduceAction616__action(val
* self
, val
* p0
) {
7192 val
* var_p
/* var p: Parser */;
7193 val
* var
/* : null */;
7194 val
* var_node_list
/* var node_list: nullable Object */;
7195 val
* var1
/* : nullable Object */;
7196 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7197 val
* var2
/* : nullable Object */;
7198 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7199 val
* var3
/* : nullable Object */;
7200 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7201 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
7202 short int var4
/* : Bool */;
7205 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
7206 short int var5
/* : Bool */;
7209 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7210 short int var8
/* : Bool */;
7213 val
* var11
/* : AContinueExpr */;
7214 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
7215 long var12
/* : Int */;
7216 long var13
/* : Int */;
7219 var_node_list
= var
;
7220 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7221 var_nodearraylist3
= var1
;
7222 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7223 var_nodearraylist2
= var2
;
7224 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7225 var_nodearraylist1
= var3
;
7226 var_tkwcontinuenode2
= var_nodearraylist1
;
7227 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
7228 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
7229 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
7230 if(var_tkwcontinuenode2
== NULL
) {
7233 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
7236 var4
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
7240 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7241 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24372);
7244 var_plabelnode3
= var_nodearraylist2
;
7245 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
7246 cltype6
= type_nullable_parser_nodes__ALabel
.color
;
7247 idtype7
= type_nullable_parser_nodes__ALabel
.id
;
7248 if(var_plabelnode3
== NULL
) {
7251 if(cltype6
>= var_plabelnode3
->type
->table_size
) {
7254 var5
= var_plabelnode3
->type
->type_table
[cltype6
] == idtype7
;
7258 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7259 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24374);
7262 var_pexprnode4
= var_nodearraylist3
;
7263 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7264 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
7265 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
7266 if(var_pexprnode4
== NULL
) {
7269 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
7272 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
7276 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7277 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24376);
7280 var11
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
7281 ((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>*/;
7282 var_pexprnode1
= var11
;
7283 var_node_list
= var_pexprnode1
;
7284 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction616> */
7285 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
7286 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
7289 /* method parser#ReduceAction616#action for (self: Object, Parser) */
7290 void VIRTUAL_parser__ReduceAction616__action(val
* self
, val
* p0
) {
7291 parser__ReduceAction616__action(self
, p0
);
7294 /* method parser#ReduceAction623#action for (self: ReduceAction623, Parser) */
7295 void parser__ReduceAction623__action(val
* self
, val
* p0
) {
7296 val
* var_p
/* var p: Parser */;
7297 val
* var
/* : null */;
7298 val
* var_node_list
/* var node_list: nullable Object */;
7299 val
* var1
/* : nullable Object */;
7300 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7301 val
* var2
/* : nullable Object */;
7302 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7303 val
* var3
/* : nullable Object */;
7304 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7305 val
* var4
/* : nullable Object */;
7306 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7307 val
* var5
/* : nullable Object */;
7308 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7309 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7310 short int var6
/* : Bool */;
7313 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7314 short int var7
/* : Bool */;
7317 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7318 short int var10
/* : Bool */;
7321 val
* var13
/* : ACallExpr */;
7322 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
7323 long var14
/* : Int */;
7324 long var15
/* : Int */;
7327 var_node_list
= var
;
7328 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7329 var_nodearraylist5
= var1
;
7330 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7331 var_nodearraylist4
= var2
;
7332 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7333 var_nodearraylist3
= var3
;
7334 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7335 var_nodearraylist2
= var4
;
7336 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7337 var_nodearraylist1
= var5
;
7338 var_pexprnode2
= var_nodearraylist1
;
7339 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7340 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7341 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7342 if(var_pexprnode2
== NULL
) {
7345 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7348 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7352 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7353 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24397);
7356 var_tidnode3
= var_nodearraylist4
;
7357 /* <var_tidnode3:nullable Object> isa nullable TId */
7358 cltype8
= type_nullable_parser_nodes__TId
.color
;
7359 idtype9
= type_nullable_parser_nodes__TId
.id
;
7360 if(var_tidnode3
== NULL
) {
7363 if(cltype8
>= var_tidnode3
->type
->table_size
) {
7366 var7
= var_tidnode3
->type
->type_table
[cltype8
] == idtype9
;
7370 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7371 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24399);
7374 var_pexprsnode4
= var_nodearraylist5
;
7375 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7376 cltype11
= type_nullable_parser_nodes__AExprs
.color
;
7377 idtype12
= type_nullable_parser_nodes__AExprs
.id
;
7378 if(var_pexprsnode4
== NULL
) {
7381 if(cltype11
>= var_pexprsnode4
->type
->table_size
) {
7384 var10
= var_pexprsnode4
->type
->type_table
[cltype11
] == idtype12
;
7388 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7389 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24401);
7392 var13
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
7393 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var13
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var13:ACallExpr>*/;
7394 var_pexprnode1
= var13
;
7395 var_node_list
= var_pexprnode1
;
7396 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction623> */
7397 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
7398 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
7401 /* method parser#ReduceAction623#action for (self: Object, Parser) */
7402 void VIRTUAL_parser__ReduceAction623__action(val
* self
, val
* p0
) {
7403 parser__ReduceAction623__action(self
, p0
);
7406 /* method parser#ReduceAction624#action for (self: ReduceAction624, Parser) */
7407 void parser__ReduceAction624__action(val
* self
, val
* p0
) {
7408 val
* var_p
/* var p: Parser */;
7409 val
* var
/* : null */;
7410 val
* var_node_list
/* var node_list: nullable Object */;
7411 val
* var1
/* : nullable Object */;
7412 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7413 val
* var2
/* : nullable Object */;
7414 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7415 val
* var3
/* : AImplicitSelfExpr */;
7416 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
7417 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7418 short int var4
/* : Bool */;
7421 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7422 short int var5
/* : Bool */;
7425 val
* var8
/* : ACallExpr */;
7426 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
7427 long var9
/* : Int */;
7428 long var10
/* : Int */;
7431 var_node_list
= var
;
7432 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7433 var_nodearraylist2
= var1
;
7434 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7435 var_nodearraylist1
= var2
;
7436 var3
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
7437 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var3
) /* init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/;
7438 var_pexprnode2
= var3
;
7439 var_tidnode3
= var_nodearraylist1
;
7440 /* <var_tidnode3:nullable Object> isa nullable TId */
7441 cltype
= type_nullable_parser_nodes__TId
.color
;
7442 idtype
= type_nullable_parser_nodes__TId
.id
;
7443 if(var_tidnode3
== NULL
) {
7446 if(cltype
>= var_tidnode3
->type
->table_size
) {
7449 var4
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
7453 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7454 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24420);
7457 var_pexprsnode4
= var_nodearraylist2
;
7458 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7459 cltype6
= type_nullable_parser_nodes__AExprs
.color
;
7460 idtype7
= type_nullable_parser_nodes__AExprs
.id
;
7461 if(var_pexprsnode4
== NULL
) {
7464 if(cltype6
>= var_pexprsnode4
->type
->table_size
) {
7467 var5
= var_pexprsnode4
->type
->type_table
[cltype6
] == idtype7
;
7471 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7472 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24422);
7475 var8
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
7476 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var8
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var8:ACallExpr>*/;
7477 var_pexprnode1
= var8
;
7478 var_node_list
= var_pexprnode1
;
7479 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction624> */
7480 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7481 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7484 /* method parser#ReduceAction624#action for (self: Object, Parser) */
7485 void VIRTUAL_parser__ReduceAction624__action(val
* self
, val
* p0
) {
7486 parser__ReduceAction624__action(self
, p0
);
7489 /* method parser#ReduceAction625#action for (self: ReduceAction625, Parser) */
7490 void parser__ReduceAction625__action(val
* self
, val
* p0
) {
7491 val
* var_p
/* var p: Parser */;
7492 val
* var
/* : null */;
7493 val
* var_node_list
/* var node_list: nullable Object */;
7494 val
* var1
/* : nullable Object */;
7495 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7496 val
* var2
/* : nullable Object */;
7497 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7498 val
* var3
/* : nullable Object */;
7499 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7500 val
* var4
/* : nullable Object */;
7501 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7502 val
* var5
/* : nullable Object */;
7503 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7504 val
* var6
/* : nullable Object */;
7505 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7506 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7507 short int var7
/* : Bool */;
7510 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7511 short int var8
/* : Bool */;
7514 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7515 short int var11
/* : Bool */;
7518 val
* var14
/* : ACallExpr */;
7519 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
7520 long var15
/* : Int */;
7521 long var16
/* : Int */;
7524 var_node_list
= var
;
7525 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7526 var_nodearraylist6
= var1
;
7527 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7528 var_nodearraylist5
= var2
;
7529 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7530 var_nodearraylist4
= var3
;
7531 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7532 var_nodearraylist3
= var4
;
7533 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7534 var_nodearraylist2
= var5
;
7535 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7536 var_nodearraylist1
= var6
;
7537 var_pexprnode2
= var_nodearraylist1
;
7538 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7539 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7540 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7541 if(var_pexprnode2
== NULL
) {
7544 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7547 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7551 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7552 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24444);
7555 var_tidnode3
= var_nodearraylist5
;
7556 /* <var_tidnode3:nullable Object> isa nullable TId */
7557 cltype9
= type_nullable_parser_nodes__TId
.color
;
7558 idtype10
= type_nullable_parser_nodes__TId
.id
;
7559 if(var_tidnode3
== NULL
) {
7562 if(cltype9
>= var_tidnode3
->type
->table_size
) {
7565 var8
= var_tidnode3
->type
->type_table
[cltype9
] == idtype10
;
7569 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7570 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24446);
7573 var_pexprsnode4
= var_nodearraylist6
;
7574 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7575 cltype12
= type_nullable_parser_nodes__AExprs
.color
;
7576 idtype13
= type_nullable_parser_nodes__AExprs
.id
;
7577 if(var_pexprsnode4
== NULL
) {
7580 if(cltype12
>= var_pexprsnode4
->type
->table_size
) {
7583 var11
= var_pexprsnode4
->type
->type_table
[cltype12
] == idtype13
;
7587 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7588 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24448);
7591 var14
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
7592 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var14
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var14:ACallExpr>*/;
7593 var_pexprnode1
= var14
;
7594 var_node_list
= var_pexprnode1
;
7595 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction625> */
7596 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
7597 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
7600 /* method parser#ReduceAction625#action for (self: Object, Parser) */
7601 void VIRTUAL_parser__ReduceAction625__action(val
* self
, val
* p0
) {
7602 parser__ReduceAction625__action(self
, p0
);
7605 /* method parser#ReduceAction626#action for (self: ReduceAction626, Parser) */
7606 void parser__ReduceAction626__action(val
* self
, val
* p0
) {
7607 val
* var_p
/* var p: Parser */;
7608 val
* var
/* : null */;
7609 val
* var_node_list
/* var node_list: nullable Object */;
7610 val
* var1
/* : nullable Object */;
7611 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7612 val
* var2
/* : nullable Object */;
7613 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7614 val
* var3
/* : nullable Object */;
7615 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7616 val
* var4
/* : nullable Object */;
7617 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7618 val
* var5
/* : nullable Object */;
7619 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7620 val
* var6
/* : nullable Object */;
7621 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7622 val
* var7
/* : nullable Object */;
7623 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7624 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7625 short int var8
/* : Bool */;
7628 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7629 short int var9
/* : Bool */;
7632 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7633 short int var12
/* : Bool */;
7636 val
* var15
/* : ACallExpr */;
7637 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
7638 long var16
/* : Int */;
7639 long var17
/* : Int */;
7642 var_node_list
= var
;
7643 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7644 var_nodearraylist7
= var1
;
7645 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7646 var_nodearraylist6
= var2
;
7647 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7648 var_nodearraylist5
= var3
;
7649 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7650 var_nodearraylist4
= var4
;
7651 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7652 var_nodearraylist3
= var5
;
7653 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7654 var_nodearraylist2
= var6
;
7655 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7656 var_nodearraylist1
= var7
;
7657 var_pexprnode2
= var_nodearraylist1
;
7658 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7659 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7660 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7661 if(var_pexprnode2
== NULL
) {
7664 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7667 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7671 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7672 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24471);
7675 var_tidnode3
= var_nodearraylist6
;
7676 /* <var_tidnode3:nullable Object> isa nullable TId */
7677 cltype10
= type_nullable_parser_nodes__TId
.color
;
7678 idtype11
= type_nullable_parser_nodes__TId
.id
;
7679 if(var_tidnode3
== NULL
) {
7682 if(cltype10
>= var_tidnode3
->type
->table_size
) {
7685 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
7689 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7690 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24473);
7693 var_pexprsnode4
= var_nodearraylist7
;
7694 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7695 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
7696 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
7697 if(var_pexprsnode4
== NULL
) {
7700 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
7703 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
7707 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7708 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24475);
7711 var15
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
7712 ((void (*)(val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var15
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var15:ACallExpr>*/;
7713 var_pexprnode1
= var15
;
7714 var_node_list
= var_pexprnode1
;
7715 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction626> */
7716 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
7717 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
7720 /* method parser#ReduceAction626#action for (self: Object, Parser) */
7721 void VIRTUAL_parser__ReduceAction626__action(val
* self
, val
* p0
) {
7722 parser__ReduceAction626__action(self
, p0
);
7725 /* method parser#ReduceAction628#action for (self: ReduceAction628, Parser) */
7726 void parser__ReduceAction628__action(val
* self
, val
* p0
) {
7727 val
* var_p
/* var p: Parser */;
7728 val
* var
/* : null */;
7729 val
* var_node_list
/* var node_list: nullable Object */;
7730 val
* var1
/* : nullable Object */;
7731 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7732 val
* var2
/* : nullable Object */;
7733 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7734 val
* var3
/* : nullable Object */;
7735 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7736 val
* var4
/* : AImplicitSelfExpr */;
7737 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
7738 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7739 short int var5
/* : Bool */;
7742 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7743 short int var6
/* : Bool */;
7746 val
* var9
/* : ACallExpr */;
7747 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
7748 long var10
/* : Int */;
7749 long var11
/* : Int */;
7752 var_node_list
= var
;
7753 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7754 var_nodearraylist3
= var1
;
7755 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7756 var_nodearraylist2
= var2
;
7757 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7758 var_nodearraylist1
= var3
;
7759 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
7760 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
7761 var_pexprnode2
= var4
;
7762 var_tidnode3
= var_nodearraylist2
;
7763 /* <var_tidnode3:nullable Object> isa nullable TId */
7764 cltype
= type_nullable_parser_nodes__TId
.color
;
7765 idtype
= type_nullable_parser_nodes__TId
.id
;
7766 if(var_tidnode3
== NULL
) {
7769 if(cltype
>= var_tidnode3
->type
->table_size
) {
7772 var5
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
7776 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7777 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24495);
7780 var_pexprsnode4
= var_nodearraylist3
;
7781 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7782 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
7783 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
7784 if(var_pexprsnode4
== NULL
) {
7787 if(cltype7
>= var_pexprsnode4
->type
->table_size
) {
7790 var6
= var_pexprsnode4
->type
->type_table
[cltype7
] == idtype8
;
7794 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7795 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24497);
7798 var9
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
7799 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var9
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var9:ACallExpr>*/;
7800 var_pexprnode1
= var9
;
7801 var_node_list
= var_pexprnode1
;
7802 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction628> */
7803 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7804 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7807 /* method parser#ReduceAction628#action for (self: Object, Parser) */
7808 void VIRTUAL_parser__ReduceAction628__action(val
* self
, val
* p0
) {
7809 parser__ReduceAction628__action(self
, p0
);
7812 /* method parser#ReduceAction629#action for (self: ReduceAction629, Parser) */
7813 void parser__ReduceAction629__action(val
* self
, val
* p0
) {
7814 val
* var_p
/* var p: Parser */;
7815 val
* var
/* : null */;
7816 val
* var_node_list
/* var node_list: nullable Object */;
7817 val
* var1
/* : nullable Object */;
7818 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7819 val
* var2
/* : nullable Object */;
7820 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7821 val
* var3
/* : nullable Object */;
7822 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7823 val
* var4
/* : nullable Object */;
7824 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7825 val
* var5
/* : AImplicitSelfExpr */;
7826 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
7827 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7828 short int var6
/* : Bool */;
7831 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7832 short int var7
/* : Bool */;
7835 val
* var10
/* : ACallExpr */;
7836 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
7837 long var11
/* : Int */;
7838 long var12
/* : Int */;
7841 var_node_list
= var
;
7842 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7843 var_nodearraylist4
= var1
;
7844 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7845 var_nodearraylist3
= var2
;
7846 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7847 var_nodearraylist2
= var3
;
7848 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7849 var_nodearraylist1
= var4
;
7850 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
7851 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
7852 var_pexprnode2
= var5
;
7853 var_tidnode3
= var_nodearraylist3
;
7854 /* <var_tidnode3:nullable Object> isa nullable TId */
7855 cltype
= type_nullable_parser_nodes__TId
.color
;
7856 idtype
= type_nullable_parser_nodes__TId
.id
;
7857 if(var_tidnode3
== NULL
) {
7860 if(cltype
>= var_tidnode3
->type
->table_size
) {
7863 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
7867 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7868 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24518);
7871 var_pexprsnode4
= var_nodearraylist4
;
7872 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7873 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
7874 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
7875 if(var_pexprsnode4
== NULL
) {
7878 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
7881 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
7885 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7886 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24520);
7889 var10
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
7890 ((void (*)(val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var10
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var10:ACallExpr>*/;
7891 var_pexprnode1
= var10
;
7892 var_node_list
= var_pexprnode1
;
7893 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction629> */
7894 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
7895 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
7898 /* method parser#ReduceAction629#action for (self: Object, Parser) */
7899 void VIRTUAL_parser__ReduceAction629__action(val
* self
, val
* p0
) {
7900 parser__ReduceAction629__action(self
, p0
);
7903 /* method parser#ReduceAction631#action for (self: ReduceAction631, Parser) */
7904 void parser__ReduceAction631__action(val
* self
, val
* p0
) {
7905 val
* var_p
/* var p: Parser */;
7906 val
* var
/* : null */;
7907 val
* var_node_list
/* var node_list: nullable Object */;
7908 val
* var1
/* : nullable Object */;
7909 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7910 val
* var2
/* : nullable Object */;
7911 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7912 val
* var_tkwsupernode3
/* var tkwsupernode3: nullable Object */;
7913 short int var3
/* : Bool */;
7916 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7917 short int var4
/* : Bool */;
7920 val
* var7
/* : ASuperExpr */;
7921 val
* var8
/* : null */;
7922 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
7923 long var9
/* : Int */;
7924 long var10
/* : Int */;
7927 var_node_list
= var
;
7928 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7929 var_nodearraylist2
= var1
;
7930 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7931 var_nodearraylist1
= var2
;
7932 var_tkwsupernode3
= var_nodearraylist1
;
7933 /* <var_tkwsupernode3:nullable Object> isa nullable TKwsuper */
7934 cltype
= type_nullable_parser_nodes__TKwsuper
.color
;
7935 idtype
= type_nullable_parser_nodes__TKwsuper
.id
;
7936 if(var_tkwsupernode3
== NULL
) {
7939 if(cltype
>= var_tkwsupernode3
->type
->table_size
) {
7942 var3
= var_tkwsupernode3
->type
->type_table
[cltype
] == idtype
;
7946 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7947 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24538);
7950 var_pexprsnode4
= var_nodearraylist2
;
7951 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7952 cltype5
= type_nullable_parser_nodes__AExprs
.color
;
7953 idtype6
= type_nullable_parser_nodes__AExprs
.id
;
7954 if(var_pexprsnode4
== NULL
) {
7957 if(cltype5
>= var_pexprsnode4
->type
->table_size
) {
7960 var4
= var_pexprsnode4
->type
->type_table
[cltype5
] == idtype6
;
7964 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7965 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24540);
7968 var7
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
7970 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ASuperExpr__init_asuperexpr
]))(var7
, var8
, var_tkwsupernode3
, var_pexprsnode4
) /* init_asuperexpr on <var7:ASuperExpr>*/;
7971 var_pexprnode1
= var7
;
7972 var_node_list
= var_pexprnode1
;
7973 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction631> */
7974 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7975 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7978 /* method parser#ReduceAction631#action for (self: Object, Parser) */
7979 void VIRTUAL_parser__ReduceAction631__action(val
* self
, val
* p0
) {
7980 parser__ReduceAction631__action(self
, p0
);
7983 /* method parser#ReduceAction632#action for (self: ReduceAction632, Parser) */
7984 void parser__ReduceAction632__action(val
* self
, val
* p0
) {
7985 val
* var_p
/* var p: Parser */;
7986 val
* var
/* : null */;
7987 val
* var_node_list
/* var node_list: nullable Object */;
7988 val
* var1
/* : nullable Object */;
7989 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7990 val
* var2
/* : nullable Object */;
7991 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7992 val
* var3
/* : nullable Object */;
7993 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7994 val
* var4
/* : Array[Object] */;
7995 val
* var_listnode3
/* var listnode3: Array[Object] */;
7996 val
* var_tclassidnode4
/* var tclassidnode4: nullable Object */;
7997 short int var5
/* : Bool */;
8000 val
* var6
/* : AQualified */;
8001 val
* var_pqualifiednode2
/* var pqualifiednode2: nullable AQualified */;
8002 val
* var_tkwsupernode5
/* var tkwsupernode5: nullable Object */;
8003 short int var7
/* : Bool */;
8006 val
* var_pexprsnode6
/* var pexprsnode6: nullable Object */;
8007 short int var10
/* : Bool */;
8010 val
* var13
/* : ASuperExpr */;
8011 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
8012 long var14
/* : Int */;
8013 long var15
/* : Int */;
8016 var_node_list
= var
;
8017 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8018 var_nodearraylist3
= var1
;
8019 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8020 var_nodearraylist2
= var2
;
8021 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8022 var_nodearraylist1
= var3
;
8023 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
8024 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
8025 var_listnode3
= var4
;
8026 var_tclassidnode4
= var_nodearraylist1
;
8027 /* <var_tclassidnode4:nullable Object> isa nullable TClassid */
8028 cltype
= type_nullable_parser_nodes__TClassid
.color
;
8029 idtype
= type_nullable_parser_nodes__TClassid
.id
;
8030 if(var_tclassidnode4
== NULL
) {
8033 if(cltype
>= var_tclassidnode4
->type
->table_size
) {
8036 var5
= var_tclassidnode4
->type
->type_table
[cltype
] == idtype
;
8040 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8041 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24560);
8044 var6
= NEW_parser_nodes__AQualified(&type_parser_nodes__AQualified
);
8045 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AQualified__init_aqualified
]))(var6
, var_listnode3
, var_tclassidnode4
) /* init_aqualified on <var6:AQualified>*/;
8046 var_pqualifiednode2
= var6
;
8047 var_tkwsupernode5
= var_nodearraylist2
;
8048 /* <var_tkwsupernode5:nullable Object> isa nullable TKwsuper */
8049 cltype8
= type_nullable_parser_nodes__TKwsuper
.color
;
8050 idtype9
= type_nullable_parser_nodes__TKwsuper
.id
;
8051 if(var_tkwsupernode5
== NULL
) {
8054 if(cltype8
>= var_tkwsupernode5
->type
->table_size
) {
8057 var7
= var_tkwsupernode5
->type
->type_table
[cltype8
] == idtype9
;
8061 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8062 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24566);
8065 var_pexprsnode6
= var_nodearraylist3
;
8066 /* <var_pexprsnode6:nullable Object> isa nullable AExprs */
8067 cltype11
= type_nullable_parser_nodes__AExprs
.color
;
8068 idtype12
= type_nullable_parser_nodes__AExprs
.id
;
8069 if(var_pexprsnode6
== NULL
) {
8072 if(cltype11
>= var_pexprsnode6
->type
->table_size
) {
8075 var10
= var_pexprsnode6
->type
->type_table
[cltype11
] == idtype12
;
8079 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8080 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24568);
8083 var13
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
8084 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__ASuperExpr__init_asuperexpr
]))(var13
, var_pqualifiednode2
, var_tkwsupernode5
, var_pexprsnode6
) /* init_asuperexpr on <var13:ASuperExpr>*/;
8085 var_pexprnode1
= var13
;
8086 var_node_list
= var_pexprnode1
;
8087 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction632> */
8088 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
8089 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
8092 /* method parser#ReduceAction632#action for (self: Object, Parser) */
8093 void VIRTUAL_parser__ReduceAction632__action(val
* self
, val
* p0
) {
8094 parser__ReduceAction632__action(self
, p0
);
8097 /* method parser#ReduceAction633#action for (self: ReduceAction633, Parser) */
8098 void parser__ReduceAction633__action(val
* self
, val
* p0
) {
8099 val
* var_p
/* var p: Parser */;
8100 val
* var
/* : null */;
8101 val
* var_node_list
/* var node_list: nullable Object */;
8102 val
* var1
/* : nullable Object */;
8103 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8104 val
* var2
/* : nullable Object */;
8105 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8106 val
* var3
/* : nullable Object */;
8107 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8108 val
* var4
/* : nullable Object */;
8109 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8110 val
* var5
/* : Array[Object] */;
8111 val
* var_listnode4
/* var listnode4: Array[Object] */;
8112 val
* var_listnode3
/* var listnode3: nullable Object */;
8113 short int var6
/* : Bool */;
8116 val
* var7
/* : Array[Object] */;
8117 val
* var_tclassidnode5
/* var tclassidnode5: nullable Object */;
8118 short int var8
/* : Bool */;
8121 val
* var11
/* : AQualified */;
8122 val
* var_pqualifiednode2
/* var pqualifiednode2: nullable AQualified */;
8123 val
* var_tkwsupernode6
/* var tkwsupernode6: nullable Object */;
8124 short int var12
/* : Bool */;
8127 val
* var_pexprsnode7
/* var pexprsnode7: nullable Object */;
8128 short int var15
/* : Bool */;
8131 val
* var18
/* : ASuperExpr */;
8132 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
8133 long var19
/* : Int */;
8134 long var20
/* : Int */;
8137 var_node_list
= var
;
8138 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8139 var_nodearraylist4
= var1
;
8140 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8141 var_nodearraylist3
= var2
;
8142 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8143 var_nodearraylist2
= var3
;
8144 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8145 var_nodearraylist1
= var4
;
8146 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
8147 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
8148 var_listnode4
= var5
;
8149 var_listnode3
= var_nodearraylist1
;
8150 /* <var_listnode3:nullable Object> isa Array[Object] */
8151 cltype
= type_array__Arraykernel__Object
.color
;
8152 idtype
= type_array__Arraykernel__Object
.id
;
8153 if(var_listnode3
== NULL
) {
8156 if(cltype
>= var_listnode3
->type
->table_size
) {
8159 var6
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
8163 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8164 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24589);
8167 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction633>*/;
8168 var_listnode4
= var7
;
8169 var_tclassidnode5
= var_nodearraylist2
;
8170 /* <var_tclassidnode5:nullable Object> isa nullable TClassid */
8171 cltype9
= type_nullable_parser_nodes__TClassid
.color
;
8172 idtype10
= type_nullable_parser_nodes__TClassid
.id
;
8173 if(var_tclassidnode5
== NULL
) {
8176 if(cltype9
>= var_tclassidnode5
->type
->table_size
) {
8179 var8
= var_tclassidnode5
->type
->type_table
[cltype9
] == idtype10
;
8183 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8184 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24592);
8187 var11
= NEW_parser_nodes__AQualified(&type_parser_nodes__AQualified
);
8188 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AQualified__init_aqualified
]))(var11
, var_listnode4
, var_tclassidnode5
) /* init_aqualified on <var11:AQualified>*/;
8189 var_pqualifiednode2
= var11
;
8190 var_tkwsupernode6
= var_nodearraylist3
;
8191 /* <var_tkwsupernode6:nullable Object> isa nullable TKwsuper */
8192 cltype13
= type_nullable_parser_nodes__TKwsuper
.color
;
8193 idtype14
= type_nullable_parser_nodes__TKwsuper
.id
;
8194 if(var_tkwsupernode6
== NULL
) {
8197 if(cltype13
>= var_tkwsupernode6
->type
->table_size
) {
8200 var12
= var_tkwsupernode6
->type
->type_table
[cltype13
] == idtype14
;
8204 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8205 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24598);
8208 var_pexprsnode7
= var_nodearraylist4
;
8209 /* <var_pexprsnode7:nullable Object> isa nullable AExprs */
8210 cltype16
= type_nullable_parser_nodes__AExprs
.color
;
8211 idtype17
= type_nullable_parser_nodes__AExprs
.id
;
8212 if(var_pexprsnode7
== NULL
) {
8215 if(cltype16
>= var_pexprsnode7
->type
->table_size
) {
8218 var15
= var_pexprsnode7
->type
->type_table
[cltype16
] == idtype17
;
8222 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8223 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24600);
8226 var18
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
8227 ((void (*)(val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__ASuperExpr__init_asuperexpr
]))(var18
, var_pqualifiednode2
, var_tkwsupernode6
, var_pexprsnode7
) /* init_asuperexpr on <var18:ASuperExpr>*/;
8228 var_pexprnode1
= var18
;
8229 var_node_list
= var_pexprnode1
;
8230 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction633> */
8231 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
8232 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
8235 /* method parser#ReduceAction633#action for (self: Object, Parser) */
8236 void VIRTUAL_parser__ReduceAction633__action(val
* self
, val
* p0
) {
8237 parser__ReduceAction633__action(self
, p0
);
8240 /* method parser#ReduceAction634#action for (self: ReduceAction634, Parser) */
8241 void parser__ReduceAction634__action(val
* self
, val
* p0
) {
8242 val
* var_p
/* var p: Parser */;
8243 val
* var
/* : null */;
8244 val
* var_node_list
/* var node_list: nullable Object */;
8245 val
* var1
/* : nullable Object */;
8246 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8247 val
* var2
/* : nullable Object */;
8248 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8249 val
* var3
/* : nullable Object */;
8250 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8251 val
* var4
/* : Array[Object] */;
8252 val
* var_listnode4
/* var listnode4: Array[Object] */;
8253 val
* var_listnode3
/* var listnode3: nullable Object */;
8254 short int var5
/* : Bool */;
8257 val
* var6
/* : Array[Object] */;
8258 val
* var7
/* : AQualified */;
8259 val
* var8
/* : null */;
8260 val
* var_pqualifiednode2
/* var pqualifiednode2: nullable AQualified */;
8261 val
* var_tkwsupernode6
/* var tkwsupernode6: nullable Object */;
8262 short int var9
/* : Bool */;
8265 val
* var_pexprsnode7
/* var pexprsnode7: nullable Object */;
8266 short int var12
/* : Bool */;
8269 val
* var15
/* : ASuperExpr */;
8270 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
8271 long var16
/* : Int */;
8272 long var17
/* : Int */;
8275 var_node_list
= var
;
8276 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8277 var_nodearraylist3
= var1
;
8278 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8279 var_nodearraylist2
= var2
;
8280 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8281 var_nodearraylist1
= var3
;
8282 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
8283 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
8284 var_listnode4
= var4
;
8285 var_listnode3
= var_nodearraylist1
;
8286 /* <var_listnode3:nullable Object> isa Array[Object] */
8287 cltype
= type_array__Arraykernel__Object
.color
;
8288 idtype
= type_array__Arraykernel__Object
.id
;
8289 if(var_listnode3
== NULL
) {
8292 if(cltype
>= var_listnode3
->type
->table_size
) {
8295 var5
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
8299 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8300 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24620);
8303 var6
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction634>*/;
8304 var_listnode4
= var6
;
8305 var7
= NEW_parser_nodes__AQualified(&type_parser_nodes__AQualified
);
8307 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AQualified__init_aqualified
]))(var7
, var_listnode4
, var8
) /* init_aqualified on <var7:AQualified>*/;
8308 var_pqualifiednode2
= var7
;
8309 var_tkwsupernode6
= var_nodearraylist2
;
8310 /* <var_tkwsupernode6:nullable Object> isa nullable TKwsuper */
8311 cltype10
= type_nullable_parser_nodes__TKwsuper
.color
;
8312 idtype11
= type_nullable_parser_nodes__TKwsuper
.id
;
8313 if(var_tkwsupernode6
== NULL
) {
8316 if(cltype10
>= var_tkwsupernode6
->type
->table_size
) {
8319 var9
= var_tkwsupernode6
->type
->type_table
[cltype10
] == idtype11
;
8323 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8324 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24627);
8327 var_pexprsnode7
= var_nodearraylist3
;
8328 /* <var_pexprsnode7:nullable Object> isa nullable AExprs */
8329 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
8330 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
8331 if(var_pexprsnode7
== NULL
) {
8334 if(cltype13
>= var_pexprsnode7
->type
->table_size
) {
8337 var12
= var_pexprsnode7
->type
->type_table
[cltype13
] == idtype14
;
8341 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8342 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24629);
8345 var15
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
8346 ((void (*)(val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ASuperExpr__init_asuperexpr
]))(var15
, var_pqualifiednode2
, var_tkwsupernode6
, var_pexprsnode7
) /* init_asuperexpr on <var15:ASuperExpr>*/;
8347 var_pexprnode1
= var15
;
8348 var_node_list
= var_pexprnode1
;
8349 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction634> */
8350 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
8351 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
8354 /* method parser#ReduceAction634#action for (self: Object, Parser) */
8355 void VIRTUAL_parser__ReduceAction634__action(val
* self
, val
* p0
) {
8356 parser__ReduceAction634__action(self
, p0
);
8359 /* method parser#ReduceAction635#action for (self: ReduceAction635, Parser) */
8360 void parser__ReduceAction635__action(val
* self
, val
* p0
) {
8361 val
* var_p
/* var p: Parser */;
8362 val
* var
/* : null */;
8363 val
* var_node_list
/* var node_list: nullable Object */;
8364 val
* var1
/* : nullable Object */;
8365 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8366 val
* var2
/* : nullable Object */;
8367 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8368 val
* var3
/* : nullable Object */;
8369 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8370 val
* var4
/* : nullable Object */;
8371 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8372 val
* var5
/* : nullable Object */;
8373 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8374 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8375 short int var6
/* : Bool */;
8378 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
8379 short int var7
/* : Bool */;
8382 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8383 short int var10
/* : Bool */;
8386 val
* var13
/* : AInitExpr */;
8387 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
8388 long var14
/* : Int */;
8389 long var15
/* : Int */;
8392 var_node_list
= var
;
8393 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8394 var_nodearraylist5
= var1
;
8395 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8396 var_nodearraylist4
= var2
;
8397 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8398 var_nodearraylist3
= var3
;
8399 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8400 var_nodearraylist2
= var4
;
8401 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8402 var_nodearraylist1
= var5
;
8403 var_pexprnode2
= var_nodearraylist1
;
8404 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8405 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8406 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8407 if(var_pexprnode2
== NULL
) {
8410 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8413 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8417 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8418 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24650);
8421 var_tkwinitnode3
= var_nodearraylist4
;
8422 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
8423 cltype8
= type_nullable_parser_nodes__TKwinit
.color
;
8424 idtype9
= type_nullable_parser_nodes__TKwinit
.id
;
8425 if(var_tkwinitnode3
== NULL
) {
8428 if(cltype8
>= var_tkwinitnode3
->type
->table_size
) {
8431 var7
= var_tkwinitnode3
->type
->type_table
[cltype8
] == idtype9
;
8435 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8436 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24652);
8439 var_pexprsnode4
= var_nodearraylist5
;
8440 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8441 cltype11
= type_nullable_parser_nodes__AExprs
.color
;
8442 idtype12
= type_nullable_parser_nodes__AExprs
.id
;
8443 if(var_pexprsnode4
== NULL
) {
8446 if(cltype11
>= var_pexprsnode4
->type
->table_size
) {
8449 var10
= var_pexprsnode4
->type
->type_table
[cltype11
] == idtype12
;
8453 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8454 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24654);
8457 var13
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
8458 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AInitExpr__init_ainitexpr
]))(var13
, var_pexprnode2
, var_tkwinitnode3
, var_pexprsnode4
) /* init_ainitexpr on <var13:AInitExpr>*/;
8459 var_pexprnode1
= var13
;
8460 var_node_list
= var_pexprnode1
;
8461 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction635> */
8462 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
8463 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
8466 /* method parser#ReduceAction635#action for (self: Object, Parser) */
8467 void VIRTUAL_parser__ReduceAction635__action(val
* self
, val
* p0
) {
8468 parser__ReduceAction635__action(self
, p0
);
8471 /* method parser#ReduceAction636#action for (self: ReduceAction636, Parser) */
8472 void parser__ReduceAction636__action(val
* self
, val
* p0
) {
8473 val
* var_p
/* var p: Parser */;
8474 val
* var
/* : null */;
8475 val
* var_node_list
/* var node_list: nullable Object */;
8476 val
* var1
/* : nullable Object */;
8477 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8478 val
* var2
/* : nullable Object */;
8479 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8480 val
* var3
/* : AImplicitSelfExpr */;
8481 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
8482 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
8483 short int var4
/* : Bool */;
8486 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8487 short int var5
/* : Bool */;
8490 val
* var8
/* : AInitExpr */;
8491 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
8492 long var9
/* : Int */;
8493 long var10
/* : Int */;
8496 var_node_list
= var
;
8497 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8498 var_nodearraylist2
= var1
;
8499 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8500 var_nodearraylist1
= var2
;
8501 var3
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
8502 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var3
) /* init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/;
8503 var_pexprnode2
= var3
;
8504 var_tkwinitnode3
= var_nodearraylist1
;
8505 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
8506 cltype
= type_nullable_parser_nodes__TKwinit
.color
;
8507 idtype
= type_nullable_parser_nodes__TKwinit
.id
;
8508 if(var_tkwinitnode3
== NULL
) {
8511 if(cltype
>= var_tkwinitnode3
->type
->table_size
) {
8514 var4
= var_tkwinitnode3
->type
->type_table
[cltype
] == idtype
;
8518 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8519 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24673);
8522 var_pexprsnode4
= var_nodearraylist2
;
8523 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8524 cltype6
= type_nullable_parser_nodes__AExprs
.color
;
8525 idtype7
= type_nullable_parser_nodes__AExprs
.id
;
8526 if(var_pexprsnode4
== NULL
) {
8529 if(cltype6
>= var_pexprsnode4
->type
->table_size
) {
8532 var5
= var_pexprsnode4
->type
->type_table
[cltype6
] == idtype7
;
8536 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8537 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24675);
8540 var8
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
8541 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AInitExpr__init_ainitexpr
]))(var8
, var_pexprnode2
, var_tkwinitnode3
, var_pexprsnode4
) /* init_ainitexpr on <var8:AInitExpr>*/;
8542 var_pexprnode1
= var8
;
8543 var_node_list
= var_pexprnode1
;
8544 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction636> */
8545 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8546 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8549 /* method parser#ReduceAction636#action for (self: Object, Parser) */
8550 void VIRTUAL_parser__ReduceAction636__action(val
* self
, val
* p0
) {
8551 parser__ReduceAction636__action(self
, p0
);
8554 /* method parser#ReduceAction637#action for (self: ReduceAction637, Parser) */
8555 void parser__ReduceAction637__action(val
* self
, val
* p0
) {
8556 val
* var_p
/* var p: Parser */;
8557 val
* var
/* : null */;
8558 val
* var_node_list
/* var node_list: nullable Object */;
8559 val
* var1
/* : nullable Object */;
8560 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8561 val
* var2
/* : nullable Object */;
8562 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8563 val
* var3
/* : nullable Object */;
8564 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8565 val
* var4
/* : nullable Object */;
8566 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8567 val
* var5
/* : nullable Object */;
8568 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8569 val
* var6
/* : nullable Object */;
8570 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8571 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8572 short int var7
/* : Bool */;
8575 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
8576 short int var8
/* : Bool */;
8579 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8580 short int var11
/* : Bool */;
8583 val
* var14
/* : AInitExpr */;
8584 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
8585 long var15
/* : Int */;
8586 long var16
/* : Int */;
8589 var_node_list
= var
;
8590 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8591 var_nodearraylist6
= var1
;
8592 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8593 var_nodearraylist5
= var2
;
8594 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8595 var_nodearraylist4
= var3
;
8596 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8597 var_nodearraylist3
= var4
;
8598 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8599 var_nodearraylist2
= var5
;
8600 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8601 var_nodearraylist1
= var6
;
8602 var_pexprnode2
= var_nodearraylist1
;
8603 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8604 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8605 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8606 if(var_pexprnode2
== NULL
) {
8609 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8612 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8616 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8617 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24697);
8620 var_tkwinitnode3
= var_nodearraylist5
;
8621 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
8622 cltype9
= type_nullable_parser_nodes__TKwinit
.color
;
8623 idtype10
= type_nullable_parser_nodes__TKwinit
.id
;
8624 if(var_tkwinitnode3
== NULL
) {
8627 if(cltype9
>= var_tkwinitnode3
->type
->table_size
) {
8630 var8
= var_tkwinitnode3
->type
->type_table
[cltype9
] == idtype10
;
8634 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8635 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24699);
8638 var_pexprsnode4
= var_nodearraylist6
;
8639 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8640 cltype12
= type_nullable_parser_nodes__AExprs
.color
;
8641 idtype13
= type_nullable_parser_nodes__AExprs
.id
;
8642 if(var_pexprsnode4
== NULL
) {
8645 if(cltype12
>= var_pexprsnode4
->type
->table_size
) {
8648 var11
= var_pexprsnode4
->type
->type_table
[cltype12
] == idtype13
;
8652 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8653 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24701);
8656 var14
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
8657 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AInitExpr__init_ainitexpr
]))(var14
, var_pexprnode2
, var_tkwinitnode3
, var_pexprsnode4
) /* init_ainitexpr on <var14:AInitExpr>*/;
8658 var_pexprnode1
= var14
;
8659 var_node_list
= var_pexprnode1
;
8660 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction637> */
8661 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
8662 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
8665 /* method parser#ReduceAction637#action for (self: Object, Parser) */
8666 void VIRTUAL_parser__ReduceAction637__action(val
* self
, val
* p0
) {
8667 parser__ReduceAction637__action(self
, p0
);
8670 /* method parser#ReduceAction638#action for (self: ReduceAction638, Parser) */
8671 void parser__ReduceAction638__action(val
* self
, val
* p0
) {
8672 val
* var_p
/* var p: Parser */;
8673 val
* var
/* : null */;
8674 val
* var_node_list
/* var node_list: nullable Object */;
8675 val
* var1
/* : nullable Object */;
8676 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8677 val
* var2
/* : nullable Object */;
8678 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8679 val
* var3
/* : nullable Object */;
8680 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8681 val
* var4
/* : nullable Object */;
8682 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8683 val
* var5
/* : nullable Object */;
8684 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8685 val
* var6
/* : nullable Object */;
8686 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8687 val
* var7
/* : nullable Object */;
8688 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8689 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8690 short int var8
/* : Bool */;
8693 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
8694 short int var9
/* : Bool */;
8697 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8698 short int var12
/* : Bool */;
8701 val
* var15
/* : AInitExpr */;
8702 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
8703 long var16
/* : Int */;
8704 long var17
/* : Int */;
8707 var_node_list
= var
;
8708 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8709 var_nodearraylist7
= var1
;
8710 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8711 var_nodearraylist6
= var2
;
8712 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8713 var_nodearraylist5
= var3
;
8714 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8715 var_nodearraylist4
= var4
;
8716 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8717 var_nodearraylist3
= var5
;
8718 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8719 var_nodearraylist2
= var6
;
8720 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8721 var_nodearraylist1
= var7
;
8722 var_pexprnode2
= var_nodearraylist1
;
8723 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8724 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8725 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8726 if(var_pexprnode2
== NULL
) {
8729 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8732 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8736 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8737 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24724);
8740 var_tkwinitnode3
= var_nodearraylist6
;
8741 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
8742 cltype10
= type_nullable_parser_nodes__TKwinit
.color
;
8743 idtype11
= type_nullable_parser_nodes__TKwinit
.id
;
8744 if(var_tkwinitnode3
== NULL
) {
8747 if(cltype10
>= var_tkwinitnode3
->type
->table_size
) {
8750 var9
= var_tkwinitnode3
->type
->type_table
[cltype10
] == idtype11
;
8754 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8755 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24726);
8758 var_pexprsnode4
= var_nodearraylist7
;
8759 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8760 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
8761 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
8762 if(var_pexprsnode4
== NULL
) {
8765 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
8768 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
8772 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8773 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24728);
8776 var15
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
8777 ((void (*)(val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__AInitExpr__init_ainitexpr
]))(var15
, var_pexprnode2
, var_tkwinitnode3
, var_pexprsnode4
) /* init_ainitexpr on <var15:AInitExpr>*/;
8778 var_pexprnode1
= var15
;
8779 var_node_list
= var_pexprnode1
;
8780 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction638> */
8781 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
8782 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
8785 /* method parser#ReduceAction638#action for (self: Object, Parser) */
8786 void VIRTUAL_parser__ReduceAction638__action(val
* self
, val
* p0
) {
8787 parser__ReduceAction638__action(self
, p0
);
8790 /* method parser#ReduceAction640#action for (self: ReduceAction640, Parser) */
8791 void parser__ReduceAction640__action(val
* self
, val
* p0
) {
8792 val
* var_p
/* var p: Parser */;
8793 val
* var
/* : null */;
8794 val
* var_node_list
/* var node_list: nullable Object */;
8795 val
* var1
/* : nullable Object */;
8796 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8797 val
* var2
/* : nullable Object */;
8798 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8799 val
* var3
/* : nullable Object */;
8800 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8801 val
* var4
/* : AImplicitSelfExpr */;
8802 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
8803 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
8804 short int var5
/* : Bool */;
8807 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8808 short int var6
/* : Bool */;
8811 val
* var9
/* : AInitExpr */;
8812 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
8813 long var10
/* : Int */;
8814 long var11
/* : Int */;
8817 var_node_list
= var
;
8818 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8819 var_nodearraylist3
= var1
;
8820 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8821 var_nodearraylist2
= var2
;
8822 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8823 var_nodearraylist1
= var3
;
8824 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
8825 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
8826 var_pexprnode2
= var4
;
8827 var_tkwinitnode3
= var_nodearraylist2
;
8828 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
8829 cltype
= type_nullable_parser_nodes__TKwinit
.color
;
8830 idtype
= type_nullable_parser_nodes__TKwinit
.id
;
8831 if(var_tkwinitnode3
== NULL
) {
8834 if(cltype
>= var_tkwinitnode3
->type
->table_size
) {
8837 var5
= var_tkwinitnode3
->type
->type_table
[cltype
] == idtype
;
8841 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8842 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24748);
8845 var_pexprsnode4
= var_nodearraylist3
;
8846 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8847 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
8848 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
8849 if(var_pexprsnode4
== NULL
) {
8852 if(cltype7
>= var_pexprsnode4
->type
->table_size
) {
8855 var6
= var_pexprsnode4
->type
->type_table
[cltype7
] == idtype8
;
8859 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8860 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24750);
8863 var9
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
8864 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AInitExpr__init_ainitexpr
]))(var9
, var_pexprnode2
, var_tkwinitnode3
, var_pexprsnode4
) /* init_ainitexpr on <var9:AInitExpr>*/;
8865 var_pexprnode1
= var9
;
8866 var_node_list
= var_pexprnode1
;
8867 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction640> */
8868 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8869 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8872 /* method parser#ReduceAction640#action for (self: Object, Parser) */
8873 void VIRTUAL_parser__ReduceAction640__action(val
* self
, val
* p0
) {
8874 parser__ReduceAction640__action(self
, p0
);
8877 /* method parser#ReduceAction641#action for (self: ReduceAction641, Parser) */
8878 void parser__ReduceAction641__action(val
* self
, val
* p0
) {
8879 val
* var_p
/* var p: Parser */;
8880 val
* var
/* : null */;
8881 val
* var_node_list
/* var node_list: nullable Object */;
8882 val
* var1
/* : nullable Object */;
8883 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8884 val
* var2
/* : nullable Object */;
8885 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8886 val
* var3
/* : nullable Object */;
8887 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8888 val
* var4
/* : nullable Object */;
8889 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8890 val
* var5
/* : AImplicitSelfExpr */;
8891 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
8892 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
8893 short int var6
/* : Bool */;
8896 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8897 short int var7
/* : Bool */;
8900 val
* var10
/* : AInitExpr */;
8901 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
8902 long var11
/* : Int */;
8903 long var12
/* : Int */;
8906 var_node_list
= var
;
8907 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8908 var_nodearraylist4
= var1
;
8909 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8910 var_nodearraylist3
= var2
;
8911 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8912 var_nodearraylist2
= var3
;
8913 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8914 var_nodearraylist1
= var4
;
8915 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
8916 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
8917 var_pexprnode2
= var5
;
8918 var_tkwinitnode3
= var_nodearraylist3
;
8919 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
8920 cltype
= type_nullable_parser_nodes__TKwinit
.color
;
8921 idtype
= type_nullable_parser_nodes__TKwinit
.id
;
8922 if(var_tkwinitnode3
== NULL
) {
8925 if(cltype
>= var_tkwinitnode3
->type
->table_size
) {
8928 var6
= var_tkwinitnode3
->type
->type_table
[cltype
] == idtype
;
8932 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8933 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24771);
8936 var_pexprsnode4
= var_nodearraylist4
;
8937 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8938 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
8939 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
8940 if(var_pexprsnode4
== NULL
) {
8943 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
8946 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
8950 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8951 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24773);
8954 var10
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
8955 ((void (*)(val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AInitExpr__init_ainitexpr
]))(var10
, var_pexprnode2
, var_tkwinitnode3
, var_pexprsnode4
) /* init_ainitexpr on <var10:AInitExpr>*/;
8956 var_pexprnode1
= var10
;
8957 var_node_list
= var_pexprnode1
;
8958 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction641> */
8959 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
8960 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
8963 /* method parser#ReduceAction641#action for (self: Object, Parser) */
8964 void VIRTUAL_parser__ReduceAction641__action(val
* self
, val
* p0
) {
8965 parser__ReduceAction641__action(self
, p0
);
8968 /* method parser#ReduceAction643#action for (self: ReduceAction643, Parser) */
8969 void parser__ReduceAction643__action(val
* self
, val
* p0
) {
8970 val
* var_p
/* var p: Parser */;
8971 val
* var
/* : null */;
8972 val
* var_node_list
/* var node_list: nullable Object */;
8973 val
* var1
/* : nullable Object */;
8974 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8975 val
* var2
/* : nullable Object */;
8976 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8977 val
* var3
/* : nullable Object */;
8978 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8979 val
* var4
/* : nullable Object */;
8980 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8981 val
* var5
/* : nullable Object */;
8982 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8983 val
* var_tkwdebugnode2
/* var tkwdebugnode2: nullable Object */;
8984 short int var6
/* : Bool */;
8987 val
* var_tkwtypenode3
/* var tkwtypenode3: nullable Object */;
8988 short int var7
/* : Bool */;
8991 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8992 short int var10
/* : Bool */;
8995 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
8996 short int var13
/* : Bool */;
8999 val
* var16
/* : ADebugTypeExpr */;
9000 val
* var_pexprnode1
/* var pexprnode1: nullable ADebugTypeExpr */;
9001 long var17
/* : Int */;
9002 long var18
/* : Int */;
9005 var_node_list
= var
;
9006 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9007 var_nodearraylist5
= var1
;
9008 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9009 var_nodearraylist4
= var2
;
9010 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9011 var_nodearraylist3
= var3
;
9012 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9013 var_nodearraylist2
= var4
;
9014 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9015 var_nodearraylist1
= var5
;
9016 var_tkwdebugnode2
= var_nodearraylist1
;
9017 /* <var_tkwdebugnode2:nullable Object> isa nullable TKwdebug */
9018 cltype
= type_nullable_parser_nodes__TKwdebug
.color
;
9019 idtype
= type_nullable_parser_nodes__TKwdebug
.id
;
9020 if(var_tkwdebugnode2
== NULL
) {
9023 if(cltype
>= var_tkwdebugnode2
->type
->table_size
) {
9026 var6
= var_tkwdebugnode2
->type
->type_table
[cltype
] == idtype
;
9030 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9031 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24794);
9034 var_tkwtypenode3
= var_nodearraylist2
;
9035 /* <var_tkwtypenode3:nullable Object> isa nullable TKwtype */
9036 cltype8
= type_nullable_parser_nodes__TKwtype
.color
;
9037 idtype9
= type_nullable_parser_nodes__TKwtype
.id
;
9038 if(var_tkwtypenode3
== NULL
) {
9041 if(cltype8
>= var_tkwtypenode3
->type
->table_size
) {
9044 var7
= var_tkwtypenode3
->type
->type_table
[cltype8
] == idtype9
;
9048 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9049 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24796);
9052 var_pexprnode4
= var_nodearraylist5
;
9053 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9054 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
9055 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
9056 if(var_pexprnode4
== NULL
) {
9059 if(cltype11
>= var_pexprnode4
->type
->table_size
) {
9062 var10
= var_pexprnode4
->type
->type_table
[cltype11
] == idtype12
;
9066 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9067 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24798);
9070 var_ptypenode5
= var_nodearraylist3
;
9071 /* <var_ptypenode5:nullable Object> isa nullable AType */
9072 cltype14
= type_nullable_parser_nodes__AType
.color
;
9073 idtype15
= type_nullable_parser_nodes__AType
.id
;
9074 if(var_ptypenode5
== NULL
) {
9077 if(cltype14
>= var_ptypenode5
->type
->table_size
) {
9080 var13
= var_ptypenode5
->type
->type_table
[cltype14
] == idtype15
;
9084 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9085 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24800);
9088 var16
= NEW_parser_nodes__ADebugTypeExpr(&type_parser_nodes__ADebugTypeExpr
);
9089 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ADebugTypeExpr__init_adebugtypeexpr
]))(var16
, var_tkwdebugnode2
, var_tkwtypenode3
, var_pexprnode4
, var_ptypenode5
) /* init_adebugtypeexpr on <var16:ADebugTypeExpr>*/;
9090 var_pexprnode1
= var16
;
9091 var_node_list
= var_pexprnode1
;
9092 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction643> */
9093 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
9094 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
9097 /* method parser#ReduceAction643#action for (self: Object, Parser) */
9098 void VIRTUAL_parser__ReduceAction643__action(val
* self
, val
* p0
) {
9099 parser__ReduceAction643__action(self
, p0
);
9102 /* method parser#ReduceAction644#action for (self: ReduceAction644, Parser) */
9103 void parser__ReduceAction644__action(val
* self
, val
* p0
) {
9104 val
* var_p
/* var p: Parser */;
9105 val
* var
/* : null */;
9106 val
* var_node_list
/* var node_list: nullable Object */;
9107 val
* var1
/* : nullable Object */;
9108 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9109 val
* var2
/* : nullable Object */;
9110 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9111 val
* var_tkwlabelnode2
/* var tkwlabelnode2: nullable Object */;
9112 short int var3
/* : Bool */;
9115 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9116 short int var4
/* : Bool */;
9119 val
* var7
/* : ALabel */;
9120 val
* var_plabelnode1
/* var plabelnode1: nullable ALabel */;
9121 long var8
/* : Int */;
9122 long var9
/* : Int */;
9125 var_node_list
= var
;
9126 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9127 var_nodearraylist2
= var1
;
9128 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9129 var_nodearraylist1
= var2
;
9130 var_tkwlabelnode2
= var_nodearraylist1
;
9131 /* <var_tkwlabelnode2:nullable Object> isa nullable TKwlabel */
9132 cltype
= type_nullable_parser_nodes__TKwlabel
.color
;
9133 idtype
= type_nullable_parser_nodes__TKwlabel
.id
;
9134 if(var_tkwlabelnode2
== NULL
) {
9137 if(cltype
>= var_tkwlabelnode2
->type
->table_size
) {
9140 var3
= var_tkwlabelnode2
->type
->type_table
[cltype
] == idtype
;
9144 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9145 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24819);
9148 var_tidnode3
= var_nodearraylist2
;
9149 /* <var_tidnode3:nullable Object> isa nullable TId */
9150 cltype5
= type_nullable_parser_nodes__TId
.color
;
9151 idtype6
= type_nullable_parser_nodes__TId
.id
;
9152 if(var_tidnode3
== NULL
) {
9155 if(cltype5
>= var_tidnode3
->type
->table_size
) {
9158 var4
= var_tidnode3
->type
->type_table
[cltype5
] == idtype6
;
9162 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9163 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24821);
9166 var7
= NEW_parser_nodes__ALabel(&type_parser_nodes__ALabel
);
9167 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ALabel__init_alabel
]))(var7
, var_tkwlabelnode2
, var_tidnode3
) /* init_alabel on <var7:ALabel>*/;
9168 var_plabelnode1
= var7
;
9169 var_node_list
= var_plabelnode1
;
9170 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction644> */
9171 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
9172 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
9175 /* method parser#ReduceAction644#action for (self: Object, Parser) */
9176 void VIRTUAL_parser__ReduceAction644__action(val
* self
, val
* p0
) {
9177 parser__ReduceAction644__action(self
, p0
);
9180 /* method parser#ReduceAction645#action for (self: ReduceAction645, Parser) */
9181 void parser__ReduceAction645__action(val
* self
, val
* p0
) {
9182 val
* var_p
/* var p: Parser */;
9183 val
* var
/* : null */;
9184 val
* var_node_list
/* var node_list: nullable Object */;
9185 val
* var1
/* : nullable Object */;
9186 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9187 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9188 short int var2
/* : Bool */;
9191 val
* var3
/* : AContinueExpr */;
9192 val
* var4
/* : null */;
9193 val
* var5
/* : null */;
9194 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
9195 long var6
/* : Int */;
9196 long var7
/* : Int */;
9199 var_node_list
= var
;
9200 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9201 var_nodearraylist1
= var1
;
9202 var_pexprnode4
= var_nodearraylist1
;
9203 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9204 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9205 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9206 if(var_pexprnode4
== NULL
) {
9209 if(cltype
>= var_pexprnode4
->type
->table_size
) {
9212 var2
= var_pexprnode4
->type
->type_table
[cltype
] == idtype
;
9216 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9217 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24837);
9220 var3
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
9223 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var3
, var4
, var5
, var_pexprnode4
) /* init_acontinueexpr on <var3:AContinueExpr>*/;
9224 var_pexprnode1
= var3
;
9225 var_node_list
= var_pexprnode1
;
9226 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction645> */
9227 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
9228 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
9231 /* method parser#ReduceAction645#action for (self: Object, Parser) */
9232 void VIRTUAL_parser__ReduceAction645__action(val
* self
, val
* p0
) {
9233 parser__ReduceAction645__action(self
, p0
);
9236 /* method parser#ReduceAction646#action for (self: ReduceAction646, Parser) */
9237 void parser__ReduceAction646__action(val
* self
, val
* p0
) {
9238 val
* var_p
/* var p: Parser */;
9239 val
* var
/* : null */;
9240 val
* var_node_list
/* var node_list: nullable Object */;
9241 val
* var1
/* : nullable Object */;
9242 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9243 val
* var2
/* : nullable Object */;
9244 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9245 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
9246 short int var3
/* : Bool */;
9249 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9250 short int var4
/* : Bool */;
9253 val
* var7
/* : AVardeclExpr */;
9254 val
* var8
/* : null */;
9255 val
* var9
/* : null */;
9256 val
* var10
/* : null */;
9257 val
* var11
/* : null */;
9258 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
9259 long var12
/* : Int */;
9260 long var13
/* : Int */;
9263 var_node_list
= var
;
9264 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9265 var_nodearraylist2
= var1
;
9266 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9267 var_nodearraylist1
= var2
;
9268 var_tkwvarnode2
= var_nodearraylist1
;
9269 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
9270 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
9271 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
9272 if(var_tkwvarnode2
== NULL
) {
9275 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
9278 var3
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
9282 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9283 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24855);
9286 var_tidnode3
= var_nodearraylist2
;
9287 /* <var_tidnode3:nullable Object> isa nullable TId */
9288 cltype5
= type_nullable_parser_nodes__TId
.color
;
9289 idtype6
= type_nullable_parser_nodes__TId
.id
;
9290 if(var_tidnode3
== NULL
) {
9293 if(cltype5
>= var_tidnode3
->type
->table_size
) {
9296 var4
= var_tidnode3
->type
->type_table
[cltype5
] == idtype6
;
9300 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9301 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24857);
9304 var7
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
9309 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var7
, var_tkwvarnode2
, var_tidnode3
, var8
, var9
, var10
, var11
) /* init_avardeclexpr on <var7:AVardeclExpr>*/;
9310 var_pexprnode1
= var7
;
9311 var_node_list
= var_pexprnode1
;
9312 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction646> */
9313 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
9314 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
9317 /* method parser#ReduceAction646#action for (self: Object, Parser) */
9318 void VIRTUAL_parser__ReduceAction646__action(val
* self
, val
* p0
) {
9319 parser__ReduceAction646__action(self
, p0
);
9322 /* method parser#ReduceAction647#action for (self: ReduceAction647, Parser) */
9323 void parser__ReduceAction647__action(val
* self
, val
* p0
) {
9324 val
* var_p
/* var p: Parser */;
9325 val
* var
/* : null */;
9326 val
* var_node_list
/* var node_list: nullable Object */;
9327 val
* var1
/* : nullable Object */;
9328 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9329 val
* var2
/* : nullable Object */;
9330 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9331 val
* var3
/* : nullable Object */;
9332 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9333 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
9334 short int var4
/* : Bool */;
9337 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9338 short int var5
/* : Bool */;
9341 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
9342 short int var8
/* : Bool */;
9345 val
* var11
/* : AVardeclExpr */;
9346 val
* var12
/* : null */;
9347 val
* var13
/* : null */;
9348 val
* var14
/* : null */;
9349 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
9350 long var15
/* : Int */;
9351 long var16
/* : Int */;
9354 var_node_list
= var
;
9355 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9356 var_nodearraylist3
= var1
;
9357 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9358 var_nodearraylist2
= var2
;
9359 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9360 var_nodearraylist1
= var3
;
9361 var_tkwvarnode2
= var_nodearraylist1
;
9362 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
9363 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
9364 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
9365 if(var_tkwvarnode2
== NULL
) {
9368 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
9371 var4
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
9375 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9376 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24879);
9379 var_tidnode3
= var_nodearraylist2
;
9380 /* <var_tidnode3:nullable Object> isa nullable TId */
9381 cltype6
= type_nullable_parser_nodes__TId
.color
;
9382 idtype7
= type_nullable_parser_nodes__TId
.id
;
9383 if(var_tidnode3
== NULL
) {
9386 if(cltype6
>= var_tidnode3
->type
->table_size
) {
9389 var5
= var_tidnode3
->type
->type_table
[cltype6
] == idtype7
;
9393 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9394 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24881);
9397 var_pannotationsnode7
= var_nodearraylist3
;
9398 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
9399 cltype9
= type_nullable_parser_nodes__AAnnotations
.color
;
9400 idtype10
= type_nullable_parser_nodes__AAnnotations
.id
;
9401 if(var_pannotationsnode7
== NULL
) {
9404 if(cltype9
>= var_pannotationsnode7
->type
->table_size
) {
9407 var8
= var_pannotationsnode7
->type
->type_table
[cltype9
] == idtype10
;
9411 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9412 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24883);
9415 var11
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
9419 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var11
, var_tkwvarnode2
, var_tidnode3
, var12
, var13
, var14
, var_pannotationsnode7
) /* init_avardeclexpr on <var11:AVardeclExpr>*/;
9420 var_pexprnode1
= var11
;
9421 var_node_list
= var_pexprnode1
;
9422 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction647> */
9423 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
9424 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
9427 /* method parser#ReduceAction647#action for (self: Object, Parser) */
9428 void VIRTUAL_parser__ReduceAction647__action(val
* self
, val
* p0
) {
9429 parser__ReduceAction647__action(self
, p0
);
9432 /* method parser#ReduceAction648#action for (self: ReduceAction648, Parser) */
9433 void parser__ReduceAction648__action(val
* self
, val
* p0
) {
9434 val
* var_p
/* var p: Parser */;
9435 val
* var
/* : null */;
9436 val
* var_node_list
/* var node_list: nullable Object */;
9437 val
* var1
/* : nullable Object */;
9438 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9439 val
* var2
/* : nullable Object */;
9440 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9441 val
* var3
/* : nullable Object */;
9442 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9443 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
9444 short int var4
/* : Bool */;
9447 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9448 short int var5
/* : Bool */;
9451 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
9452 short int var8
/* : Bool */;
9455 val
* var11
/* : AVardeclExpr */;
9456 val
* var12
/* : null */;
9457 val
* var13
/* : null */;
9458 val
* var14
/* : null */;
9459 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
9460 long var15
/* : Int */;
9461 long var16
/* : Int */;
9464 var_node_list
= var
;
9465 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9466 var_nodearraylist3
= var1
;
9467 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9468 var_nodearraylist2
= var2
;
9469 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9470 var_nodearraylist1
= var3
;
9471 var_tkwvarnode2
= var_nodearraylist1
;
9472 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
9473 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
9474 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
9475 if(var_tkwvarnode2
== NULL
) {
9478 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
9481 var4
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
9485 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9486 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24905);
9489 var_tidnode3
= var_nodearraylist2
;
9490 /* <var_tidnode3:nullable Object> isa nullable TId */
9491 cltype6
= type_nullable_parser_nodes__TId
.color
;
9492 idtype7
= type_nullable_parser_nodes__TId
.id
;
9493 if(var_tidnode3
== NULL
) {
9496 if(cltype6
>= var_tidnode3
->type
->table_size
) {
9499 var5
= var_tidnode3
->type
->type_table
[cltype6
] == idtype7
;
9503 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9504 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24907);
9507 var_ptypenode4
= var_nodearraylist3
;
9508 /* <var_ptypenode4:nullable Object> isa nullable AType */
9509 cltype9
= type_nullable_parser_nodes__AType
.color
;
9510 idtype10
= type_nullable_parser_nodes__AType
.id
;
9511 if(var_ptypenode4
== NULL
) {
9514 if(cltype9
>= var_ptypenode4
->type
->table_size
) {
9517 var8
= var_ptypenode4
->type
->type_table
[cltype9
] == idtype10
;
9521 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9522 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24909);
9525 var11
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
9529 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var11
, var_tkwvarnode2
, var_tidnode3
, var_ptypenode4
, var12
, var13
, var14
) /* init_avardeclexpr on <var11:AVardeclExpr>*/;
9530 var_pexprnode1
= var11
;
9531 var_node_list
= var_pexprnode1
;
9532 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction648> */
9533 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
9534 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
9537 /* method parser#ReduceAction648#action for (self: Object, Parser) */
9538 void VIRTUAL_parser__ReduceAction648__action(val
* self
, val
* p0
) {
9539 parser__ReduceAction648__action(self
, p0
);
9542 /* method parser#ReduceAction649#action for (self: ReduceAction649, Parser) */
9543 void parser__ReduceAction649__action(val
* self
, val
* p0
) {
9544 val
* var_p
/* var p: Parser */;
9545 val
* var
/* : null */;
9546 val
* var_node_list
/* var node_list: nullable Object */;
9547 val
* var1
/* : nullable Object */;
9548 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9549 val
* var2
/* : nullable Object */;
9550 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9551 val
* var3
/* : nullable Object */;
9552 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9553 val
* var4
/* : nullable Object */;
9554 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9555 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
9556 short int var5
/* : Bool */;
9559 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9560 short int var6
/* : Bool */;
9563 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
9564 short int var9
/* : Bool */;
9567 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
9568 short int var12
/* : Bool */;
9571 val
* var15
/* : AVardeclExpr */;
9572 val
* var16
/* : null */;
9573 val
* var17
/* : null */;
9574 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
9575 long var18
/* : Int */;
9576 long var19
/* : Int */;
9579 var_node_list
= var
;
9580 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9581 var_nodearraylist4
= var1
;
9582 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9583 var_nodearraylist3
= var2
;
9584 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9585 var_nodearraylist2
= var3
;
9586 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9587 var_nodearraylist1
= var4
;
9588 var_tkwvarnode2
= var_nodearraylist1
;
9589 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
9590 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
9591 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
9592 if(var_tkwvarnode2
== NULL
) {
9595 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
9598 var5
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
9602 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9603 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24932);
9606 var_tidnode3
= var_nodearraylist2
;
9607 /* <var_tidnode3:nullable Object> isa nullable TId */
9608 cltype7
= type_nullable_parser_nodes__TId
.color
;
9609 idtype8
= type_nullable_parser_nodes__TId
.id
;
9610 if(var_tidnode3
== NULL
) {
9613 if(cltype7
>= var_tidnode3
->type
->table_size
) {
9616 var6
= var_tidnode3
->type
->type_table
[cltype7
] == idtype8
;
9620 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9621 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24934);
9624 var_ptypenode4
= var_nodearraylist4
;
9625 /* <var_ptypenode4:nullable Object> isa nullable AType */
9626 cltype10
= type_nullable_parser_nodes__AType
.color
;
9627 idtype11
= type_nullable_parser_nodes__AType
.id
;
9628 if(var_ptypenode4
== NULL
) {
9631 if(cltype10
>= var_ptypenode4
->type
->table_size
) {
9634 var9
= var_ptypenode4
->type
->type_table
[cltype10
] == idtype11
;
9638 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9639 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24936);
9642 var_pannotationsnode7
= var_nodearraylist3
;
9643 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
9644 cltype13
= type_nullable_parser_nodes__AAnnotations
.color
;
9645 idtype14
= type_nullable_parser_nodes__AAnnotations
.id
;
9646 if(var_pannotationsnode7
== NULL
) {
9649 if(cltype13
>= var_pannotationsnode7
->type
->table_size
) {
9652 var12
= var_pannotationsnode7
->type
->type_table
[cltype13
] == idtype14
;
9656 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9657 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24938);
9660 var15
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
9663 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var15
, var_tkwvarnode2
, var_tidnode3
, var_ptypenode4
, var16
, var17
, var_pannotationsnode7
) /* init_avardeclexpr on <var15:AVardeclExpr>*/;
9664 var_pexprnode1
= var15
;
9665 var_node_list
= var_pexprnode1
;
9666 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction649> */
9667 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
9668 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
9671 /* method parser#ReduceAction649#action for (self: Object, Parser) */
9672 void VIRTUAL_parser__ReduceAction649__action(val
* self
, val
* p0
) {
9673 parser__ReduceAction649__action(self
, p0
);
9676 /* method parser#ReduceAction650#action for (self: ReduceAction650, Parser) */
9677 void parser__ReduceAction650__action(val
* self
, val
* p0
) {
9678 val
* var_p
/* var p: Parser */;
9679 val
* var
/* : null */;
9680 val
* var_node_list
/* var node_list: nullable Object */;
9681 val
* var1
/* : nullable Object */;
9682 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9683 val
* var2
/* : nullable Object */;
9684 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9685 val
* var3
/* : nullable Object */;
9686 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9687 val
* var4
/* : nullable Object */;
9688 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9689 val
* var5
/* : nullable Object */;
9690 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9691 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
9692 short int var6
/* : Bool */;
9695 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9696 short int var7
/* : Bool */;
9699 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
9700 short int var10
/* : Bool */;
9703 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
9704 short int var13
/* : Bool */;
9707 val
* var16
/* : AVardeclExpr */;
9708 val
* var17
/* : null */;
9709 val
* var18
/* : null */;
9710 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
9711 long var19
/* : Int */;
9712 long var20
/* : Int */;
9715 var_node_list
= var
;
9716 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9717 var_nodearraylist5
= var1
;
9718 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9719 var_nodearraylist4
= var2
;
9720 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9721 var_nodearraylist3
= var3
;
9722 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9723 var_nodearraylist2
= var4
;
9724 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9725 var_nodearraylist1
= var5
;
9726 var_tkwvarnode2
= var_nodearraylist1
;
9727 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
9728 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
9729 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
9730 if(var_tkwvarnode2
== NULL
) {
9733 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
9736 var6
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
9740 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9741 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24962);
9744 var_tidnode3
= var_nodearraylist2
;
9745 /* <var_tidnode3:nullable Object> isa nullable TId */
9746 cltype8
= type_nullable_parser_nodes__TId
.color
;
9747 idtype9
= type_nullable_parser_nodes__TId
.id
;
9748 if(var_tidnode3
== NULL
) {
9751 if(cltype8
>= var_tidnode3
->type
->table_size
) {
9754 var7
= var_tidnode3
->type
->type_table
[cltype8
] == idtype9
;
9758 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9759 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24964);
9762 var_tassignnode5
= var_nodearraylist3
;
9763 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
9764 cltype11
= type_nullable_parser_nodes__TAssign
.color
;
9765 idtype12
= type_nullable_parser_nodes__TAssign
.id
;
9766 if(var_tassignnode5
== NULL
) {
9769 if(cltype11
>= var_tassignnode5
->type
->table_size
) {
9772 var10
= var_tassignnode5
->type
->type_table
[cltype11
] == idtype12
;
9776 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9777 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24966);
9780 var_pexprnode6
= var_nodearraylist5
;
9781 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
9782 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
9783 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
9784 if(var_pexprnode6
== NULL
) {
9787 if(cltype14
>= var_pexprnode6
->type
->table_size
) {
9790 var13
= var_pexprnode6
->type
->type_table
[cltype14
] == idtype15
;
9794 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9795 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24968);
9798 var16
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
9801 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var16
, var_tkwvarnode2
, var_tidnode3
, var17
, var_tassignnode5
, var_pexprnode6
, var18
) /* init_avardeclexpr on <var16:AVardeclExpr>*/;
9802 var_pexprnode1
= var16
;
9803 var_node_list
= var_pexprnode1
;
9804 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction650> */
9805 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
9806 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
9809 /* method parser#ReduceAction650#action for (self: Object, Parser) */
9810 void VIRTUAL_parser__ReduceAction650__action(val
* self
, val
* p0
) {
9811 parser__ReduceAction650__action(self
, p0
);
9814 /* method parser#ReduceAction651#action for (self: ReduceAction651, Parser) */
9815 void parser__ReduceAction651__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_nodearraylist6
/* var nodearraylist6: nullable Object */;
9821 val
* var2
/* : nullable Object */;
9822 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9823 val
* var3
/* : nullable Object */;
9824 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9825 val
* var4
/* : nullable Object */;
9826 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9827 val
* var5
/* : nullable Object */;
9828 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9829 val
* var6
/* : nullable Object */;
9830 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9831 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
9832 short int var7
/* : Bool */;
9835 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9836 short int var8
/* : Bool */;
9839 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
9840 short int var11
/* : Bool */;
9843 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
9844 short int var14
/* : Bool */;
9847 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
9848 short int var17
/* : Bool */;
9851 val
* var20
/* : AVardeclExpr */;
9852 val
* var21
/* : null */;
9853 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
9854 long var22
/* : Int */;
9855 long var23
/* : Int */;
9858 var_node_list
= var
;
9859 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9860 var_nodearraylist6
= var1
;
9861 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9862 var_nodearraylist5
= var2
;
9863 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9864 var_nodearraylist4
= var3
;
9865 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9866 var_nodearraylist3
= var4
;
9867 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9868 var_nodearraylist2
= var5
;
9869 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9870 var_nodearraylist1
= var6
;
9871 var_tkwvarnode2
= var_nodearraylist1
;
9872 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
9873 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
9874 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
9875 if(var_tkwvarnode2
== NULL
) {
9878 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
9881 var7
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
9885 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9886 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24993);
9889 var_tidnode3
= var_nodearraylist2
;
9890 /* <var_tidnode3:nullable Object> isa nullable TId */
9891 cltype9
= type_nullable_parser_nodes__TId
.color
;
9892 idtype10
= type_nullable_parser_nodes__TId
.id
;
9893 if(var_tidnode3
== NULL
) {
9896 if(cltype9
>= var_tidnode3
->type
->table_size
) {
9899 var8
= var_tidnode3
->type
->type_table
[cltype9
] == idtype10
;
9903 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9904 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24995);
9907 var_tassignnode5
= var_nodearraylist4
;
9908 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
9909 cltype12
= type_nullable_parser_nodes__TAssign
.color
;
9910 idtype13
= type_nullable_parser_nodes__TAssign
.id
;
9911 if(var_tassignnode5
== NULL
) {
9914 if(cltype12
>= var_tassignnode5
->type
->table_size
) {
9917 var11
= var_tassignnode5
->type
->type_table
[cltype12
] == idtype13
;
9921 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9922 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24997);
9925 var_pexprnode6
= var_nodearraylist6
;
9926 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
9927 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
9928 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
9929 if(var_pexprnode6
== NULL
) {
9932 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
9935 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
9939 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9940 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24999);
9943 var_pannotationsnode7
= var_nodearraylist3
;
9944 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
9945 cltype18
= type_nullable_parser_nodes__AAnnotations
.color
;
9946 idtype19
= type_nullable_parser_nodes__AAnnotations
.id
;
9947 if(var_pannotationsnode7
== NULL
) {
9950 if(cltype18
>= var_pannotationsnode7
->type
->table_size
) {
9953 var17
= var_pannotationsnode7
->type
->type_table
[cltype18
] == idtype19
;
9957 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9958 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25001);
9961 var20
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
9963 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var20
, var_tkwvarnode2
, var_tidnode3
, var21
, var_tassignnode5
, var_pexprnode6
, var_pannotationsnode7
) /* init_avardeclexpr on <var20:AVardeclExpr>*/;
9964 var_pexprnode1
= var20
;
9965 var_node_list
= var_pexprnode1
;
9966 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction651> */
9967 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
9968 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
9971 /* method parser#ReduceAction651#action for (self: Object, Parser) */
9972 void VIRTUAL_parser__ReduceAction651__action(val
* self
, val
* p0
) {
9973 parser__ReduceAction651__action(self
, p0
);