1 #include "parser.sep.0.h"
2 /* method parser#ReduceAction654#action for (self: ReduceAction654, Parser) */
3 void parser__ReduceAction654__action(val
* self
, val
* p0
) {
4 val
* var_p
/* var p: Parser */;
6 val
* var_node_list
/* var node_list: nullable Object */;
7 val
* var1
/* : nullable Object */;
8 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9 val
* var2
/* : nullable Object */;
10 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
11 val
* var_tkwsupernode3
/* var tkwsupernode3: nullable Object */;
12 short int var3
/* : Bool */;
15 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
16 short int var4
/* : Bool */;
19 val
* var7
/* : ASuperExpr */;
20 val
* var8
/* : null */;
21 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
22 long var9
/* : Int */;
23 long var10
/* : Int */;
27 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
28 var_nodearraylist2
= var1
;
29 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
30 var_nodearraylist1
= var2
;
31 var_tkwsupernode3
= var_nodearraylist1
;
32 /* <var_tkwsupernode3:nullable Object> isa nullable TKwsuper */
33 cltype
= type_nullable_parser_nodes__TKwsuper
.color
;
34 idtype
= type_nullable_parser_nodes__TKwsuper
.id
;
35 if(var_tkwsupernode3
== NULL
) {
38 if(cltype
>= var_tkwsupernode3
->type
->table_size
) {
41 var3
= var_tkwsupernode3
->type
->type_table
[cltype
] == idtype
;
45 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25414);
48 var_pexprsnode4
= var_nodearraylist2
;
49 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
50 cltype5
= type_nullable_parser_nodes__AExprs
.color
;
51 idtype6
= type_nullable_parser_nodes__AExprs
.id
;
52 if(var_pexprsnode4
== NULL
) {
55 if(cltype5
>= var_pexprsnode4
->type
->table_size
) {
58 var4
= var_pexprsnode4
->type
->type_table
[cltype5
] == idtype6
;
62 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25416);
65 var7
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
67 ((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>*/;
68 CHECK_NEW_parser_nodes__ASuperExpr(var7
);
69 var_pexprnode1
= var7
;
70 var_node_list
= var_pexprnode1
;
71 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction654> */
72 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
73 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
76 /* method parser#ReduceAction654#action for (self: Object, Parser) */
77 void VIRTUAL_parser__ReduceAction654__action(val
* self
, val
* p0
) {
78 parser__ReduceAction654__action(self
, p0
);
81 /* method parser#ReduceAction655#action for (self: ReduceAction655, Parser) */
82 void parser__ReduceAction655__action(val
* self
, val
* p0
) {
83 val
* var_p
/* var p: Parser */;
84 val
* var
/* : null */;
85 val
* var_node_list
/* var node_list: nullable Object */;
86 val
* var1
/* : nullable Object */;
87 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
88 val
* var2
/* : nullable Object */;
89 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
90 val
* var3
/* : nullable Object */;
91 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
92 val
* var4
/* : Array[Object] */;
93 val
* var_listnode3
/* var listnode3: Array[Object] */;
94 val
* var_tclassidnode4
/* var tclassidnode4: nullable Object */;
95 short int var5
/* : Bool */;
98 val
* var6
/* : AQualified */;
99 val
* var_pqualifiednode2
/* var pqualifiednode2: nullable AQualified */;
100 val
* var_tkwsupernode5
/* var tkwsupernode5: nullable Object */;
101 short int var7
/* : Bool */;
104 val
* var_pexprsnode6
/* var pexprsnode6: nullable Object */;
105 short int var10
/* : Bool */;
108 val
* var13
/* : ASuperExpr */;
109 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
110 long var14
/* : Int */;
111 long var15
/* : Int */;
115 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
116 var_nodearraylist3
= var1
;
117 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
118 var_nodearraylist2
= var2
;
119 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
120 var_nodearraylist1
= var3
;
121 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
122 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
123 CHECK_NEW_array__Array(var4
);
124 var_listnode3
= var4
;
125 var_tclassidnode4
= var_nodearraylist1
;
126 /* <var_tclassidnode4:nullable Object> isa nullable TClassid */
127 cltype
= type_nullable_parser_nodes__TClassid
.color
;
128 idtype
= type_nullable_parser_nodes__TClassid
.id
;
129 if(var_tclassidnode4
== NULL
) {
132 if(cltype
>= var_tclassidnode4
->type
->table_size
) {
135 var5
= var_tclassidnode4
->type
->type_table
[cltype
] == idtype
;
139 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25436);
142 var6
= NEW_parser_nodes__AQualified(&type_parser_nodes__AQualified
);
143 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AQualified__init_aqualified
]))(var6
, var_listnode3
, var_tclassidnode4
) /* init_aqualified on <var6:AQualified>*/;
144 CHECK_NEW_parser_nodes__AQualified(var6
);
145 var_pqualifiednode2
= var6
;
146 var_tkwsupernode5
= var_nodearraylist2
;
147 /* <var_tkwsupernode5:nullable Object> isa nullable TKwsuper */
148 cltype8
= type_nullable_parser_nodes__TKwsuper
.color
;
149 idtype9
= type_nullable_parser_nodes__TKwsuper
.id
;
150 if(var_tkwsupernode5
== NULL
) {
153 if(cltype8
>= var_tkwsupernode5
->type
->table_size
) {
156 var7
= var_tkwsupernode5
->type
->type_table
[cltype8
] == idtype9
;
160 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25442);
163 var_pexprsnode6
= var_nodearraylist3
;
164 /* <var_pexprsnode6:nullable Object> isa nullable AExprs */
165 cltype11
= type_nullable_parser_nodes__AExprs
.color
;
166 idtype12
= type_nullable_parser_nodes__AExprs
.id
;
167 if(var_pexprsnode6
== NULL
) {
170 if(cltype11
>= var_pexprsnode6
->type
->table_size
) {
173 var10
= var_pexprsnode6
->type
->type_table
[cltype11
] == idtype12
;
177 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25444);
180 var13
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
181 ((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>*/;
182 CHECK_NEW_parser_nodes__ASuperExpr(var13
);
183 var_pexprnode1
= var13
;
184 var_node_list
= var_pexprnode1
;
185 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction655> */
186 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
187 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
190 /* method parser#ReduceAction655#action for (self: Object, Parser) */
191 void VIRTUAL_parser__ReduceAction655__action(val
* self
, val
* p0
) {
192 parser__ReduceAction655__action(self
, p0
);
195 /* method parser#ReduceAction656#action for (self: ReduceAction656, Parser) */
196 void parser__ReduceAction656__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_nodearraylist4
/* var nodearraylist4: nullable Object */;
202 val
* var2
/* : nullable Object */;
203 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
204 val
* var3
/* : nullable Object */;
205 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
206 val
* var4
/* : nullable Object */;
207 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
208 val
* var5
/* : Array[Object] */;
209 val
* var_listnode4
/* var listnode4: Array[Object] */;
210 val
* var_listnode3
/* var listnode3: nullable Object */;
211 short int var6
/* : Bool */;
214 val
* var7
/* : Array[Object] */;
215 val
* var_tclassidnode5
/* var tclassidnode5: nullable Object */;
216 short int var8
/* : Bool */;
219 val
* var11
/* : AQualified */;
220 val
* var_pqualifiednode2
/* var pqualifiednode2: nullable AQualified */;
221 val
* var_tkwsupernode6
/* var tkwsupernode6: nullable Object */;
222 short int var12
/* : Bool */;
225 val
* var_pexprsnode7
/* var pexprsnode7: nullable Object */;
226 short int var15
/* : Bool */;
229 val
* var18
/* : ASuperExpr */;
230 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
231 long var19
/* : Int */;
232 long var20
/* : Int */;
236 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
237 var_nodearraylist4
= var1
;
238 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
239 var_nodearraylist3
= var2
;
240 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
241 var_nodearraylist2
= var3
;
242 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
243 var_nodearraylist1
= var4
;
244 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
245 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
246 CHECK_NEW_array__Array(var5
);
247 var_listnode4
= var5
;
248 var_listnode3
= var_nodearraylist1
;
249 /* <var_listnode3:nullable Object> isa Array[Object] */
250 cltype
= type_array__Arraykernel__Object
.color
;
251 idtype
= type_array__Arraykernel__Object
.id
;
252 if(var_listnode3
== NULL
) {
255 if(cltype
>= var_listnode3
->type
->table_size
) {
258 var6
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
262 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25465);
265 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction656>*/;
266 var_listnode4
= var7
;
267 var_tclassidnode5
= var_nodearraylist2
;
268 /* <var_tclassidnode5:nullable Object> isa nullable TClassid */
269 cltype9
= type_nullable_parser_nodes__TClassid
.color
;
270 idtype10
= type_nullable_parser_nodes__TClassid
.id
;
271 if(var_tclassidnode5
== NULL
) {
274 if(cltype9
>= var_tclassidnode5
->type
->table_size
) {
277 var8
= var_tclassidnode5
->type
->type_table
[cltype9
] == idtype10
;
281 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25468);
284 var11
= NEW_parser_nodes__AQualified(&type_parser_nodes__AQualified
);
285 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AQualified__init_aqualified
]))(var11
, var_listnode4
, var_tclassidnode5
) /* init_aqualified on <var11:AQualified>*/;
286 CHECK_NEW_parser_nodes__AQualified(var11
);
287 var_pqualifiednode2
= var11
;
288 var_tkwsupernode6
= var_nodearraylist3
;
289 /* <var_tkwsupernode6:nullable Object> isa nullable TKwsuper */
290 cltype13
= type_nullable_parser_nodes__TKwsuper
.color
;
291 idtype14
= type_nullable_parser_nodes__TKwsuper
.id
;
292 if(var_tkwsupernode6
== NULL
) {
295 if(cltype13
>= var_tkwsupernode6
->type
->table_size
) {
298 var12
= var_tkwsupernode6
->type
->type_table
[cltype13
] == idtype14
;
302 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25474);
305 var_pexprsnode7
= var_nodearraylist4
;
306 /* <var_pexprsnode7:nullable Object> isa nullable AExprs */
307 cltype16
= type_nullable_parser_nodes__AExprs
.color
;
308 idtype17
= type_nullable_parser_nodes__AExprs
.id
;
309 if(var_pexprsnode7
== NULL
) {
312 if(cltype16
>= var_pexprsnode7
->type
->table_size
) {
315 var15
= var_pexprsnode7
->type
->type_table
[cltype16
] == idtype17
;
319 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25476);
322 var18
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
323 ((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>*/;
324 CHECK_NEW_parser_nodes__ASuperExpr(var18
);
325 var_pexprnode1
= var18
;
326 var_node_list
= var_pexprnode1
;
327 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction656> */
328 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
329 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
332 /* method parser#ReduceAction656#action for (self: Object, Parser) */
333 void VIRTUAL_parser__ReduceAction656__action(val
* self
, val
* p0
) {
334 parser__ReduceAction656__action(self
, p0
);
337 /* method parser#ReduceAction657#action for (self: ReduceAction657, Parser) */
338 void parser__ReduceAction657__action(val
* self
, val
* p0
) {
339 val
* var_p
/* var p: Parser */;
340 val
* var
/* : null */;
341 val
* var_node_list
/* var node_list: nullable Object */;
342 val
* var1
/* : nullable Object */;
343 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
344 val
* var2
/* : nullable Object */;
345 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
346 val
* var3
/* : nullable Object */;
347 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
348 val
* var4
/* : Array[Object] */;
349 val
* var_listnode4
/* var listnode4: Array[Object] */;
350 val
* var_listnode3
/* var listnode3: nullable Object */;
351 short int var5
/* : Bool */;
354 val
* var6
/* : Array[Object] */;
355 val
* var7
/* : AQualified */;
356 val
* var8
/* : null */;
357 val
* var_pqualifiednode2
/* var pqualifiednode2: nullable AQualified */;
358 val
* var_tkwsupernode6
/* var tkwsupernode6: nullable Object */;
359 short int var9
/* : Bool */;
362 val
* var_pexprsnode7
/* var pexprsnode7: nullable Object */;
363 short int var12
/* : Bool */;
366 val
* var15
/* : ASuperExpr */;
367 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
368 long var16
/* : Int */;
369 long var17
/* : Int */;
373 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
374 var_nodearraylist3
= var1
;
375 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
376 var_nodearraylist2
= var2
;
377 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
378 var_nodearraylist1
= var3
;
379 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
380 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
381 CHECK_NEW_array__Array(var4
);
382 var_listnode4
= var4
;
383 var_listnode3
= var_nodearraylist1
;
384 /* <var_listnode3:nullable Object> isa Array[Object] */
385 cltype
= type_array__Arraykernel__Object
.color
;
386 idtype
= type_array__Arraykernel__Object
.id
;
387 if(var_listnode3
== NULL
) {
390 if(cltype
>= var_listnode3
->type
->table_size
) {
393 var5
= var_listnode3
->type
->type_table
[cltype
] == idtype
;
397 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25496);
400 var6
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction657>*/;
401 var_listnode4
= var6
;
402 var7
= NEW_parser_nodes__AQualified(&type_parser_nodes__AQualified
);
404 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AQualified__init_aqualified
]))(var7
, var_listnode4
, var8
) /* init_aqualified on <var7:AQualified>*/;
405 CHECK_NEW_parser_nodes__AQualified(var7
);
406 var_pqualifiednode2
= var7
;
407 var_tkwsupernode6
= var_nodearraylist2
;
408 /* <var_tkwsupernode6:nullable Object> isa nullable TKwsuper */
409 cltype10
= type_nullable_parser_nodes__TKwsuper
.color
;
410 idtype11
= type_nullable_parser_nodes__TKwsuper
.id
;
411 if(var_tkwsupernode6
== NULL
) {
414 if(cltype10
>= var_tkwsupernode6
->type
->table_size
) {
417 var9
= var_tkwsupernode6
->type
->type_table
[cltype10
] == idtype11
;
421 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25503);
424 var_pexprsnode7
= var_nodearraylist3
;
425 /* <var_pexprsnode7:nullable Object> isa nullable AExprs */
426 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
427 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
428 if(var_pexprsnode7
== NULL
) {
431 if(cltype13
>= var_pexprsnode7
->type
->table_size
) {
434 var12
= var_pexprsnode7
->type
->type_table
[cltype13
] == idtype14
;
438 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25505);
441 var15
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
442 ((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>*/;
443 CHECK_NEW_parser_nodes__ASuperExpr(var15
);
444 var_pexprnode1
= var15
;
445 var_node_list
= var_pexprnode1
;
446 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction657> */
447 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
448 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
451 /* method parser#ReduceAction657#action for (self: Object, Parser) */
452 void VIRTUAL_parser__ReduceAction657__action(val
* self
, val
* p0
) {
453 parser__ReduceAction657__action(self
, p0
);
456 /* method parser#ReduceAction658#action for (self: ReduceAction658, Parser) */
457 void parser__ReduceAction658__action(val
* self
, val
* p0
) {
458 val
* var_p
/* var p: Parser */;
459 val
* var
/* : null */;
460 val
* var_node_list
/* var node_list: nullable Object */;
461 val
* var1
/* : nullable Object */;
462 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
463 val
* var2
/* : nullable Object */;
464 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
465 val
* var3
/* : nullable Object */;
466 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
467 val
* var4
/* : nullable Object */;
468 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
469 val
* var5
/* : nullable Object */;
470 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
471 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
472 short int var6
/* : Bool */;
475 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
476 short int var7
/* : Bool */;
479 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
480 short int var10
/* : Bool */;
483 val
* var13
/* : AInitExpr */;
484 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
485 long var14
/* : Int */;
486 long var15
/* : Int */;
490 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
491 var_nodearraylist5
= var1
;
492 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
493 var_nodearraylist4
= var2
;
494 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
495 var_nodearraylist3
= var3
;
496 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
497 var_nodearraylist2
= var4
;
498 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
499 var_nodearraylist1
= var5
;
500 var_pexprnode2
= var_nodearraylist1
;
501 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
502 cltype
= type_nullable_parser_nodes__AExpr
.color
;
503 idtype
= type_nullable_parser_nodes__AExpr
.id
;
504 if(var_pexprnode2
== NULL
) {
507 if(cltype
>= var_pexprnode2
->type
->table_size
) {
510 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
514 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25526);
517 var_tkwinitnode3
= var_nodearraylist4
;
518 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
519 cltype8
= type_nullable_parser_nodes__TKwinit
.color
;
520 idtype9
= type_nullable_parser_nodes__TKwinit
.id
;
521 if(var_tkwinitnode3
== NULL
) {
524 if(cltype8
>= var_tkwinitnode3
->type
->table_size
) {
527 var7
= var_tkwinitnode3
->type
->type_table
[cltype8
] == idtype9
;
531 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25528);
534 var_pexprsnode4
= var_nodearraylist5
;
535 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
536 cltype11
= type_nullable_parser_nodes__AExprs
.color
;
537 idtype12
= type_nullable_parser_nodes__AExprs
.id
;
538 if(var_pexprsnode4
== NULL
) {
541 if(cltype11
>= var_pexprsnode4
->type
->table_size
) {
544 var10
= var_pexprsnode4
->type
->type_table
[cltype11
] == idtype12
;
548 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25530);
551 var13
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
552 ((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>*/;
553 CHECK_NEW_parser_nodes__AInitExpr(var13
);
554 var_pexprnode1
= var13
;
555 var_node_list
= var_pexprnode1
;
556 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction658> */
557 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
558 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
561 /* method parser#ReduceAction658#action for (self: Object, Parser) */
562 void VIRTUAL_parser__ReduceAction658__action(val
* self
, val
* p0
) {
563 parser__ReduceAction658__action(self
, p0
);
566 /* method parser#ReduceAction659#action for (self: ReduceAction659, Parser) */
567 void parser__ReduceAction659__action(val
* self
, val
* p0
) {
568 val
* var_p
/* var p: Parser */;
569 val
* var
/* : null */;
570 val
* var_node_list
/* var node_list: nullable Object */;
571 val
* var1
/* : nullable Object */;
572 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
573 val
* var2
/* : nullable Object */;
574 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
575 val
* var3
/* : AImplicitSelfExpr */;
576 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
577 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
578 short int var4
/* : Bool */;
581 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
582 short int var5
/* : Bool */;
585 val
* var8
/* : AInitExpr */;
586 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
587 long var9
/* : Int */;
588 long var10
/* : Int */;
592 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
593 var_nodearraylist2
= var1
;
594 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
595 var_nodearraylist1
= var2
;
596 var3
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
597 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var3
) /* init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/;
598 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var3
);
599 var_pexprnode2
= var3
;
600 var_tkwinitnode3
= var_nodearraylist1
;
601 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
602 cltype
= type_nullable_parser_nodes__TKwinit
.color
;
603 idtype
= type_nullable_parser_nodes__TKwinit
.id
;
604 if(var_tkwinitnode3
== NULL
) {
607 if(cltype
>= var_tkwinitnode3
->type
->table_size
) {
610 var4
= var_tkwinitnode3
->type
->type_table
[cltype
] == idtype
;
614 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25549);
617 var_pexprsnode4
= var_nodearraylist2
;
618 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
619 cltype6
= type_nullable_parser_nodes__AExprs
.color
;
620 idtype7
= type_nullable_parser_nodes__AExprs
.id
;
621 if(var_pexprsnode4
== NULL
) {
624 if(cltype6
>= var_pexprsnode4
->type
->table_size
) {
627 var5
= var_pexprsnode4
->type
->type_table
[cltype6
] == idtype7
;
631 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25551);
634 var8
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
635 ((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>*/;
636 CHECK_NEW_parser_nodes__AInitExpr(var8
);
637 var_pexprnode1
= var8
;
638 var_node_list
= var_pexprnode1
;
639 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction659> */
640 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
641 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
644 /* method parser#ReduceAction659#action for (self: Object, Parser) */
645 void VIRTUAL_parser__ReduceAction659__action(val
* self
, val
* p0
) {
646 parser__ReduceAction659__action(self
, p0
);
649 /* method parser#ReduceAction660#action for (self: ReduceAction660, Parser) */
650 void parser__ReduceAction660__action(val
* self
, val
* p0
) {
651 val
* var_p
/* var p: Parser */;
652 val
* var
/* : null */;
653 val
* var_node_list
/* var node_list: nullable Object */;
654 val
* var1
/* : nullable Object */;
655 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
656 val
* var2
/* : nullable Object */;
657 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
658 val
* var3
/* : nullable Object */;
659 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
660 val
* var4
/* : nullable Object */;
661 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
662 val
* var5
/* : nullable Object */;
663 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
664 val
* var6
/* : nullable Object */;
665 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
666 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
667 short int var7
/* : Bool */;
670 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
671 short int var8
/* : Bool */;
674 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
675 short int var11
/* : Bool */;
678 val
* var14
/* : AInitExpr */;
679 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
680 long var15
/* : Int */;
681 long var16
/* : Int */;
685 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
686 var_nodearraylist6
= var1
;
687 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
688 var_nodearraylist5
= var2
;
689 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
690 var_nodearraylist4
= var3
;
691 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
692 var_nodearraylist3
= var4
;
693 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
694 var_nodearraylist2
= var5
;
695 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
696 var_nodearraylist1
= var6
;
697 var_pexprnode2
= var_nodearraylist1
;
698 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
699 cltype
= type_nullable_parser_nodes__AExpr
.color
;
700 idtype
= type_nullable_parser_nodes__AExpr
.id
;
701 if(var_pexprnode2
== NULL
) {
704 if(cltype
>= var_pexprnode2
->type
->table_size
) {
707 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
711 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25573);
714 var_tkwinitnode3
= var_nodearraylist5
;
715 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
716 cltype9
= type_nullable_parser_nodes__TKwinit
.color
;
717 idtype10
= type_nullable_parser_nodes__TKwinit
.id
;
718 if(var_tkwinitnode3
== NULL
) {
721 if(cltype9
>= var_tkwinitnode3
->type
->table_size
) {
724 var8
= var_tkwinitnode3
->type
->type_table
[cltype9
] == idtype10
;
728 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25575);
731 var_pexprsnode4
= var_nodearraylist6
;
732 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
733 cltype12
= type_nullable_parser_nodes__AExprs
.color
;
734 idtype13
= type_nullable_parser_nodes__AExprs
.id
;
735 if(var_pexprsnode4
== NULL
) {
738 if(cltype12
>= var_pexprsnode4
->type
->table_size
) {
741 var11
= var_pexprsnode4
->type
->type_table
[cltype12
] == idtype13
;
745 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25577);
748 var14
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
749 ((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>*/;
750 CHECK_NEW_parser_nodes__AInitExpr(var14
);
751 var_pexprnode1
= var14
;
752 var_node_list
= var_pexprnode1
;
753 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction660> */
754 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
755 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
758 /* method parser#ReduceAction660#action for (self: Object, Parser) */
759 void VIRTUAL_parser__ReduceAction660__action(val
* self
, val
* p0
) {
760 parser__ReduceAction660__action(self
, p0
);
763 /* method parser#ReduceAction661#action for (self: ReduceAction661, Parser) */
764 void parser__ReduceAction661__action(val
* self
, val
* p0
) {
765 val
* var_p
/* var p: Parser */;
766 val
* var
/* : null */;
767 val
* var_node_list
/* var node_list: nullable Object */;
768 val
* var1
/* : nullable Object */;
769 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
770 val
* var2
/* : nullable Object */;
771 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
772 val
* var3
/* : nullable Object */;
773 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
774 val
* var4
/* : nullable Object */;
775 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
776 val
* var5
/* : nullable Object */;
777 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
778 val
* var6
/* : nullable Object */;
779 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
780 val
* var7
/* : nullable Object */;
781 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
782 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
783 short int var8
/* : Bool */;
786 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
787 short int var9
/* : Bool */;
790 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
791 short int var12
/* : Bool */;
794 val
* var15
/* : AInitExpr */;
795 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
796 long var16
/* : Int */;
797 long var17
/* : Int */;
801 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
802 var_nodearraylist7
= var1
;
803 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
804 var_nodearraylist6
= var2
;
805 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
806 var_nodearraylist5
= var3
;
807 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
808 var_nodearraylist4
= var4
;
809 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
810 var_nodearraylist3
= var5
;
811 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
812 var_nodearraylist2
= var6
;
813 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
814 var_nodearraylist1
= var7
;
815 var_pexprnode2
= var_nodearraylist1
;
816 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
817 cltype
= type_nullable_parser_nodes__AExpr
.color
;
818 idtype
= type_nullable_parser_nodes__AExpr
.id
;
819 if(var_pexprnode2
== NULL
) {
822 if(cltype
>= var_pexprnode2
->type
->table_size
) {
825 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
829 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25600);
832 var_tkwinitnode3
= var_nodearraylist6
;
833 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
834 cltype10
= type_nullable_parser_nodes__TKwinit
.color
;
835 idtype11
= type_nullable_parser_nodes__TKwinit
.id
;
836 if(var_tkwinitnode3
== NULL
) {
839 if(cltype10
>= var_tkwinitnode3
->type
->table_size
) {
842 var9
= var_tkwinitnode3
->type
->type_table
[cltype10
] == idtype11
;
846 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25602);
849 var_pexprsnode4
= var_nodearraylist7
;
850 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
851 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
852 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
853 if(var_pexprsnode4
== NULL
) {
856 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
859 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
863 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25604);
866 var15
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
867 ((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>*/;
868 CHECK_NEW_parser_nodes__AInitExpr(var15
);
869 var_pexprnode1
= var15
;
870 var_node_list
= var_pexprnode1
;
871 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction661> */
872 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
873 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
876 /* method parser#ReduceAction661#action for (self: Object, Parser) */
877 void VIRTUAL_parser__ReduceAction661__action(val
* self
, val
* p0
) {
878 parser__ReduceAction661__action(self
, p0
);
881 /* method parser#ReduceAction663#action for (self: ReduceAction663, Parser) */
882 void parser__ReduceAction663__action(val
* self
, val
* p0
) {
883 val
* var_p
/* var p: Parser */;
884 val
* var
/* : null */;
885 val
* var_node_list
/* var node_list: nullable Object */;
886 val
* var1
/* : nullable Object */;
887 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
888 val
* var2
/* : nullable Object */;
889 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
890 val
* var3
/* : nullable Object */;
891 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
892 val
* var4
/* : AImplicitSelfExpr */;
893 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
894 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
895 short int var5
/* : Bool */;
898 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
899 short int var6
/* : Bool */;
902 val
* var9
/* : AInitExpr */;
903 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
904 long var10
/* : Int */;
905 long var11
/* : Int */;
909 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
910 var_nodearraylist3
= var1
;
911 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
912 var_nodearraylist2
= var2
;
913 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
914 var_nodearraylist1
= var3
;
915 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
916 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
917 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
918 var_pexprnode2
= var4
;
919 var_tkwinitnode3
= var_nodearraylist2
;
920 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
921 cltype
= type_nullable_parser_nodes__TKwinit
.color
;
922 idtype
= type_nullable_parser_nodes__TKwinit
.id
;
923 if(var_tkwinitnode3
== NULL
) {
926 if(cltype
>= var_tkwinitnode3
->type
->table_size
) {
929 var5
= var_tkwinitnode3
->type
->type_table
[cltype
] == idtype
;
933 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25624);
936 var_pexprsnode4
= var_nodearraylist3
;
937 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
938 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
939 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
940 if(var_pexprsnode4
== NULL
) {
943 if(cltype7
>= var_pexprsnode4
->type
->table_size
) {
946 var6
= var_pexprsnode4
->type
->type_table
[cltype7
] == idtype8
;
950 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25626);
953 var9
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
954 ((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>*/;
955 CHECK_NEW_parser_nodes__AInitExpr(var9
);
956 var_pexprnode1
= var9
;
957 var_node_list
= var_pexprnode1
;
958 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction663> */
959 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
960 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
963 /* method parser#ReduceAction663#action for (self: Object, Parser) */
964 void VIRTUAL_parser__ReduceAction663__action(val
* self
, val
* p0
) {
965 parser__ReduceAction663__action(self
, p0
);
968 /* method parser#ReduceAction664#action for (self: ReduceAction664, Parser) */
969 void parser__ReduceAction664__action(val
* self
, val
* p0
) {
970 val
* var_p
/* var p: Parser */;
971 val
* var
/* : null */;
972 val
* var_node_list
/* var node_list: nullable Object */;
973 val
* var1
/* : nullable Object */;
974 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
975 val
* var2
/* : nullable Object */;
976 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
977 val
* var3
/* : nullable Object */;
978 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
979 val
* var4
/* : nullable Object */;
980 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
981 val
* var5
/* : AImplicitSelfExpr */;
982 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
983 val
* var_tkwinitnode3
/* var tkwinitnode3: nullable Object */;
984 short int var6
/* : Bool */;
987 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
988 short int var7
/* : Bool */;
991 val
* var10
/* : AInitExpr */;
992 val
* var_pexprnode1
/* var pexprnode1: nullable AInitExpr */;
993 long var11
/* : Int */;
994 long var12
/* : Int */;
998 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
999 var_nodearraylist4
= var1
;
1000 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1001 var_nodearraylist3
= var2
;
1002 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1003 var_nodearraylist2
= var3
;
1004 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1005 var_nodearraylist1
= var4
;
1006 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1007 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
1008 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
1009 var_pexprnode2
= var5
;
1010 var_tkwinitnode3
= var_nodearraylist3
;
1011 /* <var_tkwinitnode3:nullable Object> isa nullable TKwinit */
1012 cltype
= type_nullable_parser_nodes__TKwinit
.color
;
1013 idtype
= type_nullable_parser_nodes__TKwinit
.id
;
1014 if(var_tkwinitnode3
== NULL
) {
1017 if(cltype
>= var_tkwinitnode3
->type
->table_size
) {
1020 var6
= var_tkwinitnode3
->type
->type_table
[cltype
] == idtype
;
1024 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25647);
1027 var_pexprsnode4
= var_nodearraylist4
;
1028 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
1029 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
1030 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
1031 if(var_pexprsnode4
== NULL
) {
1034 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
1037 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
1041 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25649);
1044 var10
= NEW_parser_nodes__AInitExpr(&type_parser_nodes__AInitExpr
);
1045 ((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>*/;
1046 CHECK_NEW_parser_nodes__AInitExpr(var10
);
1047 var_pexprnode1
= var10
;
1048 var_node_list
= var_pexprnode1
;
1049 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction664> */
1050 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
1051 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
1054 /* method parser#ReduceAction664#action for (self: Object, Parser) */
1055 void VIRTUAL_parser__ReduceAction664__action(val
* self
, val
* p0
) {
1056 parser__ReduceAction664__action(self
, p0
);
1059 /* method parser#ReduceAction666#action for (self: ReduceAction666, Parser) */
1060 void parser__ReduceAction666__action(val
* self
, val
* p0
) {
1061 val
* var_p
/* var p: Parser */;
1062 val
* var
/* : null */;
1063 val
* var_node_list
/* var node_list: nullable Object */;
1064 val
* var1
/* : nullable Object */;
1065 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1066 val
* var2
/* : nullable Object */;
1067 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1068 val
* var3
/* : nullable Object */;
1069 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1070 val
* var4
/* : nullable Object */;
1071 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1072 val
* var5
/* : nullable Object */;
1073 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1074 val
* var_tkwdebugnode2
/* var tkwdebugnode2: nullable Object */;
1075 short int var6
/* : Bool */;
1078 val
* var_tkwtypenode3
/* var tkwtypenode3: nullable Object */;
1079 short int var7
/* : Bool */;
1082 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
1083 short int var10
/* : Bool */;
1086 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
1087 short int var13
/* : Bool */;
1090 val
* var16
/* : ADebugTypeExpr */;
1091 val
* var_pexprnode1
/* var pexprnode1: nullable ADebugTypeExpr */;
1092 long var17
/* : Int */;
1093 long var18
/* : Int */;
1096 var_node_list
= var
;
1097 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1098 var_nodearraylist5
= var1
;
1099 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1100 var_nodearraylist4
= var2
;
1101 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1102 var_nodearraylist3
= var3
;
1103 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1104 var_nodearraylist2
= var4
;
1105 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1106 var_nodearraylist1
= var5
;
1107 var_tkwdebugnode2
= var_nodearraylist1
;
1108 /* <var_tkwdebugnode2:nullable Object> isa nullable TKwdebug */
1109 cltype
= type_nullable_parser_nodes__TKwdebug
.color
;
1110 idtype
= type_nullable_parser_nodes__TKwdebug
.id
;
1111 if(var_tkwdebugnode2
== NULL
) {
1114 if(cltype
>= var_tkwdebugnode2
->type
->table_size
) {
1117 var6
= var_tkwdebugnode2
->type
->type_table
[cltype
] == idtype
;
1121 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25670);
1124 var_tkwtypenode3
= var_nodearraylist2
;
1125 /* <var_tkwtypenode3:nullable Object> isa nullable TKwtype */
1126 cltype8
= type_nullable_parser_nodes__TKwtype
.color
;
1127 idtype9
= type_nullable_parser_nodes__TKwtype
.id
;
1128 if(var_tkwtypenode3
== NULL
) {
1131 if(cltype8
>= var_tkwtypenode3
->type
->table_size
) {
1134 var7
= var_tkwtypenode3
->type
->type_table
[cltype8
] == idtype9
;
1138 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25672);
1141 var_pexprnode4
= var_nodearraylist5
;
1142 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
1143 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
1144 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
1145 if(var_pexprnode4
== NULL
) {
1148 if(cltype11
>= var_pexprnode4
->type
->table_size
) {
1151 var10
= var_pexprnode4
->type
->type_table
[cltype11
] == idtype12
;
1155 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25674);
1158 var_ptypenode5
= var_nodearraylist3
;
1159 /* <var_ptypenode5:nullable Object> isa nullable AType */
1160 cltype14
= type_nullable_parser_nodes__AType
.color
;
1161 idtype15
= type_nullable_parser_nodes__AType
.id
;
1162 if(var_ptypenode5
== NULL
) {
1165 if(cltype14
>= var_ptypenode5
->type
->table_size
) {
1168 var13
= var_ptypenode5
->type
->type_table
[cltype14
] == idtype15
;
1172 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25676);
1175 var16
= NEW_parser_nodes__ADebugTypeExpr(&type_parser_nodes__ADebugTypeExpr
);
1176 ((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>*/;
1177 CHECK_NEW_parser_nodes__ADebugTypeExpr(var16
);
1178 var_pexprnode1
= var16
;
1179 var_node_list
= var_pexprnode1
;
1180 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction666> */
1181 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
1182 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
1185 /* method parser#ReduceAction666#action for (self: Object, Parser) */
1186 void VIRTUAL_parser__ReduceAction666__action(val
* self
, val
* p0
) {
1187 parser__ReduceAction666__action(self
, p0
);
1190 /* method parser#ReduceAction667#action for (self: ReduceAction667, Parser) */
1191 void parser__ReduceAction667__action(val
* self
, val
* p0
) {
1192 val
* var_p
/* var p: Parser */;
1193 val
* var
/* : null */;
1194 val
* var_node_list
/* var node_list: nullable Object */;
1195 val
* var1
/* : nullable Object */;
1196 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1197 val
* var2
/* : nullable Object */;
1198 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1199 val
* var_tkwlabelnode2
/* var tkwlabelnode2: nullable Object */;
1200 short int var3
/* : Bool */;
1203 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1204 short int var4
/* : Bool */;
1207 val
* var7
/* : ALabel */;
1208 val
* var_plabelnode1
/* var plabelnode1: nullable ALabel */;
1209 long var8
/* : Int */;
1210 long var9
/* : Int */;
1213 var_node_list
= var
;
1214 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1215 var_nodearraylist2
= var1
;
1216 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1217 var_nodearraylist1
= var2
;
1218 var_tkwlabelnode2
= var_nodearraylist1
;
1219 /* <var_tkwlabelnode2:nullable Object> isa nullable TKwlabel */
1220 cltype
= type_nullable_parser_nodes__TKwlabel
.color
;
1221 idtype
= type_nullable_parser_nodes__TKwlabel
.id
;
1222 if(var_tkwlabelnode2
== NULL
) {
1225 if(cltype
>= var_tkwlabelnode2
->type
->table_size
) {
1228 var3
= var_tkwlabelnode2
->type
->type_table
[cltype
] == idtype
;
1232 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25695);
1235 var_tidnode3
= var_nodearraylist2
;
1236 /* <var_tidnode3:nullable Object> isa nullable TId */
1237 cltype5
= type_nullable_parser_nodes__TId
.color
;
1238 idtype6
= type_nullable_parser_nodes__TId
.id
;
1239 if(var_tidnode3
== NULL
) {
1242 if(cltype5
>= var_tidnode3
->type
->table_size
) {
1245 var4
= var_tidnode3
->type
->type_table
[cltype5
] == idtype6
;
1249 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25697);
1252 var7
= NEW_parser_nodes__ALabel(&type_parser_nodes__ALabel
);
1253 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ALabel__init_alabel
]))(var7
, var_tkwlabelnode2
, var_tidnode3
) /* init_alabel on <var7:ALabel>*/;
1254 CHECK_NEW_parser_nodes__ALabel(var7
);
1255 var_plabelnode1
= var7
;
1256 var_node_list
= var_plabelnode1
;
1257 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction667> */
1258 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
1259 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
1262 /* method parser#ReduceAction667#action for (self: Object, Parser) */
1263 void VIRTUAL_parser__ReduceAction667__action(val
* self
, val
* p0
) {
1264 parser__ReduceAction667__action(self
, p0
);
1267 /* method parser#ReduceAction668#action for (self: ReduceAction668, Parser) */
1268 void parser__ReduceAction668__action(val
* self
, val
* p0
) {
1269 val
* var_p
/* var p: Parser */;
1270 val
* var
/* : null */;
1271 val
* var_node_list
/* var node_list: nullable Object */;
1272 val
* var1
/* : nullable Object */;
1273 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1274 val
* var2
/* : Array[Object] */;
1275 val
* var_listnode2
/* var listnode2: Array[Object] */;
1276 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable Object */;
1277 val
* var3
/* : null */;
1278 short int var4
/* : Bool */;
1279 long var5
/* : Int */;
1280 long var6
/* : Int */;
1283 var_node_list
= var
;
1284 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1285 var_nodearraylist1
= var1
;
1286 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
1287 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
1288 CHECK_NEW_array__Array(var2
);
1289 var_listnode2
= var2
;
1290 var_pclosuredefnode1
= var_nodearraylist1
;
1292 if (var_pclosuredefnode1
== NULL
) {
1293 var4
= 0; /* is null */
1295 var4
= 1; /* arg is null and recv is not */
1298 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_pclosuredefnode1
) /* add on <var_listnode2:Array[Object]>*/;
1301 var_node_list
= var_listnode2
;
1302 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction668> */
1303 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
1304 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
1307 /* method parser#ReduceAction668#action for (self: Object, Parser) */
1308 void VIRTUAL_parser__ReduceAction668__action(val
* self
, val
* p0
) {
1309 parser__ReduceAction668__action(self
, p0
);
1312 /* method parser#ReduceAction669#action for (self: ReduceAction669, Parser) */
1313 void parser__ReduceAction669__action(val
* self
, val
* p0
) {
1314 val
* var_p
/* var p: Parser */;
1315 val
* var
/* : null */;
1316 val
* var_node_list
/* var node_list: nullable Object */;
1317 val
* var1
/* : nullable Object */;
1318 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1319 val
* var2
/* : nullable Object */;
1320 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1321 val
* var3
/* : Array[Object] */;
1322 val
* var_listnode3
/* var listnode3: Array[Object] */;
1323 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable Object */;
1324 val
* var_listnode2
/* var listnode2: nullable Object */;
1325 short int var4
/* : Bool */;
1328 val
* var5
/* : null */;
1329 short int var6
/* : Bool */;
1330 val
* var7
/* : Array[Object] */;
1331 long var8
/* : Int */;
1332 long var9
/* : Int */;
1335 var_node_list
= var
;
1336 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1337 var_nodearraylist2
= var1
;
1338 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1339 var_nodearraylist1
= var2
;
1340 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
1341 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
1342 CHECK_NEW_array__Array(var3
);
1343 var_listnode3
= var3
;
1344 var_pclosuredefnode1
= var_nodearraylist1
;
1345 var_listnode2
= var_nodearraylist2
;
1346 /* <var_listnode2:nullable Object> isa Array[Object] */
1347 cltype
= type_array__Arraykernel__Object
.color
;
1348 idtype
= type_array__Arraykernel__Object
.id
;
1349 if(var_listnode2
== NULL
) {
1352 if(cltype
>= var_listnode2
->type
->table_size
) {
1355 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
1359 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25731);
1363 if (var_pclosuredefnode1
== NULL
) {
1364 var6
= 0; /* is null */
1366 var6
= 1; /* arg is null and recv is not */
1369 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pclosuredefnode1
) /* add on <var_listnode3:Array[Object]>*/;
1372 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction669>*/;
1373 var_listnode3
= var7
;
1374 var_node_list
= var_listnode3
;
1375 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction669> */
1376 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
1377 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
1380 /* method parser#ReduceAction669#action for (self: Object, Parser) */
1381 void VIRTUAL_parser__ReduceAction669__action(val
* self
, val
* p0
) {
1382 parser__ReduceAction669__action(self
, p0
);
1385 /* method parser#ReduceAction670#action for (self: ReduceAction670, Parser) */
1386 void parser__ReduceAction670__action(val
* self
, val
* p0
) {
1387 val
* var_p
/* var p: Parser */;
1388 val
* var
/* : null */;
1389 val
* var_node_list
/* var node_list: nullable Object */;
1390 val
* var1
/* : nullable Object */;
1391 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1392 val
* var2
/* : nullable Object */;
1393 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1394 val
* var3
/* : nullable Object */;
1395 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1396 val
* var4
/* : nullable Object */;
1397 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1398 val
* var5
/* : nullable Object */;
1399 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1400 val
* var6
/* : Array[Object] */;
1401 val
* var_listnode4
/* var listnode4: Array[Object] */;
1402 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
1403 short int var7
/* : Bool */;
1406 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
1407 short int var8
/* : Bool */;
1410 val
* var_tkwdonode5
/* var tkwdonode5: nullable Object */;
1411 short int var11
/* : Bool */;
1414 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1415 short int var14
/* : Bool */;
1418 val
* var_plabelnode7
/* var plabelnode7: nullable Object */;
1419 short int var17
/* : Bool */;
1422 val
* var20
/* : AClosureDef */;
1423 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
1424 long var21
/* : Int */;
1425 long var22
/* : Int */;
1428 var_node_list
= var
;
1429 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1430 var_nodearraylist5
= var1
;
1431 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1432 var_nodearraylist4
= var2
;
1433 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1434 var_nodearraylist3
= var3
;
1435 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1436 var_nodearraylist2
= var4
;
1437 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1438 var_nodearraylist1
= var5
;
1439 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
1440 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
1441 CHECK_NEW_array__Array(var6
);
1442 var_listnode4
= var6
;
1443 var_tbangnode2
= var_nodearraylist1
;
1444 /* <var_tbangnode2:nullable Object> isa nullable TBang */
1445 cltype
= type_nullable_parser_nodes__TBang
.color
;
1446 idtype
= type_nullable_parser_nodes__TBang
.id
;
1447 if(var_tbangnode2
== NULL
) {
1450 if(cltype
>= var_tbangnode2
->type
->table_size
) {
1453 var7
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
1457 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25752);
1460 var_pclosureidnode3
= var_nodearraylist2
;
1461 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
1462 cltype9
= type_nullable_parser_nodes__AClosureId
.color
;
1463 idtype10
= type_nullable_parser_nodes__AClosureId
.id
;
1464 if(var_pclosureidnode3
== NULL
) {
1467 if(cltype9
>= var_pclosureidnode3
->type
->table_size
) {
1470 var8
= var_pclosureidnode3
->type
->type_table
[cltype9
] == idtype10
;
1474 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25754);
1477 var_tkwdonode5
= var_nodearraylist3
;
1478 /* <var_tkwdonode5:nullable Object> isa nullable TKwdo */
1479 cltype12
= type_nullable_parser_nodes__TKwdo
.color
;
1480 idtype13
= type_nullable_parser_nodes__TKwdo
.id
;
1481 if(var_tkwdonode5
== NULL
) {
1484 if(cltype12
>= var_tkwdonode5
->type
->table_size
) {
1487 var11
= var_tkwdonode5
->type
->type_table
[cltype12
] == idtype13
;
1491 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25756);
1494 var_pexprnode6
= var_nodearraylist4
;
1495 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
1496 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
1497 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
1498 if(var_pexprnode6
== NULL
) {
1501 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
1504 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
1508 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25758);
1511 var_plabelnode7
= var_nodearraylist5
;
1512 /* <var_plabelnode7:nullable Object> isa nullable ALabel */
1513 cltype18
= type_nullable_parser_nodes__ALabel
.color
;
1514 idtype19
= type_nullable_parser_nodes__ALabel
.id
;
1515 if(var_plabelnode7
== NULL
) {
1518 if(cltype18
>= var_plabelnode7
->type
->table_size
) {
1521 var17
= var_plabelnode7
->type
->type_table
[cltype18
] == idtype19
;
1525 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25760);
1528 var20
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
1529 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var20
, var_tbangnode2
, var_pclosureidnode3
, var_listnode4
, var_tkwdonode5
, var_pexprnode6
, var_plabelnode7
) /* init_aclosuredef on <var20:AClosureDef>*/;
1530 CHECK_NEW_parser_nodes__AClosureDef(var20
);
1531 var_pclosuredefnode1
= var20
;
1532 var_node_list
= var_pclosuredefnode1
;
1533 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction670> */
1534 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
1535 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
1538 /* method parser#ReduceAction670#action for (self: Object, Parser) */
1539 void VIRTUAL_parser__ReduceAction670__action(val
* self
, val
* p0
) {
1540 parser__ReduceAction670__action(self
, p0
);
1543 /* method parser#ReduceAction671#action for (self: ReduceAction671, Parser) */
1544 void parser__ReduceAction671__action(val
* self
, val
* p0
) {
1545 val
* var_p
/* var p: Parser */;
1546 val
* var
/* : null */;
1547 val
* var_node_list
/* var node_list: nullable Object */;
1548 val
* var1
/* : nullable Object */;
1549 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
1550 val
* var2
/* : nullable Object */;
1551 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
1552 val
* var3
/* : nullable Object */;
1553 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
1554 val
* var4
/* : nullable Object */;
1555 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1556 val
* var5
/* : nullable Object */;
1557 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1558 val
* var6
/* : nullable Object */;
1559 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1560 val
* var7
/* : nullable Object */;
1561 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1562 val
* var8
/* : nullable Object */;
1563 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1564 val
* var9
/* : nullable Object */;
1565 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1566 val
* var10
/* : nullable Object */;
1567 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1568 val
* var11
/* : Array[Object] */;
1569 val
* var_listnode5
/* var listnode5: Array[Object] */;
1570 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
1571 short int var12
/* : Bool */;
1574 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
1575 short int var13
/* : Bool */;
1578 val
* var_listnode4
/* var listnode4: nullable Object */;
1579 short int var16
/* : Bool */;
1582 val
* var19
/* : Array[Object] */;
1583 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
1584 short int var20
/* : Bool */;
1587 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
1588 short int var23
/* : Bool */;
1591 val
* var_plabelnode8
/* var plabelnode8: nullable Object */;
1592 short int var26
/* : Bool */;
1595 val
* var29
/* : AClosureDef */;
1596 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
1597 long var30
/* : Int */;
1598 long var31
/* : Int */;
1601 var_node_list
= var
;
1602 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1603 var_nodearraylist10
= var1
;
1604 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1605 var_nodearraylist9
= var2
;
1606 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1607 var_nodearraylist8
= var3
;
1608 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1609 var_nodearraylist7
= var4
;
1610 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1611 var_nodearraylist6
= var5
;
1612 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1613 var_nodearraylist5
= var6
;
1614 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1615 var_nodearraylist4
= var7
;
1616 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1617 var_nodearraylist3
= var8
;
1618 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1619 var_nodearraylist2
= var9
;
1620 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1621 var_nodearraylist1
= var10
;
1622 var11
= NEW_array__Array(&type_array__Arraykernel__Object
);
1623 ((void (*)(val
*))(var11
->class->vft
[COLOR_array__Array__init
]))(var11
) /* init on <var11:Array[Object]>*/;
1624 CHECK_NEW_array__Array(var11
);
1625 var_listnode5
= var11
;
1626 var_tbangnode2
= var_nodearraylist1
;
1627 /* <var_tbangnode2:nullable Object> isa nullable TBang */
1628 cltype
= type_nullable_parser_nodes__TBang
.color
;
1629 idtype
= type_nullable_parser_nodes__TBang
.id
;
1630 if(var_tbangnode2
== NULL
) {
1633 if(cltype
>= var_tbangnode2
->type
->table_size
) {
1636 var12
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
1640 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25790);
1643 var_pclosureidnode3
= var_nodearraylist2
;
1644 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
1645 cltype14
= type_nullable_parser_nodes__AClosureId
.color
;
1646 idtype15
= type_nullable_parser_nodes__AClosureId
.id
;
1647 if(var_pclosureidnode3
== NULL
) {
1650 if(cltype14
>= var_pclosureidnode3
->type
->table_size
) {
1653 var13
= var_pclosureidnode3
->type
->type_table
[cltype14
] == idtype15
;
1657 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25792);
1660 var_listnode4
= var_nodearraylist5
;
1661 /* <var_listnode4:nullable Object> isa Array[Object] */
1662 cltype17
= type_array__Arraykernel__Object
.color
;
1663 idtype18
= type_array__Arraykernel__Object
.id
;
1664 if(var_listnode4
== NULL
) {
1667 if(cltype17
>= var_listnode4
->type
->table_size
) {
1670 var16
= var_listnode4
->type
->type_table
[cltype17
] == idtype18
;
1674 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25794);
1677 var19
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction671>*/;
1678 var_listnode5
= var19
;
1679 var_tkwdonode6
= var_nodearraylist8
;
1680 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
1681 cltype21
= type_nullable_parser_nodes__TKwdo
.color
;
1682 idtype22
= type_nullable_parser_nodes__TKwdo
.id
;
1683 if(var_tkwdonode6
== NULL
) {
1686 if(cltype21
>= var_tkwdonode6
->type
->table_size
) {
1689 var20
= var_tkwdonode6
->type
->type_table
[cltype21
] == idtype22
;
1693 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25797);
1696 var_pexprnode7
= var_nodearraylist9
;
1697 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
1698 cltype24
= type_nullable_parser_nodes__AExpr
.color
;
1699 idtype25
= type_nullable_parser_nodes__AExpr
.id
;
1700 if(var_pexprnode7
== NULL
) {
1703 if(cltype24
>= var_pexprnode7
->type
->table_size
) {
1706 var23
= var_pexprnode7
->type
->type_table
[cltype24
] == idtype25
;
1710 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25799);
1713 var_plabelnode8
= var_nodearraylist10
;
1714 /* <var_plabelnode8:nullable Object> isa nullable ALabel */
1715 cltype27
= type_nullable_parser_nodes__ALabel
.color
;
1716 idtype28
= type_nullable_parser_nodes__ALabel
.id
;
1717 if(var_plabelnode8
== NULL
) {
1720 if(cltype27
>= var_plabelnode8
->type
->table_size
) {
1723 var26
= var_plabelnode8
->type
->type_table
[cltype27
] == idtype28
;
1727 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25801);
1730 var29
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
1731 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var29
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var29
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var_pexprnode7
, var_plabelnode8
) /* init_aclosuredef on <var29:AClosureDef>*/;
1732 CHECK_NEW_parser_nodes__AClosureDef(var29
);
1733 var_pclosuredefnode1
= var29
;
1734 var_node_list
= var_pclosuredefnode1
;
1735 var30
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction671> */
1736 var31
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var30
) /* go_to on <var_p:Parser>*/;
1737 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var31
, var_node_list
) /* push on <var_p:Parser>*/;
1740 /* method parser#ReduceAction671#action for (self: Object, Parser) */
1741 void VIRTUAL_parser__ReduceAction671__action(val
* self
, val
* p0
) {
1742 parser__ReduceAction671__action(self
, p0
);
1745 /* method parser#ReduceAction672#action for (self: ReduceAction672, Parser) */
1746 void parser__ReduceAction672__action(val
* self
, val
* p0
) {
1747 val
* var_p
/* var p: Parser */;
1748 val
* var
/* : null */;
1749 val
* var_node_list
/* var node_list: nullable Object */;
1750 val
* var1
/* : nullable Object */;
1751 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1752 val
* var2
/* : nullable Object */;
1753 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1754 val
* var3
/* : nullable Object */;
1755 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1756 val
* var4
/* : nullable Object */;
1757 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1758 val
* var5
/* : nullable Object */;
1759 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1760 val
* var6
/* : nullable Object */;
1761 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1762 val
* var7
/* : Array[Object] */;
1763 val
* var_listnode5
/* var listnode5: Array[Object] */;
1764 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
1765 short int var8
/* : Bool */;
1768 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
1769 short int var9
/* : Bool */;
1772 val
* var_listnode4
/* var listnode4: nullable Object */;
1773 short int var12
/* : Bool */;
1776 val
* var15
/* : Array[Object] */;
1777 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
1778 short int var16
/* : Bool */;
1781 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
1782 short int var19
/* : Bool */;
1785 val
* var_plabelnode8
/* var plabelnode8: nullable Object */;
1786 short int var22
/* : Bool */;
1789 val
* var25
/* : AClosureDef */;
1790 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
1791 long var26
/* : Int */;
1792 long var27
/* : Int */;
1795 var_node_list
= var
;
1796 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1797 var_nodearraylist6
= var1
;
1798 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1799 var_nodearraylist5
= var2
;
1800 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1801 var_nodearraylist4
= var3
;
1802 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1803 var_nodearraylist3
= var4
;
1804 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1805 var_nodearraylist2
= var5
;
1806 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1807 var_nodearraylist1
= var6
;
1808 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
1809 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
1810 CHECK_NEW_array__Array(var7
);
1811 var_listnode5
= var7
;
1812 var_tbangnode2
= var_nodearraylist1
;
1813 /* <var_tbangnode2:nullable Object> isa nullable TBang */
1814 cltype
= type_nullable_parser_nodes__TBang
.color
;
1815 idtype
= type_nullable_parser_nodes__TBang
.id
;
1816 if(var_tbangnode2
== NULL
) {
1819 if(cltype
>= var_tbangnode2
->type
->table_size
) {
1822 var8
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
1826 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25827);
1829 var_pclosureidnode3
= var_nodearraylist2
;
1830 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
1831 cltype10
= type_nullable_parser_nodes__AClosureId
.color
;
1832 idtype11
= type_nullable_parser_nodes__AClosureId
.id
;
1833 if(var_pclosureidnode3
== NULL
) {
1836 if(cltype10
>= var_pclosureidnode3
->type
->table_size
) {
1839 var9
= var_pclosureidnode3
->type
->type_table
[cltype10
] == idtype11
;
1843 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25829);
1846 var_listnode4
= var_nodearraylist3
;
1847 /* <var_listnode4:nullable Object> isa Array[Object] */
1848 cltype13
= type_array__Arraykernel__Object
.color
;
1849 idtype14
= type_array__Arraykernel__Object
.id
;
1850 if(var_listnode4
== NULL
) {
1853 if(cltype13
>= var_listnode4
->type
->table_size
) {
1856 var12
= var_listnode4
->type
->type_table
[cltype13
] == idtype14
;
1860 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25831);
1863 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction672>*/;
1864 var_listnode5
= var15
;
1865 var_tkwdonode6
= var_nodearraylist4
;
1866 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
1867 cltype17
= type_nullable_parser_nodes__TKwdo
.color
;
1868 idtype18
= type_nullable_parser_nodes__TKwdo
.id
;
1869 if(var_tkwdonode6
== NULL
) {
1872 if(cltype17
>= var_tkwdonode6
->type
->table_size
) {
1875 var16
= var_tkwdonode6
->type
->type_table
[cltype17
] == idtype18
;
1879 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25834);
1882 var_pexprnode7
= var_nodearraylist5
;
1883 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
1884 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
1885 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
1886 if(var_pexprnode7
== NULL
) {
1889 if(cltype20
>= var_pexprnode7
->type
->table_size
) {
1892 var19
= var_pexprnode7
->type
->type_table
[cltype20
] == idtype21
;
1896 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25836);
1899 var_plabelnode8
= var_nodearraylist6
;
1900 /* <var_plabelnode8:nullable Object> isa nullable ALabel */
1901 cltype23
= type_nullable_parser_nodes__ALabel
.color
;
1902 idtype24
= type_nullable_parser_nodes__ALabel
.id
;
1903 if(var_plabelnode8
== NULL
) {
1906 if(cltype23
>= var_plabelnode8
->type
->table_size
) {
1909 var22
= var_plabelnode8
->type
->type_table
[cltype23
] == idtype24
;
1913 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25838);
1916 var25
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
1917 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var25
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var25
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var_pexprnode7
, var_plabelnode8
) /* init_aclosuredef on <var25:AClosureDef>*/;
1918 CHECK_NEW_parser_nodes__AClosureDef(var25
);
1919 var_pclosuredefnode1
= var25
;
1920 var_node_list
= var_pclosuredefnode1
;
1921 var26
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction672> */
1922 var27
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var26
) /* go_to on <var_p:Parser>*/;
1923 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var27
, var_node_list
) /* push on <var_p:Parser>*/;
1926 /* method parser#ReduceAction672#action for (self: Object, Parser) */
1927 void VIRTUAL_parser__ReduceAction672__action(val
* self
, val
* p0
) {
1928 parser__ReduceAction672__action(self
, p0
);
1931 /* method parser#ReduceAction673#action for (self: ReduceAction673, Parser) */
1932 void parser__ReduceAction673__action(val
* self
, val
* p0
) {
1933 val
* var_p
/* var p: Parser */;
1934 val
* var
/* : null */;
1935 val
* var_node_list
/* var node_list: nullable Object */;
1936 val
* var1
/* : nullable Object */;
1937 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1938 val
* var2
/* : nullable Object */;
1939 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1940 val
* var3
/* : nullable Object */;
1941 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1942 val
* var4
/* : nullable Object */;
1943 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1944 val
* var5
/* : Array[Object] */;
1945 val
* var_listnode4
/* var listnode4: Array[Object] */;
1946 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
1947 short int var6
/* : Bool */;
1950 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
1951 short int var7
/* : Bool */;
1954 val
* var_tkwdonode5
/* var tkwdonode5: nullable Object */;
1955 short int var10
/* : Bool */;
1958 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1959 short int var13
/* : Bool */;
1962 val
* var16
/* : AClosureDef */;
1963 val
* var17
/* : null */;
1964 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
1965 long var18
/* : Int */;
1966 long var19
/* : Int */;
1969 var_node_list
= var
;
1970 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1971 var_nodearraylist4
= var1
;
1972 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1973 var_nodearraylist3
= var2
;
1974 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1975 var_nodearraylist2
= var3
;
1976 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1977 var_nodearraylist1
= var4
;
1978 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
1979 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
1980 CHECK_NEW_array__Array(var5
);
1981 var_listnode4
= var5
;
1982 var_tbangnode2
= var_nodearraylist1
;
1983 /* <var_tbangnode2:nullable Object> isa nullable TBang */
1984 cltype
= type_nullable_parser_nodes__TBang
.color
;
1985 idtype
= type_nullable_parser_nodes__TBang
.id
;
1986 if(var_tbangnode2
== NULL
) {
1989 if(cltype
>= var_tbangnode2
->type
->table_size
) {
1992 var6
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
1996 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25862);
1999 var_pclosureidnode3
= var_nodearraylist2
;
2000 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
2001 cltype8
= type_nullable_parser_nodes__AClosureId
.color
;
2002 idtype9
= type_nullable_parser_nodes__AClosureId
.id
;
2003 if(var_pclosureidnode3
== NULL
) {
2006 if(cltype8
>= var_pclosureidnode3
->type
->table_size
) {
2009 var7
= var_pclosureidnode3
->type
->type_table
[cltype8
] == idtype9
;
2013 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25864);
2016 var_tkwdonode5
= var_nodearraylist3
;
2017 /* <var_tkwdonode5:nullable Object> isa nullable TKwdo */
2018 cltype11
= type_nullable_parser_nodes__TKwdo
.color
;
2019 idtype12
= type_nullable_parser_nodes__TKwdo
.id
;
2020 if(var_tkwdonode5
== NULL
) {
2023 if(cltype11
>= var_tkwdonode5
->type
->table_size
) {
2026 var10
= var_tkwdonode5
->type
->type_table
[cltype11
] == idtype12
;
2030 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25866);
2033 var_pexprnode6
= var_nodearraylist4
;
2034 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
2035 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
2036 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
2037 if(var_pexprnode6
== NULL
) {
2040 if(cltype14
>= var_pexprnode6
->type
->table_size
) {
2043 var13
= var_pexprnode6
->type
->type_table
[cltype14
] == idtype15
;
2047 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25868);
2050 var16
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
2052 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var16
, var_tbangnode2
, var_pclosureidnode3
, var_listnode4
, var_tkwdonode5
, var_pexprnode6
, var17
) /* init_aclosuredef on <var16:AClosureDef>*/;
2053 CHECK_NEW_parser_nodes__AClosureDef(var16
);
2054 var_pclosuredefnode1
= var16
;
2055 var_node_list
= var_pclosuredefnode1
;
2056 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction673> */
2057 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
2058 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
2061 /* method parser#ReduceAction673#action for (self: Object, Parser) */
2062 void VIRTUAL_parser__ReduceAction673__action(val
* self
, val
* p0
) {
2063 parser__ReduceAction673__action(self
, p0
);
2066 /* method parser#ReduceAction674#action for (self: ReduceAction674, Parser) */
2067 void parser__ReduceAction674__action(val
* self
, val
* p0
) {
2068 val
* var_p
/* var p: Parser */;
2069 val
* var
/* : null */;
2070 val
* var_node_list
/* var node_list: nullable Object */;
2071 val
* var1
/* : nullable Object */;
2072 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2073 val
* var2
/* : nullable Object */;
2074 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2075 val
* var3
/* : nullable Object */;
2076 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2077 val
* var4
/* : nullable Object */;
2078 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2079 val
* var5
/* : nullable Object */;
2080 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2081 val
* var6
/* : nullable Object */;
2082 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2083 val
* var7
/* : nullable Object */;
2084 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2085 val
* var8
/* : nullable Object */;
2086 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2087 val
* var9
/* : nullable Object */;
2088 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2089 val
* var10
/* : Array[Object] */;
2090 val
* var_listnode5
/* var listnode5: Array[Object] */;
2091 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
2092 short int var11
/* : Bool */;
2095 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
2096 short int var12
/* : Bool */;
2099 val
* var_listnode4
/* var listnode4: nullable Object */;
2100 short int var15
/* : Bool */;
2103 val
* var18
/* : Array[Object] */;
2104 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
2105 short int var19
/* : Bool */;
2108 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
2109 short int var22
/* : Bool */;
2112 val
* var25
/* : AClosureDef */;
2113 val
* var26
/* : null */;
2114 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
2115 long var27
/* : Int */;
2116 long var28
/* : Int */;
2119 var_node_list
= var
;
2120 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2121 var_nodearraylist9
= var1
;
2122 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2123 var_nodearraylist8
= var2
;
2124 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2125 var_nodearraylist7
= var3
;
2126 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2127 var_nodearraylist6
= var4
;
2128 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2129 var_nodearraylist5
= var5
;
2130 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2131 var_nodearraylist4
= var6
;
2132 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2133 var_nodearraylist3
= var7
;
2134 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2135 var_nodearraylist2
= var8
;
2136 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2137 var_nodearraylist1
= var9
;
2138 var10
= NEW_array__Array(&type_array__Arraykernel__Object
);
2139 ((void (*)(val
*))(var10
->class->vft
[COLOR_array__Array__init
]))(var10
) /* init on <var10:Array[Object]>*/;
2140 CHECK_NEW_array__Array(var10
);
2141 var_listnode5
= var10
;
2142 var_tbangnode2
= var_nodearraylist1
;
2143 /* <var_tbangnode2:nullable Object> isa nullable TBang */
2144 cltype
= type_nullable_parser_nodes__TBang
.color
;
2145 idtype
= type_nullable_parser_nodes__TBang
.id
;
2146 if(var_tbangnode2
== NULL
) {
2149 if(cltype
>= var_tbangnode2
->type
->table_size
) {
2152 var11
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
2156 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25897);
2159 var_pclosureidnode3
= var_nodearraylist2
;
2160 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
2161 cltype13
= type_nullable_parser_nodes__AClosureId
.color
;
2162 idtype14
= type_nullable_parser_nodes__AClosureId
.id
;
2163 if(var_pclosureidnode3
== NULL
) {
2166 if(cltype13
>= var_pclosureidnode3
->type
->table_size
) {
2169 var12
= var_pclosureidnode3
->type
->type_table
[cltype13
] == idtype14
;
2173 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25899);
2176 var_listnode4
= var_nodearraylist5
;
2177 /* <var_listnode4:nullable Object> isa Array[Object] */
2178 cltype16
= type_array__Arraykernel__Object
.color
;
2179 idtype17
= type_array__Arraykernel__Object
.id
;
2180 if(var_listnode4
== NULL
) {
2183 if(cltype16
>= var_listnode4
->type
->table_size
) {
2186 var15
= var_listnode4
->type
->type_table
[cltype16
] == idtype17
;
2190 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25901);
2193 var18
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction674>*/;
2194 var_listnode5
= var18
;
2195 var_tkwdonode6
= var_nodearraylist8
;
2196 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
2197 cltype20
= type_nullable_parser_nodes__TKwdo
.color
;
2198 idtype21
= type_nullable_parser_nodes__TKwdo
.id
;
2199 if(var_tkwdonode6
== NULL
) {
2202 if(cltype20
>= var_tkwdonode6
->type
->table_size
) {
2205 var19
= var_tkwdonode6
->type
->type_table
[cltype20
] == idtype21
;
2209 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25904);
2212 var_pexprnode7
= var_nodearraylist9
;
2213 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
2214 cltype23
= type_nullable_parser_nodes__AExpr
.color
;
2215 idtype24
= type_nullable_parser_nodes__AExpr
.id
;
2216 if(var_pexprnode7
== NULL
) {
2219 if(cltype23
>= var_pexprnode7
->type
->table_size
) {
2222 var22
= var_pexprnode7
->type
->type_table
[cltype23
] == idtype24
;
2226 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25906);
2229 var25
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
2231 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var25
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var25
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var_pexprnode7
, var26
) /* init_aclosuredef on <var25:AClosureDef>*/;
2232 CHECK_NEW_parser_nodes__AClosureDef(var25
);
2233 var_pclosuredefnode1
= var25
;
2234 var_node_list
= var_pclosuredefnode1
;
2235 var27
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction674> */
2236 var28
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var27
) /* go_to on <var_p:Parser>*/;
2237 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var28
, var_node_list
) /* push on <var_p:Parser>*/;
2240 /* method parser#ReduceAction674#action for (self: Object, Parser) */
2241 void VIRTUAL_parser__ReduceAction674__action(val
* self
, val
* p0
) {
2242 parser__ReduceAction674__action(self
, p0
);
2245 /* method parser#ReduceAction675#action for (self: ReduceAction675, Parser) */
2246 void parser__ReduceAction675__action(val
* self
, val
* p0
) {
2247 val
* var_p
/* var p: Parser */;
2248 val
* var
/* : null */;
2249 val
* var_node_list
/* var node_list: nullable Object */;
2250 val
* var1
/* : nullable Object */;
2251 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2252 val
* var2
/* : nullable Object */;
2253 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2254 val
* var3
/* : nullable Object */;
2255 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2256 val
* var4
/* : nullable Object */;
2257 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2258 val
* var5
/* : nullable Object */;
2259 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2260 val
* var6
/* : Array[Object] */;
2261 val
* var_listnode5
/* var listnode5: Array[Object] */;
2262 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
2263 short int var7
/* : Bool */;
2266 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
2267 short int var8
/* : Bool */;
2270 val
* var_listnode4
/* var listnode4: nullable Object */;
2271 short int var11
/* : Bool */;
2274 val
* var14
/* : Array[Object] */;
2275 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
2276 short int var15
/* : Bool */;
2279 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
2280 short int var18
/* : Bool */;
2283 val
* var21
/* : AClosureDef */;
2284 val
* var22
/* : null */;
2285 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
2286 long var23
/* : Int */;
2287 long var24
/* : Int */;
2290 var_node_list
= var
;
2291 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2292 var_nodearraylist5
= var1
;
2293 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2294 var_nodearraylist4
= var2
;
2295 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2296 var_nodearraylist3
= var3
;
2297 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2298 var_nodearraylist2
= var4
;
2299 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2300 var_nodearraylist1
= var5
;
2301 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
2302 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
2303 CHECK_NEW_array__Array(var6
);
2304 var_listnode5
= var6
;
2305 var_tbangnode2
= var_nodearraylist1
;
2306 /* <var_tbangnode2:nullable Object> isa nullable TBang */
2307 cltype
= type_nullable_parser_nodes__TBang
.color
;
2308 idtype
= type_nullable_parser_nodes__TBang
.id
;
2309 if(var_tbangnode2
== NULL
) {
2312 if(cltype
>= var_tbangnode2
->type
->table_size
) {
2315 var7
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
2319 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25931);
2322 var_pclosureidnode3
= var_nodearraylist2
;
2323 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
2324 cltype9
= type_nullable_parser_nodes__AClosureId
.color
;
2325 idtype10
= type_nullable_parser_nodes__AClosureId
.id
;
2326 if(var_pclosureidnode3
== NULL
) {
2329 if(cltype9
>= var_pclosureidnode3
->type
->table_size
) {
2332 var8
= var_pclosureidnode3
->type
->type_table
[cltype9
] == idtype10
;
2336 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25933);
2339 var_listnode4
= var_nodearraylist3
;
2340 /* <var_listnode4:nullable Object> isa Array[Object] */
2341 cltype12
= type_array__Arraykernel__Object
.color
;
2342 idtype13
= type_array__Arraykernel__Object
.id
;
2343 if(var_listnode4
== NULL
) {
2346 if(cltype12
>= var_listnode4
->type
->table_size
) {
2349 var11
= var_listnode4
->type
->type_table
[cltype12
] == idtype13
;
2353 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25935);
2356 var14
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction675>*/;
2357 var_listnode5
= var14
;
2358 var_tkwdonode6
= var_nodearraylist4
;
2359 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
2360 cltype16
= type_nullable_parser_nodes__TKwdo
.color
;
2361 idtype17
= type_nullable_parser_nodes__TKwdo
.id
;
2362 if(var_tkwdonode6
== NULL
) {
2365 if(cltype16
>= var_tkwdonode6
->type
->table_size
) {
2368 var15
= var_tkwdonode6
->type
->type_table
[cltype16
] == idtype17
;
2372 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25938);
2375 var_pexprnode7
= var_nodearraylist5
;
2376 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
2377 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
2378 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
2379 if(var_pexprnode7
== NULL
) {
2382 if(cltype19
>= var_pexprnode7
->type
->table_size
) {
2385 var18
= var_pexprnode7
->type
->type_table
[cltype19
] == idtype20
;
2389 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25940);
2392 var21
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
2394 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var21
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var_pexprnode7
, var22
) /* init_aclosuredef on <var21:AClosureDef>*/;
2395 CHECK_NEW_parser_nodes__AClosureDef(var21
);
2396 var_pclosuredefnode1
= var21
;
2397 var_node_list
= var_pclosuredefnode1
;
2398 var23
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction675> */
2399 var24
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var23
) /* go_to on <var_p:Parser>*/;
2400 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var24
, var_node_list
) /* push on <var_p:Parser>*/;
2403 /* method parser#ReduceAction675#action for (self: Object, Parser) */
2404 void VIRTUAL_parser__ReduceAction675__action(val
* self
, val
* p0
) {
2405 parser__ReduceAction675__action(self
, p0
);
2408 /* method parser#ReduceAction676#action for (self: ReduceAction676, Parser) */
2409 void parser__ReduceAction676__action(val
* self
, val
* p0
) {
2410 val
* var_p
/* var p: Parser */;
2411 val
* var
/* : null */;
2412 val
* var_node_list
/* var node_list: nullable Object */;
2413 val
* var1
/* : nullable Object */;
2414 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2415 val
* var2
/* : nullable Object */;
2416 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2417 val
* var3
/* : nullable Object */;
2418 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2419 val
* var4
/* : nullable Object */;
2420 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2421 val
* var5
/* : nullable Object */;
2422 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2423 val
* var6
/* : Array[Object] */;
2424 val
* var_listnode4
/* var listnode4: Array[Object] */;
2425 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
2426 short int var7
/* : Bool */;
2429 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
2430 short int var8
/* : Bool */;
2433 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
2434 short int var11
/* : Bool */;
2437 val
* var14
/* : AClosureDef */;
2438 val
* var15
/* : null */;
2439 val
* var16
/* : null */;
2440 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
2441 long var17
/* : Int */;
2442 long var18
/* : Int */;
2445 var_node_list
= var
;
2446 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2447 var_nodearraylist5
= var1
;
2448 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2449 var_nodearraylist4
= var2
;
2450 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2451 var_nodearraylist3
= var3
;
2452 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2453 var_nodearraylist2
= var4
;
2454 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2455 var_nodearraylist1
= var5
;
2456 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
2457 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
2458 CHECK_NEW_array__Array(var6
);
2459 var_listnode4
= var6
;
2460 var_tbangnode2
= var_nodearraylist1
;
2461 /* <var_tbangnode2:nullable Object> isa nullable TBang */
2462 cltype
= type_nullable_parser_nodes__TBang
.color
;
2463 idtype
= type_nullable_parser_nodes__TBang
.id
;
2464 if(var_tbangnode2
== NULL
) {
2467 if(cltype
>= var_tbangnode2
->type
->table_size
) {
2470 var7
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
2474 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25965);
2477 var_pclosureidnode3
= var_nodearraylist2
;
2478 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
2479 cltype9
= type_nullable_parser_nodes__AClosureId
.color
;
2480 idtype10
= type_nullable_parser_nodes__AClosureId
.id
;
2481 if(var_pclosureidnode3
== NULL
) {
2484 if(cltype9
>= var_pclosureidnode3
->type
->table_size
) {
2487 var8
= var_pclosureidnode3
->type
->type_table
[cltype9
] == idtype10
;
2491 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25967);
2494 var_pexprnode6
= var_nodearraylist5
;
2495 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
2496 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
2497 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
2498 if(var_pexprnode6
== NULL
) {
2501 if(cltype12
>= var_pexprnode6
->type
->table_size
) {
2504 var11
= var_pexprnode6
->type
->type_table
[cltype12
] == idtype13
;
2508 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25969);
2511 var14
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
2514 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var14
, var_tbangnode2
, var_pclosureidnode3
, var_listnode4
, var15
, var_pexprnode6
, var16
) /* init_aclosuredef on <var14:AClosureDef>*/;
2515 CHECK_NEW_parser_nodes__AClosureDef(var14
);
2516 var_pclosuredefnode1
= var14
;
2517 var_node_list
= var_pclosuredefnode1
;
2518 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction676> */
2519 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
2520 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
2523 /* method parser#ReduceAction676#action for (self: Object, Parser) */
2524 void VIRTUAL_parser__ReduceAction676__action(val
* self
, val
* p0
) {
2525 parser__ReduceAction676__action(self
, p0
);
2528 /* method parser#ReduceAction677#action for (self: ReduceAction677, Parser) */
2529 void parser__ReduceAction677__action(val
* self
, val
* p0
) {
2530 val
* var_p
/* var p: Parser */;
2531 val
* var
/* : null */;
2532 val
* var_node_list
/* var node_list: nullable Object */;
2533 val
* var1
/* : nullable Object */;
2534 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
2535 val
* var2
/* : nullable Object */;
2536 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2537 val
* var3
/* : nullable Object */;
2538 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2539 val
* var4
/* : nullable Object */;
2540 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2541 val
* var5
/* : nullable Object */;
2542 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2543 val
* var6
/* : nullable Object */;
2544 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2545 val
* var7
/* : nullable Object */;
2546 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2547 val
* var8
/* : nullable Object */;
2548 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2549 val
* var9
/* : nullable Object */;
2550 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2551 val
* var10
/* : nullable Object */;
2552 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2553 val
* var11
/* : Array[Object] */;
2554 val
* var_listnode5
/* var listnode5: Array[Object] */;
2555 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
2556 short int var12
/* : Bool */;
2559 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
2560 short int var13
/* : Bool */;
2563 val
* var_listnode4
/* var listnode4: nullable Object */;
2564 short int var16
/* : Bool */;
2567 val
* var19
/* : Array[Object] */;
2568 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
2569 short int var20
/* : Bool */;
2572 val
* var23
/* : AClosureDef */;
2573 val
* var24
/* : null */;
2574 val
* var25
/* : null */;
2575 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
2576 long var26
/* : Int */;
2577 long var27
/* : Int */;
2580 var_node_list
= var
;
2581 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2582 var_nodearraylist10
= var1
;
2583 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2584 var_nodearraylist9
= var2
;
2585 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2586 var_nodearraylist8
= var3
;
2587 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2588 var_nodearraylist7
= var4
;
2589 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2590 var_nodearraylist6
= var5
;
2591 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2592 var_nodearraylist5
= var6
;
2593 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2594 var_nodearraylist4
= var7
;
2595 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2596 var_nodearraylist3
= var8
;
2597 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2598 var_nodearraylist2
= var9
;
2599 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2600 var_nodearraylist1
= var10
;
2601 var11
= NEW_array__Array(&type_array__Arraykernel__Object
);
2602 ((void (*)(val
*))(var11
->class->vft
[COLOR_array__Array__init
]))(var11
) /* init on <var11:Array[Object]>*/;
2603 CHECK_NEW_array__Array(var11
);
2604 var_listnode5
= var11
;
2605 var_tbangnode2
= var_nodearraylist1
;
2606 /* <var_tbangnode2:nullable Object> isa nullable TBang */
2607 cltype
= type_nullable_parser_nodes__TBang
.color
;
2608 idtype
= type_nullable_parser_nodes__TBang
.id
;
2609 if(var_tbangnode2
== NULL
) {
2612 if(cltype
>= var_tbangnode2
->type
->table_size
) {
2615 var12
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
2619 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 25999);
2622 var_pclosureidnode3
= var_nodearraylist2
;
2623 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
2624 cltype14
= type_nullable_parser_nodes__AClosureId
.color
;
2625 idtype15
= type_nullable_parser_nodes__AClosureId
.id
;
2626 if(var_pclosureidnode3
== NULL
) {
2629 if(cltype14
>= var_pclosureidnode3
->type
->table_size
) {
2632 var13
= var_pclosureidnode3
->type
->type_table
[cltype14
] == idtype15
;
2636 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26001);
2639 var_listnode4
= var_nodearraylist5
;
2640 /* <var_listnode4:nullable Object> isa Array[Object] */
2641 cltype17
= type_array__Arraykernel__Object
.color
;
2642 idtype18
= type_array__Arraykernel__Object
.id
;
2643 if(var_listnode4
== NULL
) {
2646 if(cltype17
>= var_listnode4
->type
->table_size
) {
2649 var16
= var_listnode4
->type
->type_table
[cltype17
] == idtype18
;
2653 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26003);
2656 var19
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction677>*/;
2657 var_listnode5
= var19
;
2658 var_pexprnode7
= var_nodearraylist10
;
2659 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
2660 cltype21
= type_nullable_parser_nodes__AExpr
.color
;
2661 idtype22
= type_nullable_parser_nodes__AExpr
.id
;
2662 if(var_pexprnode7
== NULL
) {
2665 if(cltype21
>= var_pexprnode7
->type
->table_size
) {
2668 var20
= var_pexprnode7
->type
->type_table
[cltype21
] == idtype22
;
2672 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26006);
2675 var23
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
2678 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var23
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var23
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var24
, var_pexprnode7
, var25
) /* init_aclosuredef on <var23:AClosureDef>*/;
2679 CHECK_NEW_parser_nodes__AClosureDef(var23
);
2680 var_pclosuredefnode1
= var23
;
2681 var_node_list
= var_pclosuredefnode1
;
2682 var26
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction677> */
2683 var27
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var26
) /* go_to on <var_p:Parser>*/;
2684 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var27
, var_node_list
) /* push on <var_p:Parser>*/;
2687 /* method parser#ReduceAction677#action for (self: Object, Parser) */
2688 void VIRTUAL_parser__ReduceAction677__action(val
* self
, val
* p0
) {
2689 parser__ReduceAction677__action(self
, p0
);
2692 /* method parser#ReduceAction678#action for (self: ReduceAction678, Parser) */
2693 void parser__ReduceAction678__action(val
* self
, val
* p0
) {
2694 val
* var_p
/* var p: Parser */;
2695 val
* var
/* : null */;
2696 val
* var_node_list
/* var node_list: nullable Object */;
2697 val
* var1
/* : nullable Object */;
2698 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2699 val
* var2
/* : nullable Object */;
2700 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2701 val
* var3
/* : nullable Object */;
2702 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2703 val
* var4
/* : nullable Object */;
2704 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2705 val
* var5
/* : nullable Object */;
2706 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2707 val
* var6
/* : nullable Object */;
2708 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2709 val
* var7
/* : Array[Object] */;
2710 val
* var_listnode5
/* var listnode5: Array[Object] */;
2711 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
2712 short int var8
/* : Bool */;
2715 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
2716 short int var9
/* : Bool */;
2719 val
* var_listnode4
/* var listnode4: nullable Object */;
2720 short int var12
/* : Bool */;
2723 val
* var15
/* : Array[Object] */;
2724 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
2725 short int var16
/* : Bool */;
2728 val
* var19
/* : AClosureDef */;
2729 val
* var20
/* : null */;
2730 val
* var21
/* : null */;
2731 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
2732 long var22
/* : Int */;
2733 long var23
/* : Int */;
2736 var_node_list
= var
;
2737 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2738 var_nodearraylist6
= var1
;
2739 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2740 var_nodearraylist5
= var2
;
2741 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2742 var_nodearraylist4
= var3
;
2743 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2744 var_nodearraylist3
= var4
;
2745 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2746 var_nodearraylist2
= var5
;
2747 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2748 var_nodearraylist1
= var6
;
2749 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
2750 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
2751 CHECK_NEW_array__Array(var7
);
2752 var_listnode5
= var7
;
2753 var_tbangnode2
= var_nodearraylist1
;
2754 /* <var_tbangnode2:nullable Object> isa nullable TBang */
2755 cltype
= type_nullable_parser_nodes__TBang
.color
;
2756 idtype
= type_nullable_parser_nodes__TBang
.id
;
2757 if(var_tbangnode2
== NULL
) {
2760 if(cltype
>= var_tbangnode2
->type
->table_size
) {
2763 var8
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
2767 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26032);
2770 var_pclosureidnode3
= var_nodearraylist2
;
2771 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
2772 cltype10
= type_nullable_parser_nodes__AClosureId
.color
;
2773 idtype11
= type_nullable_parser_nodes__AClosureId
.id
;
2774 if(var_pclosureidnode3
== NULL
) {
2777 if(cltype10
>= var_pclosureidnode3
->type
->table_size
) {
2780 var9
= var_pclosureidnode3
->type
->type_table
[cltype10
] == idtype11
;
2784 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26034);
2787 var_listnode4
= var_nodearraylist3
;
2788 /* <var_listnode4:nullable Object> isa Array[Object] */
2789 cltype13
= type_array__Arraykernel__Object
.color
;
2790 idtype14
= type_array__Arraykernel__Object
.id
;
2791 if(var_listnode4
== NULL
) {
2794 if(cltype13
>= var_listnode4
->type
->table_size
) {
2797 var12
= var_listnode4
->type
->type_table
[cltype13
] == idtype14
;
2801 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26036);
2804 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction678>*/;
2805 var_listnode5
= var15
;
2806 var_pexprnode7
= var_nodearraylist6
;
2807 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
2808 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
2809 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
2810 if(var_pexprnode7
== NULL
) {
2813 if(cltype17
>= var_pexprnode7
->type
->table_size
) {
2816 var16
= var_pexprnode7
->type
->type_table
[cltype17
] == idtype18
;
2820 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26039);
2823 var19
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
2826 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var19
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var20
, var_pexprnode7
, var21
) /* init_aclosuredef on <var19:AClosureDef>*/;
2827 CHECK_NEW_parser_nodes__AClosureDef(var19
);
2828 var_pclosuredefnode1
= var19
;
2829 var_node_list
= var_pclosuredefnode1
;
2830 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction678> */
2831 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
2832 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
2835 /* method parser#ReduceAction678#action for (self: Object, Parser) */
2836 void VIRTUAL_parser__ReduceAction678__action(val
* self
, val
* p0
) {
2837 parser__ReduceAction678__action(self
, p0
);
2840 /* method parser#ReduceAction679#action for (self: ReduceAction679, Parser) */
2841 void parser__ReduceAction679__action(val
* self
, val
* p0
) {
2842 val
* var_p
/* var p: Parser */;
2843 val
* var
/* : null */;
2844 val
* var_node_list
/* var node_list: nullable Object */;
2845 val
* var1
/* : nullable Object */;
2846 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2847 val
* var2
/* : nullable Object */;
2848 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2849 val
* var3
/* : nullable Object */;
2850 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2851 val
* var4
/* : nullable Object */;
2852 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2853 val
* var5
/* : nullable Object */;
2854 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2855 val
* var6
/* : Array[Object] */;
2856 val
* var_listnode4
/* var listnode4: Array[Object] */;
2857 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
2858 short int var7
/* : Bool */;
2861 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
2862 short int var8
/* : Bool */;
2865 val
* var_tkwdonode5
/* var tkwdonode5: nullable Object */;
2866 short int var11
/* : Bool */;
2869 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
2870 short int var14
/* : Bool */;
2873 val
* var17
/* : AClosureDef */;
2874 val
* var18
/* : null */;
2875 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
2876 long var19
/* : Int */;
2877 long var20
/* : Int */;
2880 var_node_list
= var
;
2881 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2882 var_nodearraylist5
= var1
;
2883 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2884 var_nodearraylist4
= var2
;
2885 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2886 var_nodearraylist3
= var3
;
2887 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2888 var_nodearraylist2
= var4
;
2889 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2890 var_nodearraylist1
= var5
;
2891 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
2892 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
2893 CHECK_NEW_array__Array(var6
);
2894 var_listnode4
= var6
;
2895 var_tbangnode2
= var_nodearraylist1
;
2896 /* <var_tbangnode2:nullable Object> isa nullable TBang */
2897 cltype
= type_nullable_parser_nodes__TBang
.color
;
2898 idtype
= type_nullable_parser_nodes__TBang
.id
;
2899 if(var_tbangnode2
== NULL
) {
2902 if(cltype
>= var_tbangnode2
->type
->table_size
) {
2905 var7
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
2909 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26064);
2912 var_pclosureidnode3
= var_nodearraylist2
;
2913 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
2914 cltype9
= type_nullable_parser_nodes__AClosureId
.color
;
2915 idtype10
= type_nullable_parser_nodes__AClosureId
.id
;
2916 if(var_pclosureidnode3
== NULL
) {
2919 if(cltype9
>= var_pclosureidnode3
->type
->table_size
) {
2922 var8
= var_pclosureidnode3
->type
->type_table
[cltype9
] == idtype10
;
2926 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26066);
2929 var_tkwdonode5
= var_nodearraylist3
;
2930 /* <var_tkwdonode5:nullable Object> isa nullable TKwdo */
2931 cltype12
= type_nullable_parser_nodes__TKwdo
.color
;
2932 idtype13
= type_nullable_parser_nodes__TKwdo
.id
;
2933 if(var_tkwdonode5
== NULL
) {
2936 if(cltype12
>= var_tkwdonode5
->type
->table_size
) {
2939 var11
= var_tkwdonode5
->type
->type_table
[cltype12
] == idtype13
;
2943 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26068);
2946 var_pexprnode6
= var_nodearraylist5
;
2947 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
2948 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
2949 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
2950 if(var_pexprnode6
== NULL
) {
2953 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
2956 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
2960 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26070);
2963 var17
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
2965 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var17
, var_tbangnode2
, var_pclosureidnode3
, var_listnode4
, var_tkwdonode5
, var_pexprnode6
, var18
) /* init_aclosuredef on <var17:AClosureDef>*/;
2966 CHECK_NEW_parser_nodes__AClosureDef(var17
);
2967 var_pclosuredefnode1
= var17
;
2968 var_node_list
= var_pclosuredefnode1
;
2969 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction679> */
2970 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
2971 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
2974 /* method parser#ReduceAction679#action for (self: Object, Parser) */
2975 void VIRTUAL_parser__ReduceAction679__action(val
* self
, val
* p0
) {
2976 parser__ReduceAction679__action(self
, p0
);
2979 /* method parser#ReduceAction680#action for (self: ReduceAction680, Parser) */
2980 void parser__ReduceAction680__action(val
* self
, val
* p0
) {
2981 val
* var_p
/* var p: Parser */;
2982 val
* var
/* : null */;
2983 val
* var_node_list
/* var node_list: nullable Object */;
2984 val
* var1
/* : nullable Object */;
2985 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
2986 val
* var2
/* : nullable Object */;
2987 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
2988 val
* var3
/* : nullable Object */;
2989 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2990 val
* var4
/* : nullable Object */;
2991 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2992 val
* var5
/* : nullable Object */;
2993 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2994 val
* var6
/* : nullable Object */;
2995 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2996 val
* var7
/* : nullable Object */;
2997 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2998 val
* var8
/* : nullable Object */;
2999 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3000 val
* var9
/* : nullable Object */;
3001 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3002 val
* var10
/* : nullable Object */;
3003 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3004 val
* var11
/* : Array[Object] */;
3005 val
* var_listnode5
/* var listnode5: Array[Object] */;
3006 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
3007 short int var12
/* : Bool */;
3010 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
3011 short int var13
/* : Bool */;
3014 val
* var_listnode4
/* var listnode4: nullable Object */;
3015 short int var16
/* : Bool */;
3018 val
* var19
/* : Array[Object] */;
3019 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
3020 short int var20
/* : Bool */;
3023 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
3024 short int var23
/* : Bool */;
3027 val
* var26
/* : AClosureDef */;
3028 val
* var27
/* : null */;
3029 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
3030 long var28
/* : Int */;
3031 long var29
/* : Int */;
3034 var_node_list
= var
;
3035 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3036 var_nodearraylist10
= var1
;
3037 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3038 var_nodearraylist9
= var2
;
3039 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3040 var_nodearraylist8
= var3
;
3041 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3042 var_nodearraylist7
= var4
;
3043 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3044 var_nodearraylist6
= var5
;
3045 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3046 var_nodearraylist5
= var6
;
3047 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3048 var_nodearraylist4
= var7
;
3049 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3050 var_nodearraylist3
= var8
;
3051 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3052 var_nodearraylist2
= var9
;
3053 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3054 var_nodearraylist1
= var10
;
3055 var11
= NEW_array__Array(&type_array__Arraykernel__Object
);
3056 ((void (*)(val
*))(var11
->class->vft
[COLOR_array__Array__init
]))(var11
) /* init on <var11:Array[Object]>*/;
3057 CHECK_NEW_array__Array(var11
);
3058 var_listnode5
= var11
;
3059 var_tbangnode2
= var_nodearraylist1
;
3060 /* <var_tbangnode2:nullable Object> isa nullable TBang */
3061 cltype
= type_nullable_parser_nodes__TBang
.color
;
3062 idtype
= type_nullable_parser_nodes__TBang
.id
;
3063 if(var_tbangnode2
== NULL
) {
3066 if(cltype
>= var_tbangnode2
->type
->table_size
) {
3069 var12
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
3073 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26100);
3076 var_pclosureidnode3
= var_nodearraylist2
;
3077 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
3078 cltype14
= type_nullable_parser_nodes__AClosureId
.color
;
3079 idtype15
= type_nullable_parser_nodes__AClosureId
.id
;
3080 if(var_pclosureidnode3
== NULL
) {
3083 if(cltype14
>= var_pclosureidnode3
->type
->table_size
) {
3086 var13
= var_pclosureidnode3
->type
->type_table
[cltype14
] == idtype15
;
3090 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26102);
3093 var_listnode4
= var_nodearraylist5
;
3094 /* <var_listnode4:nullable Object> isa Array[Object] */
3095 cltype17
= type_array__Arraykernel__Object
.color
;
3096 idtype18
= type_array__Arraykernel__Object
.id
;
3097 if(var_listnode4
== NULL
) {
3100 if(cltype17
>= var_listnode4
->type
->table_size
) {
3103 var16
= var_listnode4
->type
->type_table
[cltype17
] == idtype18
;
3107 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26104);
3110 var19
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction680>*/;
3111 var_listnode5
= var19
;
3112 var_tkwdonode6
= var_nodearraylist8
;
3113 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
3114 cltype21
= type_nullable_parser_nodes__TKwdo
.color
;
3115 idtype22
= type_nullable_parser_nodes__TKwdo
.id
;
3116 if(var_tkwdonode6
== NULL
) {
3119 if(cltype21
>= var_tkwdonode6
->type
->table_size
) {
3122 var20
= var_tkwdonode6
->type
->type_table
[cltype21
] == idtype22
;
3126 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26107);
3129 var_pexprnode7
= var_nodearraylist10
;
3130 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
3131 cltype24
= type_nullable_parser_nodes__AExpr
.color
;
3132 idtype25
= type_nullable_parser_nodes__AExpr
.id
;
3133 if(var_pexprnode7
== NULL
) {
3136 if(cltype24
>= var_pexprnode7
->type
->table_size
) {
3139 var23
= var_pexprnode7
->type
->type_table
[cltype24
] == idtype25
;
3143 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26109);
3146 var26
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
3148 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var26
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var26
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var_pexprnode7
, var27
) /* init_aclosuredef on <var26:AClosureDef>*/;
3149 CHECK_NEW_parser_nodes__AClosureDef(var26
);
3150 var_pclosuredefnode1
= var26
;
3151 var_node_list
= var_pclosuredefnode1
;
3152 var28
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction680> */
3153 var29
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var28
) /* go_to on <var_p:Parser>*/;
3154 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var29
, var_node_list
) /* push on <var_p:Parser>*/;
3157 /* method parser#ReduceAction680#action for (self: Object, Parser) */
3158 void VIRTUAL_parser__ReduceAction680__action(val
* self
, val
* p0
) {
3159 parser__ReduceAction680__action(self
, p0
);
3162 /* method parser#ReduceAction681#action for (self: ReduceAction681, Parser) */
3163 void parser__ReduceAction681__action(val
* self
, val
* p0
) {
3164 val
* var_p
/* var p: Parser */;
3165 val
* var
/* : null */;
3166 val
* var_node_list
/* var node_list: nullable Object */;
3167 val
* var1
/* : nullable Object */;
3168 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3169 val
* var2
/* : nullable Object */;
3170 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3171 val
* var3
/* : nullable Object */;
3172 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3173 val
* var4
/* : nullable Object */;
3174 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3175 val
* var5
/* : nullable Object */;
3176 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3177 val
* var6
/* : nullable Object */;
3178 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3179 val
* var7
/* : Array[Object] */;
3180 val
* var_listnode5
/* var listnode5: Array[Object] */;
3181 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
3182 short int var8
/* : Bool */;
3185 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
3186 short int var9
/* : Bool */;
3189 val
* var_listnode4
/* var listnode4: nullable Object */;
3190 short int var12
/* : Bool */;
3193 val
* var15
/* : Array[Object] */;
3194 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
3195 short int var16
/* : Bool */;
3198 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
3199 short int var19
/* : Bool */;
3202 val
* var22
/* : AClosureDef */;
3203 val
* var23
/* : null */;
3204 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
3205 long var24
/* : Int */;
3206 long var25
/* : Int */;
3209 var_node_list
= var
;
3210 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3211 var_nodearraylist6
= var1
;
3212 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3213 var_nodearraylist5
= var2
;
3214 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3215 var_nodearraylist4
= var3
;
3216 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3217 var_nodearraylist3
= var4
;
3218 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3219 var_nodearraylist2
= var5
;
3220 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3221 var_nodearraylist1
= var6
;
3222 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
3223 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
3224 CHECK_NEW_array__Array(var7
);
3225 var_listnode5
= var7
;
3226 var_tbangnode2
= var_nodearraylist1
;
3227 /* <var_tbangnode2:nullable Object> isa nullable TBang */
3228 cltype
= type_nullable_parser_nodes__TBang
.color
;
3229 idtype
= type_nullable_parser_nodes__TBang
.id
;
3230 if(var_tbangnode2
== NULL
) {
3233 if(cltype
>= var_tbangnode2
->type
->table_size
) {
3236 var8
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
3240 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26135);
3243 var_pclosureidnode3
= var_nodearraylist2
;
3244 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
3245 cltype10
= type_nullable_parser_nodes__AClosureId
.color
;
3246 idtype11
= type_nullable_parser_nodes__AClosureId
.id
;
3247 if(var_pclosureidnode3
== NULL
) {
3250 if(cltype10
>= var_pclosureidnode3
->type
->table_size
) {
3253 var9
= var_pclosureidnode3
->type
->type_table
[cltype10
] == idtype11
;
3257 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26137);
3260 var_listnode4
= var_nodearraylist3
;
3261 /* <var_listnode4:nullable Object> isa Array[Object] */
3262 cltype13
= type_array__Arraykernel__Object
.color
;
3263 idtype14
= type_array__Arraykernel__Object
.id
;
3264 if(var_listnode4
== NULL
) {
3267 if(cltype13
>= var_listnode4
->type
->table_size
) {
3270 var12
= var_listnode4
->type
->type_table
[cltype13
] == idtype14
;
3274 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26139);
3277 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction681>*/;
3278 var_listnode5
= var15
;
3279 var_tkwdonode6
= var_nodearraylist4
;
3280 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
3281 cltype17
= type_nullable_parser_nodes__TKwdo
.color
;
3282 idtype18
= type_nullable_parser_nodes__TKwdo
.id
;
3283 if(var_tkwdonode6
== NULL
) {
3286 if(cltype17
>= var_tkwdonode6
->type
->table_size
) {
3289 var16
= var_tkwdonode6
->type
->type_table
[cltype17
] == idtype18
;
3293 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26142);
3296 var_pexprnode7
= var_nodearraylist6
;
3297 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
3298 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
3299 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
3300 if(var_pexprnode7
== NULL
) {
3303 if(cltype20
>= var_pexprnode7
->type
->table_size
) {
3306 var19
= var_pexprnode7
->type
->type_table
[cltype20
] == idtype21
;
3310 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26144);
3313 var22
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
3315 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var22
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var22
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var_pexprnode7
, var23
) /* init_aclosuredef on <var22:AClosureDef>*/;
3316 CHECK_NEW_parser_nodes__AClosureDef(var22
);
3317 var_pclosuredefnode1
= var22
;
3318 var_node_list
= var_pclosuredefnode1
;
3319 var24
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction681> */
3320 var25
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var24
) /* go_to on <var_p:Parser>*/;
3321 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var25
, var_node_list
) /* push on <var_p:Parser>*/;
3324 /* method parser#ReduceAction681#action for (self: Object, Parser) */
3325 void VIRTUAL_parser__ReduceAction681__action(val
* self
, val
* p0
) {
3326 parser__ReduceAction681__action(self
, p0
);
3329 /* method parser#ReduceAction682#action for (self: ReduceAction682, Parser) */
3330 void parser__ReduceAction682__action(val
* self
, val
* p0
) {
3331 val
* var_p
/* var p: Parser */;
3332 val
* var
/* : null */;
3333 val
* var_node_list
/* var node_list: nullable Object */;
3334 val
* var1
/* : nullable Object */;
3335 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3336 val
* var2
/* : nullable Object */;
3337 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3338 val
* var3
/* : nullable Object */;
3339 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3340 val
* var4
/* : nullable Object */;
3341 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3342 val
* var5
/* : Array[Object] */;
3343 val
* var_listnode4
/* var listnode4: Array[Object] */;
3344 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
3345 short int var6
/* : Bool */;
3348 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
3349 short int var7
/* : Bool */;
3352 val
* var_tkwdonode5
/* var tkwdonode5: nullable Object */;
3353 short int var10
/* : Bool */;
3356 val
* var13
/* : AClosureDef */;
3357 val
* var14
/* : null */;
3358 val
* var15
/* : null */;
3359 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
3360 long var16
/* : Int */;
3361 long var17
/* : Int */;
3364 var_node_list
= var
;
3365 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3366 var_nodearraylist4
= var1
;
3367 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3368 var_nodearraylist3
= var2
;
3369 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3370 var_nodearraylist2
= var3
;
3371 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3372 var_nodearraylist1
= var4
;
3373 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
3374 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
3375 CHECK_NEW_array__Array(var5
);
3376 var_listnode4
= var5
;
3377 var_tbangnode2
= var_nodearraylist1
;
3378 /* <var_tbangnode2:nullable Object> isa nullable TBang */
3379 cltype
= type_nullable_parser_nodes__TBang
.color
;
3380 idtype
= type_nullable_parser_nodes__TBang
.id
;
3381 if(var_tbangnode2
== NULL
) {
3384 if(cltype
>= var_tbangnode2
->type
->table_size
) {
3387 var6
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
3391 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26168);
3394 var_pclosureidnode3
= var_nodearraylist2
;
3395 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
3396 cltype8
= type_nullable_parser_nodes__AClosureId
.color
;
3397 idtype9
= type_nullable_parser_nodes__AClosureId
.id
;
3398 if(var_pclosureidnode3
== NULL
) {
3401 if(cltype8
>= var_pclosureidnode3
->type
->table_size
) {
3404 var7
= var_pclosureidnode3
->type
->type_table
[cltype8
] == idtype9
;
3408 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26170);
3411 var_tkwdonode5
= var_nodearraylist3
;
3412 /* <var_tkwdonode5:nullable Object> isa nullable TKwdo */
3413 cltype11
= type_nullable_parser_nodes__TKwdo
.color
;
3414 idtype12
= type_nullable_parser_nodes__TKwdo
.id
;
3415 if(var_tkwdonode5
== NULL
) {
3418 if(cltype11
>= var_tkwdonode5
->type
->table_size
) {
3421 var10
= var_tkwdonode5
->type
->type_table
[cltype11
] == idtype12
;
3425 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26172);
3428 var13
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
3431 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var13
, var_tbangnode2
, var_pclosureidnode3
, var_listnode4
, var_tkwdonode5
, var14
, var15
) /* init_aclosuredef on <var13:AClosureDef>*/;
3432 CHECK_NEW_parser_nodes__AClosureDef(var13
);
3433 var_pclosuredefnode1
= var13
;
3434 var_node_list
= var_pclosuredefnode1
;
3435 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction682> */
3436 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
3437 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
3440 /* method parser#ReduceAction682#action for (self: Object, Parser) */
3441 void VIRTUAL_parser__ReduceAction682__action(val
* self
, val
* p0
) {
3442 parser__ReduceAction682__action(self
, p0
);
3445 /* method parser#ReduceAction683#action for (self: ReduceAction683, Parser) */
3446 void parser__ReduceAction683__action(val
* self
, val
* p0
) {
3447 val
* var_p
/* var p: Parser */;
3448 val
* var
/* : null */;
3449 val
* var_node_list
/* var node_list: nullable Object */;
3450 val
* var1
/* : nullable Object */;
3451 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
3452 val
* var2
/* : nullable Object */;
3453 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3454 val
* var3
/* : nullable Object */;
3455 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3456 val
* var4
/* : nullable Object */;
3457 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3458 val
* var5
/* : nullable Object */;
3459 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3460 val
* var6
/* : nullable Object */;
3461 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3462 val
* var7
/* : nullable Object */;
3463 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3464 val
* var8
/* : nullable Object */;
3465 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3466 val
* var9
/* : nullable Object */;
3467 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3468 val
* var10
/* : Array[Object] */;
3469 val
* var_listnode5
/* var listnode5: Array[Object] */;
3470 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
3471 short int var11
/* : Bool */;
3474 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
3475 short int var12
/* : Bool */;
3478 val
* var_listnode4
/* var listnode4: nullable Object */;
3479 short int var15
/* : Bool */;
3482 val
* var18
/* : Array[Object] */;
3483 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
3484 short int var19
/* : Bool */;
3487 val
* var22
/* : AClosureDef */;
3488 val
* var23
/* : null */;
3489 val
* var24
/* : null */;
3490 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
3491 long var25
/* : Int */;
3492 long var26
/* : Int */;
3495 var_node_list
= var
;
3496 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3497 var_nodearraylist9
= var1
;
3498 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3499 var_nodearraylist8
= var2
;
3500 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3501 var_nodearraylist7
= var3
;
3502 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3503 var_nodearraylist6
= var4
;
3504 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3505 var_nodearraylist5
= var5
;
3506 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3507 var_nodearraylist4
= var6
;
3508 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3509 var_nodearraylist3
= var7
;
3510 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3511 var_nodearraylist2
= var8
;
3512 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3513 var_nodearraylist1
= var9
;
3514 var10
= NEW_array__Array(&type_array__Arraykernel__Object
);
3515 ((void (*)(val
*))(var10
->class->vft
[COLOR_array__Array__init
]))(var10
) /* init on <var10:Array[Object]>*/;
3516 CHECK_NEW_array__Array(var10
);
3517 var_listnode5
= var10
;
3518 var_tbangnode2
= var_nodearraylist1
;
3519 /* <var_tbangnode2:nullable Object> isa nullable TBang */
3520 cltype
= type_nullable_parser_nodes__TBang
.color
;
3521 idtype
= type_nullable_parser_nodes__TBang
.id
;
3522 if(var_tbangnode2
== NULL
) {
3525 if(cltype
>= var_tbangnode2
->type
->table_size
) {
3528 var11
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
3532 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26201);
3535 var_pclosureidnode3
= var_nodearraylist2
;
3536 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
3537 cltype13
= type_nullable_parser_nodes__AClosureId
.color
;
3538 idtype14
= type_nullable_parser_nodes__AClosureId
.id
;
3539 if(var_pclosureidnode3
== NULL
) {
3542 if(cltype13
>= var_pclosureidnode3
->type
->table_size
) {
3545 var12
= var_pclosureidnode3
->type
->type_table
[cltype13
] == idtype14
;
3549 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26203);
3552 var_listnode4
= var_nodearraylist5
;
3553 /* <var_listnode4:nullable Object> isa Array[Object] */
3554 cltype16
= type_array__Arraykernel__Object
.color
;
3555 idtype17
= type_array__Arraykernel__Object
.id
;
3556 if(var_listnode4
== NULL
) {
3559 if(cltype16
>= var_listnode4
->type
->table_size
) {
3562 var15
= var_listnode4
->type
->type_table
[cltype16
] == idtype17
;
3566 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26205);
3569 var18
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction683>*/;
3570 var_listnode5
= var18
;
3571 var_tkwdonode6
= var_nodearraylist8
;
3572 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
3573 cltype20
= type_nullable_parser_nodes__TKwdo
.color
;
3574 idtype21
= type_nullable_parser_nodes__TKwdo
.id
;
3575 if(var_tkwdonode6
== NULL
) {
3578 if(cltype20
>= var_tkwdonode6
->type
->table_size
) {
3581 var19
= var_tkwdonode6
->type
->type_table
[cltype20
] == idtype21
;
3585 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26208);
3588 var22
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
3591 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var22
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var22
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var23
, var24
) /* init_aclosuredef on <var22:AClosureDef>*/;
3592 CHECK_NEW_parser_nodes__AClosureDef(var22
);
3593 var_pclosuredefnode1
= var22
;
3594 var_node_list
= var_pclosuredefnode1
;
3595 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction683> */
3596 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
3597 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
3600 /* method parser#ReduceAction683#action for (self: Object, Parser) */
3601 void VIRTUAL_parser__ReduceAction683__action(val
* self
, val
* p0
) {
3602 parser__ReduceAction683__action(self
, p0
);
3605 /* method parser#ReduceAction684#action for (self: ReduceAction684, Parser) */
3606 void parser__ReduceAction684__action(val
* self
, val
* p0
) {
3607 val
* var_p
/* var p: Parser */;
3608 val
* var
/* : null */;
3609 val
* var_node_list
/* var node_list: nullable Object */;
3610 val
* var1
/* : nullable Object */;
3611 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3612 val
* var2
/* : nullable Object */;
3613 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3614 val
* var3
/* : nullable Object */;
3615 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3616 val
* var4
/* : nullable Object */;
3617 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3618 val
* var5
/* : nullable Object */;
3619 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3620 val
* var6
/* : Array[Object] */;
3621 val
* var_listnode5
/* var listnode5: Array[Object] */;
3622 val
* var_tbangnode2
/* var tbangnode2: nullable Object */;
3623 short int var7
/* : Bool */;
3626 val
* var_pclosureidnode3
/* var pclosureidnode3: nullable Object */;
3627 short int var8
/* : Bool */;
3630 val
* var_listnode4
/* var listnode4: nullable Object */;
3631 short int var11
/* : Bool */;
3634 val
* var14
/* : Array[Object] */;
3635 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
3636 short int var15
/* : Bool */;
3639 val
* var18
/* : AClosureDef */;
3640 val
* var19
/* : null */;
3641 val
* var20
/* : null */;
3642 val
* var_pclosuredefnode1
/* var pclosuredefnode1: nullable AClosureDef */;
3643 long var21
/* : Int */;
3644 long var22
/* : Int */;
3647 var_node_list
= var
;
3648 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3649 var_nodearraylist5
= var1
;
3650 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3651 var_nodearraylist4
= var2
;
3652 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3653 var_nodearraylist3
= var3
;
3654 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3655 var_nodearraylist2
= var4
;
3656 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3657 var_nodearraylist1
= var5
;
3658 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
3659 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
3660 CHECK_NEW_array__Array(var6
);
3661 var_listnode5
= var6
;
3662 var_tbangnode2
= var_nodearraylist1
;
3663 /* <var_tbangnode2:nullable Object> isa nullable TBang */
3664 cltype
= type_nullable_parser_nodes__TBang
.color
;
3665 idtype
= type_nullable_parser_nodes__TBang
.id
;
3666 if(var_tbangnode2
== NULL
) {
3669 if(cltype
>= var_tbangnode2
->type
->table_size
) {
3672 var7
= var_tbangnode2
->type
->type_table
[cltype
] == idtype
;
3676 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26233);
3679 var_pclosureidnode3
= var_nodearraylist2
;
3680 /* <var_pclosureidnode3:nullable Object> isa nullable AClosureId */
3681 cltype9
= type_nullable_parser_nodes__AClosureId
.color
;
3682 idtype10
= type_nullable_parser_nodes__AClosureId
.id
;
3683 if(var_pclosureidnode3
== NULL
) {
3686 if(cltype9
>= var_pclosureidnode3
->type
->table_size
) {
3689 var8
= var_pclosureidnode3
->type
->type_table
[cltype9
] == idtype10
;
3693 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26235);
3696 var_listnode4
= var_nodearraylist3
;
3697 /* <var_listnode4:nullable Object> isa Array[Object] */
3698 cltype12
= type_array__Arraykernel__Object
.color
;
3699 idtype13
= type_array__Arraykernel__Object
.id
;
3700 if(var_listnode4
== NULL
) {
3703 if(cltype12
>= var_listnode4
->type
->table_size
) {
3706 var11
= var_listnode4
->type
->type_table
[cltype12
] == idtype13
;
3710 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26237);
3713 var14
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction684>*/;
3714 var_listnode5
= var14
;
3715 var_tkwdonode6
= var_nodearraylist4
;
3716 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
3717 cltype16
= type_nullable_parser_nodes__TKwdo
.color
;
3718 idtype17
= type_nullable_parser_nodes__TKwdo
.id
;
3719 if(var_tkwdonode6
== NULL
) {
3722 if(cltype16
>= var_tkwdonode6
->type
->table_size
) {
3725 var15
= var_tkwdonode6
->type
->type_table
[cltype16
] == idtype17
;
3729 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26240);
3732 var18
= NEW_parser_nodes__AClosureDef(&type_parser_nodes__AClosureDef
);
3735 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__AClosureDef__init_aclosuredef
]))(var18
, var_tbangnode2
, var_pclosureidnode3
, var_listnode5
, var_tkwdonode6
, var19
, var20
) /* init_aclosuredef on <var18:AClosureDef>*/;
3736 CHECK_NEW_parser_nodes__AClosureDef(var18
);
3737 var_pclosuredefnode1
= var18
;
3738 var_node_list
= var_pclosuredefnode1
;
3739 var21
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction684> */
3740 var22
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var21
) /* go_to on <var_p:Parser>*/;
3741 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var22
, var_node_list
) /* push on <var_p:Parser>*/;
3744 /* method parser#ReduceAction684#action for (self: Object, Parser) */
3745 void VIRTUAL_parser__ReduceAction684__action(val
* self
, val
* p0
) {
3746 parser__ReduceAction684__action(self
, p0
);
3749 /* method parser#ReduceAction685#action for (self: ReduceAction685, Parser) */
3750 void parser__ReduceAction685__action(val
* self
, val
* p0
) {
3751 val
* var_p
/* var p: Parser */;
3752 val
* var
/* : null */;
3753 val
* var_node_list
/* var node_list: nullable Object */;
3754 val
* var1
/* : nullable Object */;
3755 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3756 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3757 short int var2
/* : Bool */;
3760 val
* var3
/* : ASimpleClosureId */;
3761 val
* var_pclosureidnode1
/* var pclosureidnode1: nullable ASimpleClosureId */;
3762 long var4
/* : Int */;
3763 long var5
/* : Int */;
3766 var_node_list
= var
;
3767 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3768 var_nodearraylist1
= var1
;
3769 var_tidnode2
= var_nodearraylist1
;
3770 /* <var_tidnode2:nullable Object> isa nullable TId */
3771 cltype
= type_nullable_parser_nodes__TId
.color
;
3772 idtype
= type_nullable_parser_nodes__TId
.id
;
3773 if(var_tidnode2
== NULL
) {
3776 if(cltype
>= var_tidnode2
->type
->table_size
) {
3779 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3783 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26260);
3786 var3
= NEW_parser_nodes__ASimpleClosureId(&type_parser_nodes__ASimpleClosureId
);
3787 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASimpleClosureId__init_asimpleclosureid
]))(var3
, var_tidnode2
) /* init_asimpleclosureid on <var3:ASimpleClosureId>*/;
3788 CHECK_NEW_parser_nodes__ASimpleClosureId(var3
);
3789 var_pclosureidnode1
= var3
;
3790 var_node_list
= var_pclosureidnode1
;
3791 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction685> */
3792 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3793 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3796 /* method parser#ReduceAction685#action for (self: Object, Parser) */
3797 void VIRTUAL_parser__ReduceAction685__action(val
* self
, val
* p0
) {
3798 parser__ReduceAction685__action(self
, p0
);
3801 /* method parser#ReduceAction686#action for (self: ReduceAction686, Parser) */
3802 void parser__ReduceAction686__action(val
* self
, val
* p0
) {
3803 val
* var_p
/* var p: Parser */;
3804 val
* var
/* : null */;
3805 val
* var_node_list
/* var node_list: nullable Object */;
3806 val
* var1
/* : nullable Object */;
3807 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3808 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
3809 short int var2
/* : Bool */;
3812 val
* var3
/* : ABreakClosureId */;
3813 val
* var_pclosureidnode1
/* var pclosureidnode1: nullable ABreakClosureId */;
3814 long var4
/* : Int */;
3815 long var5
/* : Int */;
3818 var_node_list
= var
;
3819 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3820 var_nodearraylist1
= var1
;
3821 var_tkwbreaknode2
= var_nodearraylist1
;
3822 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
3823 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
3824 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
3825 if(var_tkwbreaknode2
== NULL
) {
3828 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
3831 var2
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
3835 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26275);
3838 var3
= NEW_parser_nodes__ABreakClosureId(&type_parser_nodes__ABreakClosureId
);
3839 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ABreakClosureId__init_abreakclosureid
]))(var3
, var_tkwbreaknode2
) /* init_abreakclosureid on <var3:ABreakClosureId>*/;
3840 CHECK_NEW_parser_nodes__ABreakClosureId(var3
);
3841 var_pclosureidnode1
= var3
;
3842 var_node_list
= var_pclosureidnode1
;
3843 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction686> */
3844 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3845 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3848 /* method parser#ReduceAction686#action for (self: Object, Parser) */
3849 void VIRTUAL_parser__ReduceAction686__action(val
* self
, val
* p0
) {
3850 parser__ReduceAction686__action(self
, p0
);
3853 /* method parser#ReduceAction687#action for (self: ReduceAction687, Parser) */
3854 void parser__ReduceAction687__action(val
* self
, val
* p0
) {
3855 val
* var_p
/* var p: Parser */;
3856 val
* var
/* : null */;
3857 val
* var_node_list
/* var node_list: nullable Object */;
3858 val
* var1
/* : nullable Object */;
3859 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3860 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
3861 short int var2
/* : Bool */;
3864 val
* var3
/* : AContinueExpr */;
3865 val
* var4
/* : null */;
3866 val
* var5
/* : null */;
3867 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
3868 long var6
/* : Int */;
3869 long var7
/* : Int */;
3872 var_node_list
= var
;
3873 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3874 var_nodearraylist1
= var1
;
3875 var_pexprnode4
= var_nodearraylist1
;
3876 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
3877 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3878 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3879 if(var_pexprnode4
== NULL
) {
3882 if(cltype
>= var_pexprnode4
->type
->table_size
) {
3885 var2
= var_pexprnode4
->type
->type_table
[cltype
] == idtype
;
3889 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26290);
3892 var3
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
3895 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var3
, var4
, var5
, var_pexprnode4
) /* init_acontinueexpr on <var3:AContinueExpr>*/;
3896 CHECK_NEW_parser_nodes__AContinueExpr(var3
);
3897 var_pexprnode1
= var3
;
3898 var_node_list
= var_pexprnode1
;
3899 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction687> */
3900 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
3901 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
3904 /* method parser#ReduceAction687#action for (self: Object, Parser) */
3905 void VIRTUAL_parser__ReduceAction687__action(val
* self
, val
* p0
) {
3906 parser__ReduceAction687__action(self
, p0
);
3909 /* method parser#ReduceAction688#action for (self: ReduceAction688, Parser) */
3910 void parser__ReduceAction688__action(val
* self
, val
* p0
) {
3911 val
* var_p
/* var p: Parser */;
3912 val
* var
/* : null */;
3913 val
* var_node_list
/* var node_list: nullable Object */;
3914 val
* var1
/* : nullable Object */;
3915 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3916 val
* var2
/* : nullable Object */;
3917 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3918 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
3919 short int var3
/* : Bool */;
3922 val
* var_tidnode3
/* var tidnode3: nullable Object */;
3923 short int var4
/* : Bool */;
3926 val
* var7
/* : AVardeclExpr */;
3927 val
* var8
/* : null */;
3928 val
* var9
/* : null */;
3929 val
* var10
/* : null */;
3930 val
* var11
/* : null */;
3931 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
3932 long var12
/* : Int */;
3933 long var13
/* : Int */;
3936 var_node_list
= var
;
3937 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3938 var_nodearraylist2
= var1
;
3939 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3940 var_nodearraylist1
= var2
;
3941 var_tkwvarnode2
= var_nodearraylist1
;
3942 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
3943 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
3944 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
3945 if(var_tkwvarnode2
== NULL
) {
3948 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
3951 var3
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
3955 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26308);
3958 var_tidnode3
= var_nodearraylist2
;
3959 /* <var_tidnode3:nullable Object> isa nullable TId */
3960 cltype5
= type_nullable_parser_nodes__TId
.color
;
3961 idtype6
= type_nullable_parser_nodes__TId
.id
;
3962 if(var_tidnode3
== NULL
) {
3965 if(cltype5
>= var_tidnode3
->type
->table_size
) {
3968 var4
= var_tidnode3
->type
->type_table
[cltype5
] == idtype6
;
3972 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26310);
3975 var7
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
3980 ((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>*/;
3981 CHECK_NEW_parser_nodes__AVardeclExpr(var7
);
3982 var_pexprnode1
= var7
;
3983 var_node_list
= var_pexprnode1
;
3984 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction688> */
3985 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
3986 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
3989 /* method parser#ReduceAction688#action for (self: Object, Parser) */
3990 void VIRTUAL_parser__ReduceAction688__action(val
* self
, val
* p0
) {
3991 parser__ReduceAction688__action(self
, p0
);
3994 /* method parser#ReduceAction689#action for (self: ReduceAction689, Parser) */
3995 void parser__ReduceAction689__action(val
* self
, val
* p0
) {
3996 val
* var_p
/* var p: Parser */;
3997 val
* var
/* : null */;
3998 val
* var_node_list
/* var node_list: nullable Object */;
3999 val
* var1
/* : nullable Object */;
4000 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4001 val
* var2
/* : nullable Object */;
4002 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4003 val
* var3
/* : nullable Object */;
4004 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4005 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
4006 short int var4
/* : Bool */;
4009 val
* var_tidnode3
/* var tidnode3: nullable Object */;
4010 short int var5
/* : Bool */;
4013 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
4014 short int var8
/* : Bool */;
4017 val
* var11
/* : AVardeclExpr */;
4018 val
* var12
/* : null */;
4019 val
* var13
/* : null */;
4020 val
* var14
/* : null */;
4021 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
4022 long var15
/* : Int */;
4023 long var16
/* : Int */;
4026 var_node_list
= var
;
4027 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4028 var_nodearraylist3
= var1
;
4029 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4030 var_nodearraylist2
= var2
;
4031 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4032 var_nodearraylist1
= var3
;
4033 var_tkwvarnode2
= var_nodearraylist1
;
4034 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
4035 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
4036 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
4037 if(var_tkwvarnode2
== NULL
) {
4040 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
4043 var4
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
4047 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26332);
4050 var_tidnode3
= var_nodearraylist2
;
4051 /* <var_tidnode3:nullable Object> isa nullable TId */
4052 cltype6
= type_nullable_parser_nodes__TId
.color
;
4053 idtype7
= type_nullable_parser_nodes__TId
.id
;
4054 if(var_tidnode3
== NULL
) {
4057 if(cltype6
>= var_tidnode3
->type
->table_size
) {
4060 var5
= var_tidnode3
->type
->type_table
[cltype6
] == idtype7
;
4064 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26334);
4067 var_pannotationsnode7
= var_nodearraylist3
;
4068 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
4069 cltype9
= type_nullable_parser_nodes__AAnnotations
.color
;
4070 idtype10
= type_nullable_parser_nodes__AAnnotations
.id
;
4071 if(var_pannotationsnode7
== NULL
) {
4074 if(cltype9
>= var_pannotationsnode7
->type
->table_size
) {
4077 var8
= var_pannotationsnode7
->type
->type_table
[cltype9
] == idtype10
;
4081 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26336);
4084 var11
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
4088 ((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>*/;
4089 CHECK_NEW_parser_nodes__AVardeclExpr(var11
);
4090 var_pexprnode1
= var11
;
4091 var_node_list
= var_pexprnode1
;
4092 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction689> */
4093 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
4094 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
4097 /* method parser#ReduceAction689#action for (self: Object, Parser) */
4098 void VIRTUAL_parser__ReduceAction689__action(val
* self
, val
* p0
) {
4099 parser__ReduceAction689__action(self
, p0
);
4102 /* method parser#ReduceAction690#action for (self: ReduceAction690, Parser) */
4103 void parser__ReduceAction690__action(val
* self
, val
* p0
) {
4104 val
* var_p
/* var p: Parser */;
4105 val
* var
/* : null */;
4106 val
* var_node_list
/* var node_list: nullable Object */;
4107 val
* var1
/* : nullable Object */;
4108 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4109 val
* var2
/* : nullable Object */;
4110 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4111 val
* var3
/* : nullable Object */;
4112 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4113 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
4114 short int var4
/* : Bool */;
4117 val
* var_tidnode3
/* var tidnode3: nullable Object */;
4118 short int var5
/* : Bool */;
4121 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
4122 short int var8
/* : Bool */;
4125 val
* var11
/* : AVardeclExpr */;
4126 val
* var12
/* : null */;
4127 val
* var13
/* : null */;
4128 val
* var14
/* : null */;
4129 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
4130 long var15
/* : Int */;
4131 long var16
/* : Int */;
4134 var_node_list
= var
;
4135 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4136 var_nodearraylist3
= var1
;
4137 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4138 var_nodearraylist2
= var2
;
4139 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4140 var_nodearraylist1
= var3
;
4141 var_tkwvarnode2
= var_nodearraylist1
;
4142 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
4143 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
4144 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
4145 if(var_tkwvarnode2
== NULL
) {
4148 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
4151 var4
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
4155 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26358);
4158 var_tidnode3
= var_nodearraylist2
;
4159 /* <var_tidnode3:nullable Object> isa nullable TId */
4160 cltype6
= type_nullable_parser_nodes__TId
.color
;
4161 idtype7
= type_nullable_parser_nodes__TId
.id
;
4162 if(var_tidnode3
== NULL
) {
4165 if(cltype6
>= var_tidnode3
->type
->table_size
) {
4168 var5
= var_tidnode3
->type
->type_table
[cltype6
] == idtype7
;
4172 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26360);
4175 var_ptypenode4
= var_nodearraylist3
;
4176 /* <var_ptypenode4:nullable Object> isa nullable AType */
4177 cltype9
= type_nullable_parser_nodes__AType
.color
;
4178 idtype10
= type_nullable_parser_nodes__AType
.id
;
4179 if(var_ptypenode4
== NULL
) {
4182 if(cltype9
>= var_ptypenode4
->type
->table_size
) {
4185 var8
= var_ptypenode4
->type
->type_table
[cltype9
] == idtype10
;
4189 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26362);
4192 var11
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
4196 ((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>*/;
4197 CHECK_NEW_parser_nodes__AVardeclExpr(var11
);
4198 var_pexprnode1
= var11
;
4199 var_node_list
= var_pexprnode1
;
4200 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction690> */
4201 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
4202 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
4205 /* method parser#ReduceAction690#action for (self: Object, Parser) */
4206 void VIRTUAL_parser__ReduceAction690__action(val
* self
, val
* p0
) {
4207 parser__ReduceAction690__action(self
, p0
);
4210 /* method parser#ReduceAction691#action for (self: ReduceAction691, Parser) */
4211 void parser__ReduceAction691__action(val
* self
, val
* p0
) {
4212 val
* var_p
/* var p: Parser */;
4213 val
* var
/* : null */;
4214 val
* var_node_list
/* var node_list: nullable Object */;
4215 val
* var1
/* : nullable Object */;
4216 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4217 val
* var2
/* : nullable Object */;
4218 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4219 val
* var3
/* : nullable Object */;
4220 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4221 val
* var4
/* : nullable Object */;
4222 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4223 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
4224 short int var5
/* : Bool */;
4227 val
* var_tidnode3
/* var tidnode3: nullable Object */;
4228 short int var6
/* : Bool */;
4231 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
4232 short int var9
/* : Bool */;
4235 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
4236 short int var12
/* : Bool */;
4239 val
* var15
/* : AVardeclExpr */;
4240 val
* var16
/* : null */;
4241 val
* var17
/* : null */;
4242 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
4243 long var18
/* : Int */;
4244 long var19
/* : Int */;
4247 var_node_list
= var
;
4248 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4249 var_nodearraylist4
= var1
;
4250 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4251 var_nodearraylist3
= var2
;
4252 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4253 var_nodearraylist2
= var3
;
4254 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4255 var_nodearraylist1
= var4
;
4256 var_tkwvarnode2
= var_nodearraylist1
;
4257 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
4258 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
4259 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
4260 if(var_tkwvarnode2
== NULL
) {
4263 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
4266 var5
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
4270 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26385);
4273 var_tidnode3
= var_nodearraylist2
;
4274 /* <var_tidnode3:nullable Object> isa nullable TId */
4275 cltype7
= type_nullable_parser_nodes__TId
.color
;
4276 idtype8
= type_nullable_parser_nodes__TId
.id
;
4277 if(var_tidnode3
== NULL
) {
4280 if(cltype7
>= var_tidnode3
->type
->table_size
) {
4283 var6
= var_tidnode3
->type
->type_table
[cltype7
] == idtype8
;
4287 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26387);
4290 var_ptypenode4
= var_nodearraylist4
;
4291 /* <var_ptypenode4:nullable Object> isa nullable AType */
4292 cltype10
= type_nullable_parser_nodes__AType
.color
;
4293 idtype11
= type_nullable_parser_nodes__AType
.id
;
4294 if(var_ptypenode4
== NULL
) {
4297 if(cltype10
>= var_ptypenode4
->type
->table_size
) {
4300 var9
= var_ptypenode4
->type
->type_table
[cltype10
] == idtype11
;
4304 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26389);
4307 var_pannotationsnode7
= var_nodearraylist3
;
4308 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
4309 cltype13
= type_nullable_parser_nodes__AAnnotations
.color
;
4310 idtype14
= type_nullable_parser_nodes__AAnnotations
.id
;
4311 if(var_pannotationsnode7
== NULL
) {
4314 if(cltype13
>= var_pannotationsnode7
->type
->table_size
) {
4317 var12
= var_pannotationsnode7
->type
->type_table
[cltype13
] == idtype14
;
4321 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26391);
4324 var15
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
4327 ((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>*/;
4328 CHECK_NEW_parser_nodes__AVardeclExpr(var15
);
4329 var_pexprnode1
= var15
;
4330 var_node_list
= var_pexprnode1
;
4331 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction691> */
4332 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
4333 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
4336 /* method parser#ReduceAction691#action for (self: Object, Parser) */
4337 void VIRTUAL_parser__ReduceAction691__action(val
* self
, val
* p0
) {
4338 parser__ReduceAction691__action(self
, p0
);
4341 /* method parser#ReduceAction692#action for (self: ReduceAction692, Parser) */
4342 void parser__ReduceAction692__action(val
* self
, val
* p0
) {
4343 val
* var_p
/* var p: Parser */;
4344 val
* var
/* : null */;
4345 val
* var_node_list
/* var node_list: nullable Object */;
4346 val
* var1
/* : nullable Object */;
4347 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4348 val
* var2
/* : nullable Object */;
4349 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4350 val
* var3
/* : nullable Object */;
4351 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4352 val
* var4
/* : nullable Object */;
4353 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4354 val
* var5
/* : nullable Object */;
4355 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4356 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
4357 short int var6
/* : Bool */;
4360 val
* var_tidnode3
/* var tidnode3: nullable Object */;
4361 short int var7
/* : Bool */;
4364 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
4365 short int var10
/* : Bool */;
4368 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4369 short int var13
/* : Bool */;
4372 val
* var16
/* : AVardeclExpr */;
4373 val
* var17
/* : null */;
4374 val
* var18
/* : null */;
4375 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
4376 long var19
/* : Int */;
4377 long var20
/* : Int */;
4380 var_node_list
= var
;
4381 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4382 var_nodearraylist5
= var1
;
4383 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4384 var_nodearraylist4
= var2
;
4385 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4386 var_nodearraylist3
= var3
;
4387 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4388 var_nodearraylist2
= var4
;
4389 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4390 var_nodearraylist1
= var5
;
4391 var_tkwvarnode2
= var_nodearraylist1
;
4392 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
4393 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
4394 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
4395 if(var_tkwvarnode2
== NULL
) {
4398 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
4401 var6
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
4405 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26415);
4408 var_tidnode3
= var_nodearraylist2
;
4409 /* <var_tidnode3:nullable Object> isa nullable TId */
4410 cltype8
= type_nullable_parser_nodes__TId
.color
;
4411 idtype9
= type_nullable_parser_nodes__TId
.id
;
4412 if(var_tidnode3
== NULL
) {
4415 if(cltype8
>= var_tidnode3
->type
->table_size
) {
4418 var7
= var_tidnode3
->type
->type_table
[cltype8
] == idtype9
;
4422 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26417);
4425 var_tassignnode5
= var_nodearraylist3
;
4426 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
4427 cltype11
= type_nullable_parser_nodes__TAssign
.color
;
4428 idtype12
= type_nullable_parser_nodes__TAssign
.id
;
4429 if(var_tassignnode5
== NULL
) {
4432 if(cltype11
>= var_tassignnode5
->type
->table_size
) {
4435 var10
= var_tassignnode5
->type
->type_table
[cltype11
] == idtype12
;
4439 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26419);
4442 var_pexprnode6
= var_nodearraylist5
;
4443 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4444 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
4445 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
4446 if(var_pexprnode6
== NULL
) {
4449 if(cltype14
>= var_pexprnode6
->type
->table_size
) {
4452 var13
= var_pexprnode6
->type
->type_table
[cltype14
] == idtype15
;
4456 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26421);
4459 var16
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
4462 ((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>*/;
4463 CHECK_NEW_parser_nodes__AVardeclExpr(var16
);
4464 var_pexprnode1
= var16
;
4465 var_node_list
= var_pexprnode1
;
4466 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction692> */
4467 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
4468 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
4471 /* method parser#ReduceAction692#action for (self: Object, Parser) */
4472 void VIRTUAL_parser__ReduceAction692__action(val
* self
, val
* p0
) {
4473 parser__ReduceAction692__action(self
, p0
);
4476 /* method parser#ReduceAction693#action for (self: ReduceAction693, Parser) */
4477 void parser__ReduceAction693__action(val
* self
, val
* p0
) {
4478 val
* var_p
/* var p: Parser */;
4479 val
* var
/* : null */;
4480 val
* var_node_list
/* var node_list: nullable Object */;
4481 val
* var1
/* : nullable Object */;
4482 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4483 val
* var2
/* : nullable Object */;
4484 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4485 val
* var3
/* : nullable Object */;
4486 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4487 val
* var4
/* : nullable Object */;
4488 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4489 val
* var5
/* : nullable Object */;
4490 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4491 val
* var6
/* : nullable Object */;
4492 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4493 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
4494 short int var7
/* : Bool */;
4497 val
* var_tidnode3
/* var tidnode3: nullable Object */;
4498 short int var8
/* : Bool */;
4501 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
4502 short int var11
/* : Bool */;
4505 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4506 short int var14
/* : Bool */;
4509 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
4510 short int var17
/* : Bool */;
4513 val
* var20
/* : AVardeclExpr */;
4514 val
* var21
/* : null */;
4515 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
4516 long var22
/* : Int */;
4517 long var23
/* : Int */;
4520 var_node_list
= var
;
4521 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4522 var_nodearraylist6
= var1
;
4523 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4524 var_nodearraylist5
= var2
;
4525 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4526 var_nodearraylist4
= var3
;
4527 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4528 var_nodearraylist3
= var4
;
4529 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4530 var_nodearraylist2
= var5
;
4531 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4532 var_nodearraylist1
= var6
;
4533 var_tkwvarnode2
= var_nodearraylist1
;
4534 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
4535 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
4536 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
4537 if(var_tkwvarnode2
== NULL
) {
4540 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
4543 var7
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
4547 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26446);
4550 var_tidnode3
= var_nodearraylist2
;
4551 /* <var_tidnode3:nullable Object> isa nullable TId */
4552 cltype9
= type_nullable_parser_nodes__TId
.color
;
4553 idtype10
= type_nullable_parser_nodes__TId
.id
;
4554 if(var_tidnode3
== NULL
) {
4557 if(cltype9
>= var_tidnode3
->type
->table_size
) {
4560 var8
= var_tidnode3
->type
->type_table
[cltype9
] == idtype10
;
4564 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26448);
4567 var_tassignnode5
= var_nodearraylist4
;
4568 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
4569 cltype12
= type_nullable_parser_nodes__TAssign
.color
;
4570 idtype13
= type_nullable_parser_nodes__TAssign
.id
;
4571 if(var_tassignnode5
== NULL
) {
4574 if(cltype12
>= var_tassignnode5
->type
->table_size
) {
4577 var11
= var_tassignnode5
->type
->type_table
[cltype12
] == idtype13
;
4581 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26450);
4584 var_pexprnode6
= var_nodearraylist6
;
4585 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4586 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
4587 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
4588 if(var_pexprnode6
== NULL
) {
4591 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
4594 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
4598 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26452);
4601 var_pannotationsnode7
= var_nodearraylist3
;
4602 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
4603 cltype18
= type_nullable_parser_nodes__AAnnotations
.color
;
4604 idtype19
= type_nullable_parser_nodes__AAnnotations
.id
;
4605 if(var_pannotationsnode7
== NULL
) {
4608 if(cltype18
>= var_pannotationsnode7
->type
->table_size
) {
4611 var17
= var_pannotationsnode7
->type
->type_table
[cltype18
] == idtype19
;
4615 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26454);
4618 var20
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
4620 ((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>*/;
4621 CHECK_NEW_parser_nodes__AVardeclExpr(var20
);
4622 var_pexprnode1
= var20
;
4623 var_node_list
= var_pexprnode1
;
4624 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction693> */
4625 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
4626 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
4629 /* method parser#ReduceAction693#action for (self: Object, Parser) */
4630 void VIRTUAL_parser__ReduceAction693__action(val
* self
, val
* p0
) {
4631 parser__ReduceAction693__action(self
, p0
);
4634 /* method parser#ReduceAction694#action for (self: ReduceAction694, Parser) */
4635 void parser__ReduceAction694__action(val
* self
, val
* p0
) {
4636 val
* var_p
/* var p: Parser */;
4637 val
* var
/* : null */;
4638 val
* var_node_list
/* var node_list: nullable Object */;
4639 val
* var1
/* : nullable Object */;
4640 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4641 val
* var2
/* : nullable Object */;
4642 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4643 val
* var3
/* : nullable Object */;
4644 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4645 val
* var4
/* : nullable Object */;
4646 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4647 val
* var5
/* : nullable Object */;
4648 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4649 val
* var6
/* : nullable Object */;
4650 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4651 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
4652 short int var7
/* : Bool */;
4655 val
* var_tidnode3
/* var tidnode3: nullable Object */;
4656 short int var8
/* : Bool */;
4659 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
4660 short int var11
/* : Bool */;
4663 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
4664 short int var14
/* : Bool */;
4667 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4668 short int var17
/* : Bool */;
4671 val
* var20
/* : AVardeclExpr */;
4672 val
* var21
/* : null */;
4673 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
4674 long var22
/* : Int */;
4675 long var23
/* : Int */;
4678 var_node_list
= var
;
4679 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4680 var_nodearraylist6
= var1
;
4681 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4682 var_nodearraylist5
= var2
;
4683 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4684 var_nodearraylist4
= var3
;
4685 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4686 var_nodearraylist3
= var4
;
4687 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4688 var_nodearraylist2
= var5
;
4689 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4690 var_nodearraylist1
= var6
;
4691 var_tkwvarnode2
= var_nodearraylist1
;
4692 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
4693 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
4694 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
4695 if(var_tkwvarnode2
== NULL
) {
4698 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
4701 var7
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
4705 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26479);
4708 var_tidnode3
= var_nodearraylist2
;
4709 /* <var_tidnode3:nullable Object> isa nullable TId */
4710 cltype9
= type_nullable_parser_nodes__TId
.color
;
4711 idtype10
= type_nullable_parser_nodes__TId
.id
;
4712 if(var_tidnode3
== NULL
) {
4715 if(cltype9
>= var_tidnode3
->type
->table_size
) {
4718 var8
= var_tidnode3
->type
->type_table
[cltype9
] == idtype10
;
4722 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26481);
4725 var_ptypenode4
= var_nodearraylist3
;
4726 /* <var_ptypenode4:nullable Object> isa nullable AType */
4727 cltype12
= type_nullable_parser_nodes__AType
.color
;
4728 idtype13
= type_nullable_parser_nodes__AType
.id
;
4729 if(var_ptypenode4
== NULL
) {
4732 if(cltype12
>= var_ptypenode4
->type
->table_size
) {
4735 var11
= var_ptypenode4
->type
->type_table
[cltype12
] == idtype13
;
4739 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26483);
4742 var_tassignnode5
= var_nodearraylist4
;
4743 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
4744 cltype15
= type_nullable_parser_nodes__TAssign
.color
;
4745 idtype16
= type_nullable_parser_nodes__TAssign
.id
;
4746 if(var_tassignnode5
== NULL
) {
4749 if(cltype15
>= var_tassignnode5
->type
->table_size
) {
4752 var14
= var_tassignnode5
->type
->type_table
[cltype15
] == idtype16
;
4756 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26485);
4759 var_pexprnode6
= var_nodearraylist6
;
4760 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4761 cltype18
= type_nullable_parser_nodes__AExpr
.color
;
4762 idtype19
= type_nullable_parser_nodes__AExpr
.id
;
4763 if(var_pexprnode6
== NULL
) {
4766 if(cltype18
>= var_pexprnode6
->type
->table_size
) {
4769 var17
= var_pexprnode6
->type
->type_table
[cltype18
] == idtype19
;
4773 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26487);
4776 var20
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
4778 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var20
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var20
, var_tkwvarnode2
, var_tidnode3
, var_ptypenode4
, var_tassignnode5
, var_pexprnode6
, var21
) /* init_avardeclexpr on <var20:AVardeclExpr>*/;
4779 CHECK_NEW_parser_nodes__AVardeclExpr(var20
);
4780 var_pexprnode1
= var20
;
4781 var_node_list
= var_pexprnode1
;
4782 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction694> */
4783 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
4784 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
4787 /* method parser#ReduceAction694#action for (self: Object, Parser) */
4788 void VIRTUAL_parser__ReduceAction694__action(val
* self
, val
* p0
) {
4789 parser__ReduceAction694__action(self
, p0
);
4792 /* method parser#ReduceAction695#action for (self: ReduceAction695, Parser) */
4793 void parser__ReduceAction695__action(val
* self
, val
* p0
) {
4794 val
* var_p
/* var p: Parser */;
4795 val
* var
/* : null */;
4796 val
* var_node_list
/* var node_list: nullable Object */;
4797 val
* var1
/* : nullable Object */;
4798 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4799 val
* var2
/* : nullable Object */;
4800 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4801 val
* var3
/* : nullable Object */;
4802 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4803 val
* var4
/* : nullable Object */;
4804 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4805 val
* var5
/* : nullable Object */;
4806 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4807 val
* var6
/* : nullable Object */;
4808 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4809 val
* var7
/* : nullable Object */;
4810 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4811 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
4812 short int var8
/* : Bool */;
4815 val
* var_tidnode3
/* var tidnode3: nullable Object */;
4816 short int var9
/* : Bool */;
4819 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
4820 short int var12
/* : Bool */;
4823 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
4824 short int var15
/* : Bool */;
4827 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
4828 short int var18
/* : Bool */;
4831 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
4832 short int var21
/* : Bool */;
4835 val
* var24
/* : AVardeclExpr */;
4836 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
4837 long var25
/* : Int */;
4838 long var26
/* : Int */;
4841 var_node_list
= var
;
4842 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4843 var_nodearraylist7
= var1
;
4844 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4845 var_nodearraylist6
= var2
;
4846 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4847 var_nodearraylist5
= var3
;
4848 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4849 var_nodearraylist4
= var4
;
4850 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4851 var_nodearraylist3
= var5
;
4852 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4853 var_nodearraylist2
= var6
;
4854 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4855 var_nodearraylist1
= var7
;
4856 var_tkwvarnode2
= var_nodearraylist1
;
4857 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
4858 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
4859 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
4860 if(var_tkwvarnode2
== NULL
) {
4863 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
4866 var8
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
4870 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26513);
4873 var_tidnode3
= var_nodearraylist2
;
4874 /* <var_tidnode3:nullable Object> isa nullable TId */
4875 cltype10
= type_nullable_parser_nodes__TId
.color
;
4876 idtype11
= type_nullable_parser_nodes__TId
.id
;
4877 if(var_tidnode3
== NULL
) {
4880 if(cltype10
>= var_tidnode3
->type
->table_size
) {
4883 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
4887 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26515);
4890 var_ptypenode4
= var_nodearraylist4
;
4891 /* <var_ptypenode4:nullable Object> isa nullable AType */
4892 cltype13
= type_nullable_parser_nodes__AType
.color
;
4893 idtype14
= type_nullable_parser_nodes__AType
.id
;
4894 if(var_ptypenode4
== NULL
) {
4897 if(cltype13
>= var_ptypenode4
->type
->table_size
) {
4900 var12
= var_ptypenode4
->type
->type_table
[cltype13
] == idtype14
;
4904 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26517);
4907 var_tassignnode5
= var_nodearraylist5
;
4908 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
4909 cltype16
= type_nullable_parser_nodes__TAssign
.color
;
4910 idtype17
= type_nullable_parser_nodes__TAssign
.id
;
4911 if(var_tassignnode5
== NULL
) {
4914 if(cltype16
>= var_tassignnode5
->type
->table_size
) {
4917 var15
= var_tassignnode5
->type
->type_table
[cltype16
] == idtype17
;
4921 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26519);
4924 var_pexprnode6
= var_nodearraylist7
;
4925 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
4926 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
4927 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
4928 if(var_pexprnode6
== NULL
) {
4931 if(cltype19
>= var_pexprnode6
->type
->table_size
) {
4934 var18
= var_pexprnode6
->type
->type_table
[cltype19
] == idtype20
;
4938 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26521);
4941 var_pannotationsnode7
= var_nodearraylist3
;
4942 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
4943 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
4944 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
4945 if(var_pannotationsnode7
== NULL
) {
4948 if(cltype22
>= var_pannotationsnode7
->type
->table_size
) {
4951 var21
= var_pannotationsnode7
->type
->type_table
[cltype22
] == idtype23
;
4955 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26523);
4958 var24
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
4959 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var24
->class->vft
[COLOR_parser_prod__AVardeclExpr__init_avardeclexpr
]))(var24
, var_tkwvarnode2
, var_tidnode3
, var_ptypenode4
, var_tassignnode5
, var_pexprnode6
, var_pannotationsnode7
) /* init_avardeclexpr on <var24:AVardeclExpr>*/;
4960 CHECK_NEW_parser_nodes__AVardeclExpr(var24
);
4961 var_pexprnode1
= var24
;
4962 var_node_list
= var_pexprnode1
;
4963 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction695> */
4964 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
4965 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
4968 /* method parser#ReduceAction695#action for (self: Object, Parser) */
4969 void VIRTUAL_parser__ReduceAction695__action(val
* self
, val
* p0
) {
4970 parser__ReduceAction695__action(self
, p0
);
4973 /* method parser#ReduceAction696#action for (self: ReduceAction696, Parser) */
4974 void parser__ReduceAction696__action(val
* self
, val
* p0
) {
4975 val
* var_p
/* var p: Parser */;
4976 val
* var
/* : null */;
4977 val
* var_node_list
/* var node_list: nullable Object */;
4978 val
* var1
/* : nullable Object */;
4979 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4980 val
* var2
/* : nullable Object */;
4981 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4982 val
* var3
/* : nullable Object */;
4983 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4984 val
* var4
/* : nullable Object */;
4985 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4986 val
* var5
/* : nullable Object */;
4987 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4988 val
* var6
/* : nullable Object */;
4989 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4990 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
4991 short int var7
/* : Bool */;
4994 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
4995 short int var8
/* : Bool */;
4998 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
4999 short int var11
/* : Bool */;
5002 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5003 short int var14
/* : Bool */;
5006 val
* var17
/* : AAttrAssignExpr */;
5007 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
5008 long var18
/* : Int */;
5009 long var19
/* : Int */;
5012 var_node_list
= var
;
5013 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5014 var_nodearraylist6
= var1
;
5015 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5016 var_nodearraylist5
= var2
;
5017 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5018 var_nodearraylist4
= var3
;
5019 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5020 var_nodearraylist3
= var4
;
5021 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5022 var_nodearraylist2
= var5
;
5023 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5024 var_nodearraylist1
= var6
;
5025 var_pexprnode2
= var_nodearraylist1
;
5026 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
5027 cltype
= type_nullable_parser_nodes__AExpr
.color
;
5028 idtype
= type_nullable_parser_nodes__AExpr
.id
;
5029 if(var_pexprnode2
== NULL
) {
5032 if(cltype
>= var_pexprnode2
->type
->table_size
) {
5035 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
5039 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26548);
5042 var_tattridnode3
= var_nodearraylist4
;
5043 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
5044 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
5045 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
5046 if(var_tattridnode3
== NULL
) {
5049 if(cltype9
>= var_tattridnode3
->type
->table_size
) {
5052 var8
= var_tattridnode3
->type
->type_table
[cltype9
] == idtype10
;
5056 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26550);
5059 var_tassignnode4
= var_nodearraylist5
;
5060 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
5061 cltype12
= type_nullable_parser_nodes__TAssign
.color
;
5062 idtype13
= type_nullable_parser_nodes__TAssign
.id
;
5063 if(var_tassignnode4
== NULL
) {
5066 if(cltype12
>= var_tassignnode4
->type
->table_size
) {
5069 var11
= var_tassignnode4
->type
->type_table
[cltype12
] == idtype13
;
5073 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26552);
5076 var_pexprnode5
= var_nodearraylist6
;
5077 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5078 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
5079 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
5080 if(var_pexprnode5
== NULL
) {
5083 if(cltype15
>= var_pexprnode5
->type
->table_size
) {
5086 var14
= var_pexprnode5
->type
->type_table
[cltype15
] == idtype16
;
5090 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26554);
5093 var17
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
5094 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AAttrAssignExpr__init_aattrassignexpr
]))(var17
, var_pexprnode2
, var_tattridnode3
, var_tassignnode4
, var_pexprnode5
) /* init_aattrassignexpr on <var17:AAttrAssignExpr>*/;
5095 CHECK_NEW_parser_nodes__AAttrAssignExpr(var17
);
5096 var_pexprnode1
= var17
;
5097 var_node_list
= var_pexprnode1
;
5098 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction696> */
5099 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
5100 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
5103 /* method parser#ReduceAction696#action for (self: Object, Parser) */
5104 void VIRTUAL_parser__ReduceAction696__action(val
* self
, val
* p0
) {
5105 parser__ReduceAction696__action(self
, p0
);
5108 /* method parser#ReduceAction697#action for (self: ReduceAction697, Parser) */
5109 void parser__ReduceAction697__action(val
* self
, val
* p0
) {
5110 val
* var_p
/* var p: Parser */;
5111 val
* var
/* : null */;
5112 val
* var_node_list
/* var node_list: nullable Object */;
5113 val
* var1
/* : nullable Object */;
5114 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5115 val
* var2
/* : nullable Object */;
5116 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5117 val
* var3
/* : nullable Object */;
5118 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5119 val
* var4
/* : AImplicitSelfExpr */;
5120 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
5121 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
5122 short int var5
/* : Bool */;
5125 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
5126 short int var6
/* : Bool */;
5129 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5130 short int var9
/* : Bool */;
5133 val
* var12
/* : AAttrAssignExpr */;
5134 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
5135 long var13
/* : Int */;
5136 long var14
/* : Int */;
5139 var_node_list
= var
;
5140 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5141 var_nodearraylist3
= var1
;
5142 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5143 var_nodearraylist2
= var2
;
5144 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5145 var_nodearraylist1
= var3
;
5146 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
5147 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
5148 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
5149 var_pexprnode2
= var4
;
5150 var_tattridnode3
= var_nodearraylist1
;
5151 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
5152 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
5153 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
5154 if(var_tattridnode3
== NULL
) {
5157 if(cltype
>= var_tattridnode3
->type
->table_size
) {
5160 var5
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
5164 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26575);
5167 var_tassignnode4
= var_nodearraylist2
;
5168 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
5169 cltype7
= type_nullable_parser_nodes__TAssign
.color
;
5170 idtype8
= type_nullable_parser_nodes__TAssign
.id
;
5171 if(var_tassignnode4
== NULL
) {
5174 if(cltype7
>= var_tassignnode4
->type
->table_size
) {
5177 var6
= var_tassignnode4
->type
->type_table
[cltype7
] == idtype8
;
5181 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26577);
5184 var_pexprnode5
= var_nodearraylist3
;
5185 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5186 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
5187 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
5188 if(var_pexprnode5
== NULL
) {
5191 if(cltype10
>= var_pexprnode5
->type
->table_size
) {
5194 var9
= var_pexprnode5
->type
->type_table
[cltype10
] == idtype11
;
5198 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26579);
5201 var12
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
5202 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AAttrAssignExpr__init_aattrassignexpr
]))(var12
, var_pexprnode2
, var_tattridnode3
, var_tassignnode4
, var_pexprnode5
) /* init_aattrassignexpr on <var12:AAttrAssignExpr>*/;
5203 CHECK_NEW_parser_nodes__AAttrAssignExpr(var12
);
5204 var_pexprnode1
= var12
;
5205 var_node_list
= var_pexprnode1
;
5206 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction697> */
5207 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
5208 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
5211 /* method parser#ReduceAction697#action for (self: Object, Parser) */
5212 void VIRTUAL_parser__ReduceAction697__action(val
* self
, val
* p0
) {
5213 parser__ReduceAction697__action(self
, p0
);
5216 /* method parser#ReduceAction698#action for (self: ReduceAction698, Parser) */
5217 void parser__ReduceAction698__action(val
* self
, val
* p0
) {
5218 val
* var_p
/* var p: Parser */;
5219 val
* var
/* : null */;
5220 val
* var_node_list
/* var node_list: nullable Object */;
5221 val
* var1
/* : nullable Object */;
5222 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5223 val
* var2
/* : nullable Object */;
5224 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5225 val
* var3
/* : nullable Object */;
5226 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5227 val
* var4
/* : nullable Object */;
5228 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5229 val
* var5
/* : nullable Object */;
5230 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5231 val
* var6
/* : nullable Object */;
5232 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5233 val
* var7
/* : nullable Object */;
5234 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5235 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
5236 short int var8
/* : Bool */;
5239 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
5240 short int var9
/* : Bool */;
5243 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
5244 short int var12
/* : Bool */;
5247 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5248 short int var15
/* : Bool */;
5251 val
* var18
/* : AAttrAssignExpr */;
5252 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
5253 long var19
/* : Int */;
5254 long var20
/* : Int */;
5257 var_node_list
= var
;
5258 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5259 var_nodearraylist7
= var1
;
5260 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5261 var_nodearraylist6
= var2
;
5262 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5263 var_nodearraylist5
= var3
;
5264 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5265 var_nodearraylist4
= var4
;
5266 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5267 var_nodearraylist3
= var5
;
5268 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5269 var_nodearraylist2
= var6
;
5270 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5271 var_nodearraylist1
= var7
;
5272 var_pexprnode2
= var_nodearraylist1
;
5273 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
5274 cltype
= type_nullable_parser_nodes__AExpr
.color
;
5275 idtype
= type_nullable_parser_nodes__AExpr
.id
;
5276 if(var_pexprnode2
== NULL
) {
5279 if(cltype
>= var_pexprnode2
->type
->table_size
) {
5282 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
5286 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26603);
5289 var_tattridnode3
= var_nodearraylist5
;
5290 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
5291 cltype10
= type_nullable_parser_nodes__TAttrid
.color
;
5292 idtype11
= type_nullable_parser_nodes__TAttrid
.id
;
5293 if(var_tattridnode3
== NULL
) {
5296 if(cltype10
>= var_tattridnode3
->type
->table_size
) {
5299 var9
= var_tattridnode3
->type
->type_table
[cltype10
] == idtype11
;
5303 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26605);
5306 var_tassignnode4
= var_nodearraylist6
;
5307 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
5308 cltype13
= type_nullable_parser_nodes__TAssign
.color
;
5309 idtype14
= type_nullable_parser_nodes__TAssign
.id
;
5310 if(var_tassignnode4
== NULL
) {
5313 if(cltype13
>= var_tassignnode4
->type
->table_size
) {
5316 var12
= var_tassignnode4
->type
->type_table
[cltype13
] == idtype14
;
5320 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26607);
5323 var_pexprnode5
= var_nodearraylist7
;
5324 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5325 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
5326 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
5327 if(var_pexprnode5
== NULL
) {
5330 if(cltype16
>= var_pexprnode5
->type
->table_size
) {
5333 var15
= var_pexprnode5
->type
->type_table
[cltype16
] == idtype17
;
5337 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26609);
5340 var18
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
5341 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__AAttrAssignExpr__init_aattrassignexpr
]))(var18
, var_pexprnode2
, var_tattridnode3
, var_tassignnode4
, var_pexprnode5
) /* init_aattrassignexpr on <var18:AAttrAssignExpr>*/;
5342 CHECK_NEW_parser_nodes__AAttrAssignExpr(var18
);
5343 var_pexprnode1
= var18
;
5344 var_node_list
= var_pexprnode1
;
5345 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction698> */
5346 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
5347 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
5350 /* method parser#ReduceAction698#action for (self: Object, Parser) */
5351 void VIRTUAL_parser__ReduceAction698__action(val
* self
, val
* p0
) {
5352 parser__ReduceAction698__action(self
, p0
);
5355 /* method parser#ReduceAction699#action for (self: ReduceAction699, Parser) */
5356 void parser__ReduceAction699__action(val
* self
, val
* p0
) {
5357 val
* var_p
/* var p: Parser */;
5358 val
* var
/* : null */;
5359 val
* var_node_list
/* var node_list: nullable Object */;
5360 val
* var1
/* : nullable Object */;
5361 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5362 val
* var2
/* : nullable Object */;
5363 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5364 val
* var3
/* : nullable Object */;
5365 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5366 val
* var4
/* : nullable Object */;
5367 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5368 val
* var5
/* : nullable Object */;
5369 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5370 val
* var6
/* : nullable Object */;
5371 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5372 val
* var7
/* : nullable Object */;
5373 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5374 val
* var8
/* : nullable Object */;
5375 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5376 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
5377 short int var9
/* : Bool */;
5380 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
5381 short int var10
/* : Bool */;
5384 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
5385 short int var13
/* : Bool */;
5388 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5389 short int var16
/* : Bool */;
5392 val
* var19
/* : AAttrAssignExpr */;
5393 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
5394 long var20
/* : Int */;
5395 long var21
/* : Int */;
5398 var_node_list
= var
;
5399 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5400 var_nodearraylist8
= var1
;
5401 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5402 var_nodearraylist7
= var2
;
5403 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5404 var_nodearraylist6
= var3
;
5405 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5406 var_nodearraylist5
= var4
;
5407 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5408 var_nodearraylist4
= var5
;
5409 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5410 var_nodearraylist3
= var6
;
5411 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5412 var_nodearraylist2
= var7
;
5413 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5414 var_nodearraylist1
= var8
;
5415 var_pexprnode2
= var_nodearraylist1
;
5416 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
5417 cltype
= type_nullable_parser_nodes__AExpr
.color
;
5418 idtype
= type_nullable_parser_nodes__AExpr
.id
;
5419 if(var_pexprnode2
== NULL
) {
5422 if(cltype
>= var_pexprnode2
->type
->table_size
) {
5425 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
5429 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26634);
5432 var_tattridnode3
= var_nodearraylist6
;
5433 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
5434 cltype11
= type_nullable_parser_nodes__TAttrid
.color
;
5435 idtype12
= type_nullable_parser_nodes__TAttrid
.id
;
5436 if(var_tattridnode3
== NULL
) {
5439 if(cltype11
>= var_tattridnode3
->type
->table_size
) {
5442 var10
= var_tattridnode3
->type
->type_table
[cltype11
] == idtype12
;
5446 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26636);
5449 var_tassignnode4
= var_nodearraylist7
;
5450 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
5451 cltype14
= type_nullable_parser_nodes__TAssign
.color
;
5452 idtype15
= type_nullable_parser_nodes__TAssign
.id
;
5453 if(var_tassignnode4
== NULL
) {
5456 if(cltype14
>= var_tassignnode4
->type
->table_size
) {
5459 var13
= var_tassignnode4
->type
->type_table
[cltype14
] == idtype15
;
5463 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26638);
5466 var_pexprnode5
= var_nodearraylist8
;
5467 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5468 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
5469 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
5470 if(var_pexprnode5
== NULL
) {
5473 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
5476 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
5480 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26640);
5483 var19
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
5484 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__AAttrAssignExpr__init_aattrassignexpr
]))(var19
, var_pexprnode2
, var_tattridnode3
, var_tassignnode4
, var_pexprnode5
) /* init_aattrassignexpr on <var19:AAttrAssignExpr>*/;
5485 CHECK_NEW_parser_nodes__AAttrAssignExpr(var19
);
5486 var_pexprnode1
= var19
;
5487 var_node_list
= var_pexprnode1
;
5488 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction699> */
5489 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
5490 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
5493 /* method parser#ReduceAction699#action for (self: Object, Parser) */
5494 void VIRTUAL_parser__ReduceAction699__action(val
* self
, val
* p0
) {
5495 parser__ReduceAction699__action(self
, p0
);
5498 /* method parser#ReduceAction701#action for (self: ReduceAction701, Parser) */
5499 void parser__ReduceAction701__action(val
* self
, val
* p0
) {
5500 val
* var_p
/* var p: Parser */;
5501 val
* var
/* : null */;
5502 val
* var_node_list
/* var node_list: nullable Object */;
5503 val
* var1
/* : nullable Object */;
5504 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5505 val
* var2
/* : nullable Object */;
5506 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5507 val
* var3
/* : nullable Object */;
5508 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5509 val
* var4
/* : nullable Object */;
5510 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5511 val
* var5
/* : AImplicitSelfExpr */;
5512 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
5513 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
5514 short int var6
/* : Bool */;
5517 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
5518 short int var7
/* : Bool */;
5521 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5522 short int var10
/* : Bool */;
5525 val
* var13
/* : AAttrAssignExpr */;
5526 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
5527 long var14
/* : Int */;
5528 long var15
/* : Int */;
5531 var_node_list
= var
;
5532 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5533 var_nodearraylist4
= var1
;
5534 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5535 var_nodearraylist3
= var2
;
5536 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5537 var_nodearraylist2
= var3
;
5538 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5539 var_nodearraylist1
= var4
;
5540 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
5541 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
5542 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
5543 var_pexprnode2
= var5
;
5544 var_tattridnode3
= var_nodearraylist2
;
5545 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
5546 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
5547 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
5548 if(var_tattridnode3
== NULL
) {
5551 if(cltype
>= var_tattridnode3
->type
->table_size
) {
5554 var6
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
5558 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26662);
5561 var_tassignnode4
= var_nodearraylist3
;
5562 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
5563 cltype8
= type_nullable_parser_nodes__TAssign
.color
;
5564 idtype9
= type_nullable_parser_nodes__TAssign
.id
;
5565 if(var_tassignnode4
== NULL
) {
5568 if(cltype8
>= var_tassignnode4
->type
->table_size
) {
5571 var7
= var_tassignnode4
->type
->type_table
[cltype8
] == idtype9
;
5575 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26664);
5578 var_pexprnode5
= var_nodearraylist4
;
5579 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5580 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
5581 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
5582 if(var_pexprnode5
== NULL
) {
5585 if(cltype11
>= var_pexprnode5
->type
->table_size
) {
5588 var10
= var_pexprnode5
->type
->type_table
[cltype11
] == idtype12
;
5592 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26666);
5595 var13
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
5596 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AAttrAssignExpr__init_aattrassignexpr
]))(var13
, var_pexprnode2
, var_tattridnode3
, var_tassignnode4
, var_pexprnode5
) /* init_aattrassignexpr on <var13:AAttrAssignExpr>*/;
5597 CHECK_NEW_parser_nodes__AAttrAssignExpr(var13
);
5598 var_pexprnode1
= var13
;
5599 var_node_list
= var_pexprnode1
;
5600 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction701> */
5601 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
5602 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
5605 /* method parser#ReduceAction701#action for (self: Object, Parser) */
5606 void VIRTUAL_parser__ReduceAction701__action(val
* self
, val
* p0
) {
5607 parser__ReduceAction701__action(self
, p0
);
5610 /* method parser#ReduceAction702#action for (self: ReduceAction702, Parser) */
5611 void parser__ReduceAction702__action(val
* self
, val
* p0
) {
5612 val
* var_p
/* var p: Parser */;
5613 val
* var
/* : null */;
5614 val
* var_node_list
/* var node_list: nullable Object */;
5615 val
* var1
/* : nullable Object */;
5616 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5617 val
* var2
/* : nullable Object */;
5618 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5619 val
* var3
/* : nullable Object */;
5620 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5621 val
* var4
/* : nullable Object */;
5622 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5623 val
* var5
/* : nullable Object */;
5624 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5625 val
* var6
/* : AImplicitSelfExpr */;
5626 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
5627 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
5628 short int var7
/* : Bool */;
5631 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
5632 short int var8
/* : Bool */;
5635 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5636 short int var11
/* : Bool */;
5639 val
* var14
/* : AAttrAssignExpr */;
5640 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
5641 long var15
/* : Int */;
5642 long var16
/* : Int */;
5645 var_node_list
= var
;
5646 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5647 var_nodearraylist5
= var1
;
5648 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5649 var_nodearraylist4
= var2
;
5650 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5651 var_nodearraylist3
= var3
;
5652 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5653 var_nodearraylist2
= var4
;
5654 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5655 var_nodearraylist1
= var5
;
5656 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
5657 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
5658 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
5659 var_pexprnode2
= var6
;
5660 var_tattridnode3
= var_nodearraylist3
;
5661 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
5662 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
5663 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
5664 if(var_tattridnode3
== NULL
) {
5667 if(cltype
>= var_tattridnode3
->type
->table_size
) {
5670 var7
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
5674 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26689);
5677 var_tassignnode4
= var_nodearraylist4
;
5678 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
5679 cltype9
= type_nullable_parser_nodes__TAssign
.color
;
5680 idtype10
= type_nullable_parser_nodes__TAssign
.id
;
5681 if(var_tassignnode4
== NULL
) {
5684 if(cltype9
>= var_tassignnode4
->type
->table_size
) {
5687 var8
= var_tassignnode4
->type
->type_table
[cltype9
] == idtype10
;
5691 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26691);
5694 var_pexprnode5
= var_nodearraylist5
;
5695 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5696 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
5697 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
5698 if(var_pexprnode5
== NULL
) {
5701 if(cltype12
>= var_pexprnode5
->type
->table_size
) {
5704 var11
= var_pexprnode5
->type
->type_table
[cltype12
] == idtype13
;
5708 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26693);
5711 var14
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
5712 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AAttrAssignExpr__init_aattrassignexpr
]))(var14
, var_pexprnode2
, var_tattridnode3
, var_tassignnode4
, var_pexprnode5
) /* init_aattrassignexpr on <var14:AAttrAssignExpr>*/;
5713 CHECK_NEW_parser_nodes__AAttrAssignExpr(var14
);
5714 var_pexprnode1
= var14
;
5715 var_node_list
= var_pexprnode1
;
5716 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction702> */
5717 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
5718 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
5721 /* method parser#ReduceAction702#action for (self: Object, Parser) */
5722 void VIRTUAL_parser__ReduceAction702__action(val
* self
, val
* p0
) {
5723 parser__ReduceAction702__action(self
, p0
);
5726 /* method parser#ReduceAction704#action for (self: ReduceAction704, Parser) */
5727 void parser__ReduceAction704__action(val
* self
, val
* p0
) {
5728 val
* var_p
/* var p: Parser */;
5729 val
* var
/* : null */;
5730 val
* var_node_list
/* var node_list: nullable Object */;
5731 val
* var1
/* : nullable Object */;
5732 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5733 val
* var2
/* : nullable Object */;
5734 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5735 val
* var3
/* : nullable Object */;
5736 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5737 val
* var4
/* : nullable Object */;
5738 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5739 val
* var5
/* : nullable Object */;
5740 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5741 val
* var6
/* : nullable Object */;
5742 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5743 val
* var7
/* : nullable Object */;
5744 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5745 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
5746 short int var8
/* : Bool */;
5749 val
* var_tidnode3
/* var tidnode3: nullable Object */;
5750 short int var9
/* : Bool */;
5753 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
5754 short int var12
/* : Bool */;
5757 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
5758 short int var15
/* : Bool */;
5761 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
5762 short int var18
/* : Bool */;
5765 val
* var21
/* : ACallAssignExpr */;
5766 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
5767 long var22
/* : Int */;
5768 long var23
/* : Int */;
5771 var_node_list
= var
;
5772 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5773 var_nodearraylist7
= var1
;
5774 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5775 var_nodearraylist6
= var2
;
5776 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5777 var_nodearraylist5
= var3
;
5778 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5779 var_nodearraylist4
= var4
;
5780 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5781 var_nodearraylist3
= var5
;
5782 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5783 var_nodearraylist2
= var6
;
5784 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5785 var_nodearraylist1
= var7
;
5786 var_pexprnode2
= var_nodearraylist1
;
5787 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
5788 cltype
= type_nullable_parser_nodes__AExpr
.color
;
5789 idtype
= type_nullable_parser_nodes__AExpr
.id
;
5790 if(var_pexprnode2
== NULL
) {
5793 if(cltype
>= var_pexprnode2
->type
->table_size
) {
5796 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
5800 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26717);
5803 var_tidnode3
= var_nodearraylist4
;
5804 /* <var_tidnode3:nullable Object> isa nullable TId */
5805 cltype10
= type_nullable_parser_nodes__TId
.color
;
5806 idtype11
= type_nullable_parser_nodes__TId
.id
;
5807 if(var_tidnode3
== NULL
) {
5810 if(cltype10
>= var_tidnode3
->type
->table_size
) {
5813 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
5817 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26719);
5820 var_pexprsnode4
= var_nodearraylist5
;
5821 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
5822 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
5823 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
5824 if(var_pexprsnode4
== NULL
) {
5827 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
5830 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
5834 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26721);
5837 var_tassignnode5
= var_nodearraylist6
;
5838 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
5839 cltype16
= type_nullable_parser_nodes__TAssign
.color
;
5840 idtype17
= type_nullable_parser_nodes__TAssign
.id
;
5841 if(var_tassignnode5
== NULL
) {
5844 if(cltype16
>= var_tassignnode5
->type
->table_size
) {
5847 var15
= var_tassignnode5
->type
->type_table
[cltype16
] == idtype17
;
5851 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26723);
5854 var_pexprnode6
= var_nodearraylist7
;
5855 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
5856 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
5857 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
5858 if(var_pexprnode6
== NULL
) {
5861 if(cltype19
>= var_pexprnode6
->type
->table_size
) {
5864 var18
= var_pexprnode6
->type
->type_table
[cltype19
] == idtype20
;
5868 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26725);
5871 var21
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
5872 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__ACallAssignExpr__init_acallassignexpr
]))(var21
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_tassignnode5
, var_pexprnode6
) /* init_acallassignexpr on <var21:ACallAssignExpr>*/;
5873 CHECK_NEW_parser_nodes__ACallAssignExpr(var21
);
5874 var_pexprnode1
= var21
;
5875 var_node_list
= var_pexprnode1
;
5876 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction704> */
5877 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
5878 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
5881 /* method parser#ReduceAction704#action for (self: Object, Parser) */
5882 void VIRTUAL_parser__ReduceAction704__action(val
* self
, val
* p0
) {
5883 parser__ReduceAction704__action(self
, p0
);
5886 /* method parser#ReduceAction705#action for (self: ReduceAction705, Parser) */
5887 void parser__ReduceAction705__action(val
* self
, val
* p0
) {
5888 val
* var_p
/* var p: Parser */;
5889 val
* var
/* : null */;
5890 val
* var_node_list
/* var node_list: nullable Object */;
5891 val
* var1
/* : nullable Object */;
5892 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5893 val
* var2
/* : nullable Object */;
5894 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5895 val
* var3
/* : nullable Object */;
5896 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5897 val
* var4
/* : nullable Object */;
5898 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5899 val
* var5
/* : AImplicitSelfExpr */;
5900 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
5901 val
* var_tidnode3
/* var tidnode3: nullable Object */;
5902 short int var6
/* : Bool */;
5905 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
5906 short int var7
/* : Bool */;
5909 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
5910 short int var10
/* : Bool */;
5913 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
5914 short int var13
/* : Bool */;
5917 val
* var16
/* : ACallAssignExpr */;
5918 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
5919 long var17
/* : Int */;
5920 long var18
/* : Int */;
5923 var_node_list
= var
;
5924 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5925 var_nodearraylist4
= var1
;
5926 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5927 var_nodearraylist3
= var2
;
5928 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5929 var_nodearraylist2
= var3
;
5930 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5931 var_nodearraylist1
= var4
;
5932 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
5933 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
5934 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
5935 var_pexprnode2
= var5
;
5936 var_tidnode3
= var_nodearraylist1
;
5937 /* <var_tidnode3:nullable Object> isa nullable TId */
5938 cltype
= type_nullable_parser_nodes__TId
.color
;
5939 idtype
= type_nullable_parser_nodes__TId
.id
;
5940 if(var_tidnode3
== NULL
) {
5943 if(cltype
>= var_tidnode3
->type
->table_size
) {
5946 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
5950 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26748);
5953 var_pexprsnode4
= var_nodearraylist2
;
5954 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
5955 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
5956 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
5957 if(var_pexprsnode4
== NULL
) {
5960 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
5963 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
5967 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26750);
5970 var_tassignnode5
= var_nodearraylist3
;
5971 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
5972 cltype11
= type_nullable_parser_nodes__TAssign
.color
;
5973 idtype12
= type_nullable_parser_nodes__TAssign
.id
;
5974 if(var_tassignnode5
== NULL
) {
5977 if(cltype11
>= var_tassignnode5
->type
->table_size
) {
5980 var10
= var_tassignnode5
->type
->type_table
[cltype11
] == idtype12
;
5984 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26752);
5987 var_pexprnode6
= var_nodearraylist4
;
5988 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
5989 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
5990 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
5991 if(var_pexprnode6
== NULL
) {
5994 if(cltype14
>= var_pexprnode6
->type
->table_size
) {
5997 var13
= var_pexprnode6
->type
->type_table
[cltype14
] == idtype15
;
6001 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26754);
6004 var16
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
6005 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ACallAssignExpr__init_acallassignexpr
]))(var16
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_tassignnode5
, var_pexprnode6
) /* init_acallassignexpr on <var16:ACallAssignExpr>*/;
6006 CHECK_NEW_parser_nodes__ACallAssignExpr(var16
);
6007 var_pexprnode1
= var16
;
6008 var_node_list
= var_pexprnode1
;
6009 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction705> */
6010 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
6011 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
6014 /* method parser#ReduceAction705#action for (self: Object, Parser) */
6015 void VIRTUAL_parser__ReduceAction705__action(val
* self
, val
* p0
) {
6016 parser__ReduceAction705__action(self
, p0
);
6019 /* method parser#ReduceAction706#action for (self: ReduceAction706, Parser) */
6020 void parser__ReduceAction706__action(val
* self
, val
* p0
) {
6021 val
* var_p
/* var p: Parser */;
6022 val
* var
/* : null */;
6023 val
* var_node_list
/* var node_list: nullable Object */;
6024 val
* var1
/* : nullable Object */;
6025 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6026 val
* var2
/* : nullable Object */;
6027 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6028 val
* var3
/* : nullable Object */;
6029 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6030 val
* var4
/* : nullable Object */;
6031 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6032 val
* var5
/* : nullable Object */;
6033 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6034 val
* var6
/* : nullable Object */;
6035 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6036 val
* var7
/* : nullable Object */;
6037 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6038 val
* var8
/* : nullable Object */;
6039 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6040 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6041 short int var9
/* : Bool */;
6044 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6045 short int var10
/* : Bool */;
6048 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
6049 short int var13
/* : Bool */;
6052 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
6053 short int var16
/* : Bool */;
6056 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
6057 short int var19
/* : Bool */;
6060 val
* var22
/* : ACallAssignExpr */;
6061 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
6062 long var23
/* : Int */;
6063 long var24
/* : Int */;
6066 var_node_list
= var
;
6067 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6068 var_nodearraylist8
= var1
;
6069 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6070 var_nodearraylist7
= var2
;
6071 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6072 var_nodearraylist6
= var3
;
6073 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6074 var_nodearraylist5
= var4
;
6075 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6076 var_nodearraylist4
= var5
;
6077 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6078 var_nodearraylist3
= var6
;
6079 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6080 var_nodearraylist2
= var7
;
6081 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6082 var_nodearraylist1
= var8
;
6083 var_pexprnode2
= var_nodearraylist1
;
6084 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6085 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6086 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6087 if(var_pexprnode2
== NULL
) {
6090 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6093 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6097 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26780);
6100 var_tidnode3
= var_nodearraylist5
;
6101 /* <var_tidnode3:nullable Object> isa nullable TId */
6102 cltype11
= type_nullable_parser_nodes__TId
.color
;
6103 idtype12
= type_nullable_parser_nodes__TId
.id
;
6104 if(var_tidnode3
== NULL
) {
6107 if(cltype11
>= var_tidnode3
->type
->table_size
) {
6110 var10
= var_tidnode3
->type
->type_table
[cltype11
] == idtype12
;
6114 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26782);
6117 var_pexprsnode4
= var_nodearraylist6
;
6118 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
6119 cltype14
= type_nullable_parser_nodes__AExprs
.color
;
6120 idtype15
= type_nullable_parser_nodes__AExprs
.id
;
6121 if(var_pexprsnode4
== NULL
) {
6124 if(cltype14
>= var_pexprsnode4
->type
->table_size
) {
6127 var13
= var_pexprsnode4
->type
->type_table
[cltype14
] == idtype15
;
6131 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26784);
6134 var_tassignnode5
= var_nodearraylist7
;
6135 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
6136 cltype17
= type_nullable_parser_nodes__TAssign
.color
;
6137 idtype18
= type_nullable_parser_nodes__TAssign
.id
;
6138 if(var_tassignnode5
== NULL
) {
6141 if(cltype17
>= var_tassignnode5
->type
->table_size
) {
6144 var16
= var_tassignnode5
->type
->type_table
[cltype17
] == idtype18
;
6148 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26786);
6151 var_pexprnode6
= var_nodearraylist8
;
6152 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
6153 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
6154 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
6155 if(var_pexprnode6
== NULL
) {
6158 if(cltype20
>= var_pexprnode6
->type
->table_size
) {
6161 var19
= var_pexprnode6
->type
->type_table
[cltype20
] == idtype21
;
6165 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26788);
6168 var22
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
6169 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var22
->class->vft
[COLOR_parser_prod__ACallAssignExpr__init_acallassignexpr
]))(var22
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_tassignnode5
, var_pexprnode6
) /* init_acallassignexpr on <var22:ACallAssignExpr>*/;
6170 CHECK_NEW_parser_nodes__ACallAssignExpr(var22
);
6171 var_pexprnode1
= var22
;
6172 var_node_list
= var_pexprnode1
;
6173 var23
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction706> */
6174 var24
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var23
) /* go_to on <var_p:Parser>*/;
6175 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var24
, var_node_list
) /* push on <var_p:Parser>*/;
6178 /* method parser#ReduceAction706#action for (self: Object, Parser) */
6179 void VIRTUAL_parser__ReduceAction706__action(val
* self
, val
* p0
) {
6180 parser__ReduceAction706__action(self
, p0
);
6183 /* method parser#ReduceAction707#action for (self: ReduceAction707, Parser) */
6184 void parser__ReduceAction707__action(val
* self
, val
* p0
) {
6185 val
* var_p
/* var p: Parser */;
6186 val
* var
/* : null */;
6187 val
* var_node_list
/* var node_list: nullable Object */;
6188 val
* var1
/* : nullable Object */;
6189 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
6190 val
* var2
/* : nullable Object */;
6191 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6192 val
* var3
/* : nullable Object */;
6193 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6194 val
* var4
/* : nullable Object */;
6195 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6196 val
* var5
/* : nullable Object */;
6197 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6198 val
* var6
/* : nullable Object */;
6199 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6200 val
* var7
/* : nullable Object */;
6201 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6202 val
* var8
/* : nullable Object */;
6203 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6204 val
* var9
/* : nullable Object */;
6205 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6206 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6207 short int var10
/* : Bool */;
6210 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6211 short int var11
/* : Bool */;
6214 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
6215 short int var14
/* : Bool */;
6218 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
6219 short int var17
/* : Bool */;
6222 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
6223 short int var20
/* : Bool */;
6226 val
* var23
/* : ACallAssignExpr */;
6227 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
6228 long var24
/* : Int */;
6229 long var25
/* : Int */;
6232 var_node_list
= var
;
6233 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6234 var_nodearraylist9
= var1
;
6235 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6236 var_nodearraylist8
= var2
;
6237 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6238 var_nodearraylist7
= var3
;
6239 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6240 var_nodearraylist6
= var4
;
6241 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6242 var_nodearraylist5
= var5
;
6243 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6244 var_nodearraylist4
= var6
;
6245 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6246 var_nodearraylist3
= var7
;
6247 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6248 var_nodearraylist2
= var8
;
6249 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6250 var_nodearraylist1
= var9
;
6251 var_pexprnode2
= var_nodearraylist1
;
6252 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6253 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6254 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6255 if(var_pexprnode2
== NULL
) {
6258 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6261 var10
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6265 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26815);
6268 var_tidnode3
= var_nodearraylist6
;
6269 /* <var_tidnode3:nullable Object> isa nullable TId */
6270 cltype12
= type_nullable_parser_nodes__TId
.color
;
6271 idtype13
= type_nullable_parser_nodes__TId
.id
;
6272 if(var_tidnode3
== NULL
) {
6275 if(cltype12
>= var_tidnode3
->type
->table_size
) {
6278 var11
= var_tidnode3
->type
->type_table
[cltype12
] == idtype13
;
6282 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26817);
6285 var_pexprsnode4
= var_nodearraylist7
;
6286 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
6287 cltype15
= type_nullable_parser_nodes__AExprs
.color
;
6288 idtype16
= type_nullable_parser_nodes__AExprs
.id
;
6289 if(var_pexprsnode4
== NULL
) {
6292 if(cltype15
>= var_pexprsnode4
->type
->table_size
) {
6295 var14
= var_pexprsnode4
->type
->type_table
[cltype15
] == idtype16
;
6299 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26819);
6302 var_tassignnode5
= var_nodearraylist8
;
6303 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
6304 cltype18
= type_nullable_parser_nodes__TAssign
.color
;
6305 idtype19
= type_nullable_parser_nodes__TAssign
.id
;
6306 if(var_tassignnode5
== NULL
) {
6309 if(cltype18
>= var_tassignnode5
->type
->table_size
) {
6312 var17
= var_tassignnode5
->type
->type_table
[cltype18
] == idtype19
;
6316 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26821);
6319 var_pexprnode6
= var_nodearraylist9
;
6320 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
6321 cltype21
= type_nullable_parser_nodes__AExpr
.color
;
6322 idtype22
= type_nullable_parser_nodes__AExpr
.id
;
6323 if(var_pexprnode6
== NULL
) {
6326 if(cltype21
>= var_pexprnode6
->type
->table_size
) {
6329 var20
= var_pexprnode6
->type
->type_table
[cltype21
] == idtype22
;
6333 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26823);
6336 var23
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
6337 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var23
->class->vft
[COLOR_parser_prod__ACallAssignExpr__init_acallassignexpr
]))(var23
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_tassignnode5
, var_pexprnode6
) /* init_acallassignexpr on <var23:ACallAssignExpr>*/;
6338 CHECK_NEW_parser_nodes__ACallAssignExpr(var23
);
6339 var_pexprnode1
= var23
;
6340 var_node_list
= var_pexprnode1
;
6341 var24
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction707> */
6342 var25
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var24
) /* go_to on <var_p:Parser>*/;
6343 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var25
, var_node_list
) /* push on <var_p:Parser>*/;
6346 /* method parser#ReduceAction707#action for (self: Object, Parser) */
6347 void VIRTUAL_parser__ReduceAction707__action(val
* self
, val
* p0
) {
6348 parser__ReduceAction707__action(self
, p0
);
6351 /* method parser#ReduceAction709#action for (self: ReduceAction709, Parser) */
6352 void parser__ReduceAction709__action(val
* self
, val
* p0
) {
6353 val
* var_p
/* var p: Parser */;
6354 val
* var
/* : null */;
6355 val
* var_node_list
/* var node_list: nullable Object */;
6356 val
* var1
/* : nullable Object */;
6357 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6358 val
* var2
/* : nullable Object */;
6359 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6360 val
* var3
/* : nullable Object */;
6361 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6362 val
* var4
/* : nullable Object */;
6363 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6364 val
* var5
/* : nullable Object */;
6365 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6366 val
* var6
/* : AImplicitSelfExpr */;
6367 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
6368 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6369 short int var7
/* : Bool */;
6372 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
6373 short int var8
/* : Bool */;
6376 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
6377 short int var11
/* : Bool */;
6380 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
6381 short int var14
/* : Bool */;
6384 val
* var17
/* : ACallAssignExpr */;
6385 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
6386 long var18
/* : Int */;
6387 long var19
/* : Int */;
6390 var_node_list
= var
;
6391 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6392 var_nodearraylist5
= var1
;
6393 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6394 var_nodearraylist4
= var2
;
6395 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6396 var_nodearraylist3
= var3
;
6397 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6398 var_nodearraylist2
= var4
;
6399 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6400 var_nodearraylist1
= var5
;
6401 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
6402 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
6403 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
6404 var_pexprnode2
= var6
;
6405 var_tidnode3
= var_nodearraylist2
;
6406 /* <var_tidnode3:nullable Object> isa nullable TId */
6407 cltype
= type_nullable_parser_nodes__TId
.color
;
6408 idtype
= type_nullable_parser_nodes__TId
.id
;
6409 if(var_tidnode3
== NULL
) {
6412 if(cltype
>= var_tidnode3
->type
->table_size
) {
6415 var7
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
6419 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26847);
6422 var_pexprsnode4
= var_nodearraylist3
;
6423 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
6424 cltype9
= type_nullable_parser_nodes__AExprs
.color
;
6425 idtype10
= type_nullable_parser_nodes__AExprs
.id
;
6426 if(var_pexprsnode4
== NULL
) {
6429 if(cltype9
>= var_pexprsnode4
->type
->table_size
) {
6432 var8
= var_pexprsnode4
->type
->type_table
[cltype9
] == idtype10
;
6436 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26849);
6439 var_tassignnode5
= var_nodearraylist4
;
6440 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
6441 cltype12
= type_nullable_parser_nodes__TAssign
.color
;
6442 idtype13
= type_nullable_parser_nodes__TAssign
.id
;
6443 if(var_tassignnode5
== NULL
) {
6446 if(cltype12
>= var_tassignnode5
->type
->table_size
) {
6449 var11
= var_tassignnode5
->type
->type_table
[cltype12
] == idtype13
;
6453 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26851);
6456 var_pexprnode6
= var_nodearraylist5
;
6457 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
6458 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
6459 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
6460 if(var_pexprnode6
== NULL
) {
6463 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
6466 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
6470 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26853);
6473 var17
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
6474 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__ACallAssignExpr__init_acallassignexpr
]))(var17
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_tassignnode5
, var_pexprnode6
) /* init_acallassignexpr on <var17:ACallAssignExpr>*/;
6475 CHECK_NEW_parser_nodes__ACallAssignExpr(var17
);
6476 var_pexprnode1
= var17
;
6477 var_node_list
= var_pexprnode1
;
6478 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction709> */
6479 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
6480 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
6483 /* method parser#ReduceAction709#action for (self: Object, Parser) */
6484 void VIRTUAL_parser__ReduceAction709__action(val
* self
, val
* p0
) {
6485 parser__ReduceAction709__action(self
, p0
);
6488 /* method parser#ReduceAction710#action for (self: ReduceAction710, Parser) */
6489 void parser__ReduceAction710__action(val
* self
, val
* p0
) {
6490 val
* var_p
/* var p: Parser */;
6491 val
* var
/* : null */;
6492 val
* var_node_list
/* var node_list: nullable Object */;
6493 val
* var1
/* : nullable Object */;
6494 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6495 val
* var2
/* : nullable Object */;
6496 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6497 val
* var3
/* : nullable Object */;
6498 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6499 val
* var4
/* : nullable Object */;
6500 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6501 val
* var5
/* : nullable Object */;
6502 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6503 val
* var6
/* : nullable Object */;
6504 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6505 val
* var7
/* : AImplicitSelfExpr */;
6506 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
6507 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6508 short int var8
/* : Bool */;
6511 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
6512 short int var9
/* : Bool */;
6515 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
6516 short int var12
/* : Bool */;
6519 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
6520 short int var15
/* : Bool */;
6523 val
* var18
/* : ACallAssignExpr */;
6524 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
6525 long var19
/* : Int */;
6526 long var20
/* : Int */;
6529 var_node_list
= var
;
6530 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6531 var_nodearraylist6
= var1
;
6532 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6533 var_nodearraylist5
= var2
;
6534 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6535 var_nodearraylist4
= var3
;
6536 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6537 var_nodearraylist3
= var4
;
6538 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6539 var_nodearraylist2
= var5
;
6540 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6541 var_nodearraylist1
= var6
;
6542 var7
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
6543 ((void (*)(val
*))(var7
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var7
) /* init_aimplicitselfexpr on <var7:AImplicitSelfExpr>*/;
6544 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var7
);
6545 var_pexprnode2
= var7
;
6546 var_tidnode3
= var_nodearraylist3
;
6547 /* <var_tidnode3:nullable Object> isa nullable TId */
6548 cltype
= type_nullable_parser_nodes__TId
.color
;
6549 idtype
= type_nullable_parser_nodes__TId
.id
;
6550 if(var_tidnode3
== NULL
) {
6553 if(cltype
>= var_tidnode3
->type
->table_size
) {
6556 var8
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
6560 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26878);
6563 var_pexprsnode4
= var_nodearraylist4
;
6564 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
6565 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
6566 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
6567 if(var_pexprsnode4
== NULL
) {
6570 if(cltype10
>= var_pexprsnode4
->type
->table_size
) {
6573 var9
= var_pexprsnode4
->type
->type_table
[cltype10
] == idtype11
;
6577 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26880);
6580 var_tassignnode5
= var_nodearraylist5
;
6581 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
6582 cltype13
= type_nullable_parser_nodes__TAssign
.color
;
6583 idtype14
= type_nullable_parser_nodes__TAssign
.id
;
6584 if(var_tassignnode5
== NULL
) {
6587 if(cltype13
>= var_tassignnode5
->type
->table_size
) {
6590 var12
= var_tassignnode5
->type
->type_table
[cltype13
] == idtype14
;
6594 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26882);
6597 var_pexprnode6
= var_nodearraylist6
;
6598 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
6599 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
6600 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
6601 if(var_pexprnode6
== NULL
) {
6604 if(cltype16
>= var_pexprnode6
->type
->table_size
) {
6607 var15
= var_pexprnode6
->type
->type_table
[cltype16
] == idtype17
;
6611 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26884);
6614 var18
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
6615 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__ACallAssignExpr__init_acallassignexpr
]))(var18
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_tassignnode5
, var_pexprnode6
) /* init_acallassignexpr on <var18:ACallAssignExpr>*/;
6616 CHECK_NEW_parser_nodes__ACallAssignExpr(var18
);
6617 var_pexprnode1
= var18
;
6618 var_node_list
= var_pexprnode1
;
6619 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction710> */
6620 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
6621 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
6624 /* method parser#ReduceAction710#action for (self: Object, Parser) */
6625 void VIRTUAL_parser__ReduceAction710__action(val
* self
, val
* p0
) {
6626 parser__ReduceAction710__action(self
, p0
);
6629 /* method parser#ReduceAction712#action for (self: ReduceAction712, Parser) */
6630 void parser__ReduceAction712__action(val
* self
, val
* p0
) {
6631 val
* var_p
/* var p: Parser */;
6632 val
* var
/* : null */;
6633 val
* var_node_list
/* var node_list: nullable Object */;
6634 val
* var1
/* : nullable Object */;
6635 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6636 val
* var2
/* : nullable Object */;
6637 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6638 val
* var3
/* : nullable Object */;
6639 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6640 val
* var4
/* : nullable Object */;
6641 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6642 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6643 short int var5
/* : Bool */;
6646 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
6647 short int var6
/* : Bool */;
6650 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
6651 short int var9
/* : Bool */;
6654 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6655 short int var12
/* : Bool */;
6658 val
* var15
/* : ABraAssignExpr */;
6659 val
* var_pexprnode1
/* var pexprnode1: nullable ABraAssignExpr */;
6660 long var16
/* : Int */;
6661 long var17
/* : Int */;
6664 var_node_list
= var
;
6665 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6666 var_nodearraylist4
= var1
;
6667 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6668 var_nodearraylist3
= var2
;
6669 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6670 var_nodearraylist2
= var3
;
6671 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6672 var_nodearraylist1
= var4
;
6673 var_pexprnode2
= var_nodearraylist1
;
6674 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6675 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6676 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6677 if(var_pexprnode2
== NULL
) {
6680 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6683 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6687 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26906);
6690 var_pexprsnode3
= var_nodearraylist2
;
6691 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
6692 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
6693 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
6694 if(var_pexprsnode3
== NULL
) {
6697 if(cltype7
>= var_pexprsnode3
->type
->table_size
) {
6700 var6
= var_pexprsnode3
->type
->type_table
[cltype7
] == idtype8
;
6704 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26908);
6707 var_tassignnode4
= var_nodearraylist3
;
6708 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
6709 cltype10
= type_nullable_parser_nodes__TAssign
.color
;
6710 idtype11
= type_nullable_parser_nodes__TAssign
.id
;
6711 if(var_tassignnode4
== NULL
) {
6714 if(cltype10
>= var_tassignnode4
->type
->table_size
) {
6717 var9
= var_tassignnode4
->type
->type_table
[cltype10
] == idtype11
;
6721 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26910);
6724 var_pexprnode5
= var_nodearraylist4
;
6725 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6726 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
6727 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
6728 if(var_pexprnode5
== NULL
) {
6731 if(cltype13
>= var_pexprnode5
->type
->table_size
) {
6734 var12
= var_pexprnode5
->type
->type_table
[cltype13
] == idtype14
;
6738 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26912);
6741 var15
= NEW_parser_nodes__ABraAssignExpr(&type_parser_nodes__ABraAssignExpr
);
6742 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ABraAssignExpr__init_abraassignexpr
]))(var15
, var_pexprnode2
, var_pexprsnode3
, var_tassignnode4
, var_pexprnode5
) /* init_abraassignexpr on <var15:ABraAssignExpr>*/;
6743 CHECK_NEW_parser_nodes__ABraAssignExpr(var15
);
6744 var_pexprnode1
= var15
;
6745 var_node_list
= var_pexprnode1
;
6746 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction712> */
6747 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
6748 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
6751 /* method parser#ReduceAction712#action for (self: Object, Parser) */
6752 void VIRTUAL_parser__ReduceAction712__action(val
* self
, val
* p0
) {
6753 parser__ReduceAction712__action(self
, p0
);
6756 /* method parser#ReduceAction713#action for (self: ReduceAction713, Parser) */
6757 void parser__ReduceAction713__action(val
* self
, val
* p0
) {
6758 val
* var_p
/* var p: Parser */;
6759 val
* var
/* : null */;
6760 val
* var_node_list
/* var node_list: nullable Object */;
6761 val
* var1
/* : nullable Object */;
6762 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6763 val
* var2
/* : nullable Object */;
6764 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6765 val
* var3
/* : nullable Object */;
6766 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6767 val
* var4
/* : nullable Object */;
6768 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6769 val
* var5
/* : nullable Object */;
6770 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6771 val
* var6
/* : nullable Object */;
6772 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6773 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6774 short int var7
/* : Bool */;
6777 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
6778 short int var8
/* : Bool */;
6781 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
6782 short int var11
/* : Bool */;
6785 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6786 short int var14
/* : Bool */;
6789 val
* var17
/* : AAttrReassignExpr */;
6790 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
6791 long var18
/* : Int */;
6792 long var19
/* : Int */;
6795 var_node_list
= var
;
6796 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6797 var_nodearraylist6
= var1
;
6798 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6799 var_nodearraylist5
= var2
;
6800 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6801 var_nodearraylist4
= var3
;
6802 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6803 var_nodearraylist3
= var4
;
6804 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6805 var_nodearraylist2
= var5
;
6806 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6807 var_nodearraylist1
= var6
;
6808 var_pexprnode2
= var_nodearraylist1
;
6809 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6810 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6811 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6812 if(var_pexprnode2
== NULL
) {
6815 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6818 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6822 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26935);
6825 var_tattridnode3
= var_nodearraylist4
;
6826 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
6827 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
6828 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
6829 if(var_tattridnode3
== NULL
) {
6832 if(cltype9
>= var_tattridnode3
->type
->table_size
) {
6835 var8
= var_tattridnode3
->type
->type_table
[cltype9
] == idtype10
;
6839 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26937);
6842 var_passignopnode4
= var_nodearraylist5
;
6843 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
6844 cltype12
= type_nullable_parser_nodes__AAssignOp
.color
;
6845 idtype13
= type_nullable_parser_nodes__AAssignOp
.id
;
6846 if(var_passignopnode4
== NULL
) {
6849 if(cltype12
>= var_passignopnode4
->type
->table_size
) {
6852 var11
= var_passignopnode4
->type
->type_table
[cltype12
] == idtype13
;
6856 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26939);
6859 var_pexprnode5
= var_nodearraylist6
;
6860 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6861 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
6862 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
6863 if(var_pexprnode5
== NULL
) {
6866 if(cltype15
>= var_pexprnode5
->type
->table_size
) {
6869 var14
= var_pexprnode5
->type
->type_table
[cltype15
] == idtype16
;
6873 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26941);
6876 var17
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
6877 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AAttrReassignExpr__init_aattrreassignexpr
]))(var17
, var_pexprnode2
, var_tattridnode3
, var_passignopnode4
, var_pexprnode5
) /* init_aattrreassignexpr on <var17:AAttrReassignExpr>*/;
6878 CHECK_NEW_parser_nodes__AAttrReassignExpr(var17
);
6879 var_pexprnode1
= var17
;
6880 var_node_list
= var_pexprnode1
;
6881 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction713> */
6882 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
6883 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
6886 /* method parser#ReduceAction713#action for (self: Object, Parser) */
6887 void VIRTUAL_parser__ReduceAction713__action(val
* self
, val
* p0
) {
6888 parser__ReduceAction713__action(self
, p0
);
6891 /* method parser#ReduceAction714#action for (self: ReduceAction714, Parser) */
6892 void parser__ReduceAction714__action(val
* self
, val
* p0
) {
6893 val
* var_p
/* var p: Parser */;
6894 val
* var
/* : null */;
6895 val
* var_node_list
/* var node_list: nullable Object */;
6896 val
* var1
/* : nullable Object */;
6897 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6898 val
* var2
/* : nullable Object */;
6899 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6900 val
* var3
/* : nullable Object */;
6901 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6902 val
* var4
/* : AImplicitSelfExpr */;
6903 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
6904 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
6905 short int var5
/* : Bool */;
6908 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
6909 short int var6
/* : Bool */;
6912 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6913 short int var9
/* : Bool */;
6916 val
* var12
/* : AAttrReassignExpr */;
6917 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
6918 long var13
/* : Int */;
6919 long var14
/* : Int */;
6922 var_node_list
= var
;
6923 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6924 var_nodearraylist3
= var1
;
6925 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6926 var_nodearraylist2
= var2
;
6927 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6928 var_nodearraylist1
= var3
;
6929 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
6930 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
6931 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
6932 var_pexprnode2
= var4
;
6933 var_tattridnode3
= var_nodearraylist1
;
6934 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
6935 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
6936 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
6937 if(var_tattridnode3
== NULL
) {
6940 if(cltype
>= var_tattridnode3
->type
->table_size
) {
6943 var5
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
6947 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26962);
6950 var_passignopnode4
= var_nodearraylist2
;
6951 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
6952 cltype7
= type_nullable_parser_nodes__AAssignOp
.color
;
6953 idtype8
= type_nullable_parser_nodes__AAssignOp
.id
;
6954 if(var_passignopnode4
== NULL
) {
6957 if(cltype7
>= var_passignopnode4
->type
->table_size
) {
6960 var6
= var_passignopnode4
->type
->type_table
[cltype7
] == idtype8
;
6964 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26964);
6967 var_pexprnode5
= var_nodearraylist3
;
6968 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6969 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
6970 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
6971 if(var_pexprnode5
== NULL
) {
6974 if(cltype10
>= var_pexprnode5
->type
->table_size
) {
6977 var9
= var_pexprnode5
->type
->type_table
[cltype10
] == idtype11
;
6981 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26966);
6984 var12
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
6985 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AAttrReassignExpr__init_aattrreassignexpr
]))(var12
, var_pexprnode2
, var_tattridnode3
, var_passignopnode4
, var_pexprnode5
) /* init_aattrreassignexpr on <var12:AAttrReassignExpr>*/;
6986 CHECK_NEW_parser_nodes__AAttrReassignExpr(var12
);
6987 var_pexprnode1
= var12
;
6988 var_node_list
= var_pexprnode1
;
6989 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction714> */
6990 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
6991 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
6994 /* method parser#ReduceAction714#action for (self: Object, Parser) */
6995 void VIRTUAL_parser__ReduceAction714__action(val
* self
, val
* p0
) {
6996 parser__ReduceAction714__action(self
, p0
);
6999 /* method parser#ReduceAction715#action for (self: ReduceAction715, Parser) */
7000 void parser__ReduceAction715__action(val
* self
, val
* p0
) {
7001 val
* var_p
/* var p: Parser */;
7002 val
* var
/* : null */;
7003 val
* var_node_list
/* var node_list: nullable Object */;
7004 val
* var1
/* : nullable Object */;
7005 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7006 val
* var2
/* : nullable Object */;
7007 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7008 val
* var3
/* : nullable Object */;
7009 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7010 val
* var4
/* : nullable Object */;
7011 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7012 val
* var5
/* : nullable Object */;
7013 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7014 val
* var6
/* : nullable Object */;
7015 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7016 val
* var7
/* : nullable Object */;
7017 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7018 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7019 short int var8
/* : Bool */;
7022 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
7023 short int var9
/* : Bool */;
7026 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
7027 short int var12
/* : Bool */;
7030 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
7031 short int var15
/* : Bool */;
7034 val
* var18
/* : AAttrReassignExpr */;
7035 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
7036 long var19
/* : Int */;
7037 long var20
/* : Int */;
7040 var_node_list
= var
;
7041 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7042 var_nodearraylist7
= var1
;
7043 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7044 var_nodearraylist6
= var2
;
7045 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7046 var_nodearraylist5
= var3
;
7047 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7048 var_nodearraylist4
= var4
;
7049 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7050 var_nodearraylist3
= var5
;
7051 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7052 var_nodearraylist2
= var6
;
7053 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7054 var_nodearraylist1
= var7
;
7055 var_pexprnode2
= var_nodearraylist1
;
7056 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7057 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7058 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7059 if(var_pexprnode2
== NULL
) {
7062 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7065 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7069 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26990);
7072 var_tattridnode3
= var_nodearraylist5
;
7073 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
7074 cltype10
= type_nullable_parser_nodes__TAttrid
.color
;
7075 idtype11
= type_nullable_parser_nodes__TAttrid
.id
;
7076 if(var_tattridnode3
== NULL
) {
7079 if(cltype10
>= var_tattridnode3
->type
->table_size
) {
7082 var9
= var_tattridnode3
->type
->type_table
[cltype10
] == idtype11
;
7086 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26992);
7089 var_passignopnode4
= var_nodearraylist6
;
7090 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
7091 cltype13
= type_nullable_parser_nodes__AAssignOp
.color
;
7092 idtype14
= type_nullable_parser_nodes__AAssignOp
.id
;
7093 if(var_passignopnode4
== NULL
) {
7096 if(cltype13
>= var_passignopnode4
->type
->table_size
) {
7099 var12
= var_passignopnode4
->type
->type_table
[cltype13
] == idtype14
;
7103 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26994);
7106 var_pexprnode5
= var_nodearraylist7
;
7107 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
7108 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
7109 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
7110 if(var_pexprnode5
== NULL
) {
7113 if(cltype16
>= var_pexprnode5
->type
->table_size
) {
7116 var15
= var_pexprnode5
->type
->type_table
[cltype16
] == idtype17
;
7120 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 26996);
7123 var18
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
7124 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__AAttrReassignExpr__init_aattrreassignexpr
]))(var18
, var_pexprnode2
, var_tattridnode3
, var_passignopnode4
, var_pexprnode5
) /* init_aattrreassignexpr on <var18:AAttrReassignExpr>*/;
7125 CHECK_NEW_parser_nodes__AAttrReassignExpr(var18
);
7126 var_pexprnode1
= var18
;
7127 var_node_list
= var_pexprnode1
;
7128 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction715> */
7129 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
7130 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
7133 /* method parser#ReduceAction715#action for (self: Object, Parser) */
7134 void VIRTUAL_parser__ReduceAction715__action(val
* self
, val
* p0
) {
7135 parser__ReduceAction715__action(self
, p0
);
7138 /* method parser#ReduceAction716#action for (self: ReduceAction716, Parser) */
7139 void parser__ReduceAction716__action(val
* self
, val
* p0
) {
7140 val
* var_p
/* var p: Parser */;
7141 val
* var
/* : null */;
7142 val
* var_node_list
/* var node_list: nullable Object */;
7143 val
* var1
/* : nullable Object */;
7144 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7145 val
* var2
/* : nullable Object */;
7146 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7147 val
* var3
/* : nullable Object */;
7148 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7149 val
* var4
/* : nullable Object */;
7150 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7151 val
* var5
/* : nullable Object */;
7152 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7153 val
* var6
/* : nullable Object */;
7154 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7155 val
* var7
/* : nullable Object */;
7156 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7157 val
* var8
/* : nullable Object */;
7158 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7159 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7160 short int var9
/* : Bool */;
7163 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
7164 short int var10
/* : Bool */;
7167 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
7168 short int var13
/* : Bool */;
7171 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
7172 short int var16
/* : Bool */;
7175 val
* var19
/* : AAttrReassignExpr */;
7176 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
7177 long var20
/* : Int */;
7178 long var21
/* : Int */;
7181 var_node_list
= var
;
7182 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7183 var_nodearraylist8
= var1
;
7184 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7185 var_nodearraylist7
= var2
;
7186 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7187 var_nodearraylist6
= var3
;
7188 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7189 var_nodearraylist5
= var4
;
7190 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7191 var_nodearraylist4
= var5
;
7192 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7193 var_nodearraylist3
= var6
;
7194 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7195 var_nodearraylist2
= var7
;
7196 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7197 var_nodearraylist1
= var8
;
7198 var_pexprnode2
= var_nodearraylist1
;
7199 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7200 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7201 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7202 if(var_pexprnode2
== NULL
) {
7205 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7208 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7212 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27021);
7215 var_tattridnode3
= var_nodearraylist6
;
7216 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
7217 cltype11
= type_nullable_parser_nodes__TAttrid
.color
;
7218 idtype12
= type_nullable_parser_nodes__TAttrid
.id
;
7219 if(var_tattridnode3
== NULL
) {
7222 if(cltype11
>= var_tattridnode3
->type
->table_size
) {
7225 var10
= var_tattridnode3
->type
->type_table
[cltype11
] == idtype12
;
7229 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27023);
7232 var_passignopnode4
= var_nodearraylist7
;
7233 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
7234 cltype14
= type_nullable_parser_nodes__AAssignOp
.color
;
7235 idtype15
= type_nullable_parser_nodes__AAssignOp
.id
;
7236 if(var_passignopnode4
== NULL
) {
7239 if(cltype14
>= var_passignopnode4
->type
->table_size
) {
7242 var13
= var_passignopnode4
->type
->type_table
[cltype14
] == idtype15
;
7246 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27025);
7249 var_pexprnode5
= var_nodearraylist8
;
7250 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
7251 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
7252 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
7253 if(var_pexprnode5
== NULL
) {
7256 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
7259 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
7263 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27027);
7266 var19
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
7267 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__AAttrReassignExpr__init_aattrreassignexpr
]))(var19
, var_pexprnode2
, var_tattridnode3
, var_passignopnode4
, var_pexprnode5
) /* init_aattrreassignexpr on <var19:AAttrReassignExpr>*/;
7268 CHECK_NEW_parser_nodes__AAttrReassignExpr(var19
);
7269 var_pexprnode1
= var19
;
7270 var_node_list
= var_pexprnode1
;
7271 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction716> */
7272 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
7273 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
7276 /* method parser#ReduceAction716#action for (self: Object, Parser) */
7277 void VIRTUAL_parser__ReduceAction716__action(val
* self
, val
* p0
) {
7278 parser__ReduceAction716__action(self
, p0
);
7281 /* method parser#ReduceAction718#action for (self: ReduceAction718, Parser) */
7282 void parser__ReduceAction718__action(val
* self
, val
* p0
) {
7283 val
* var_p
/* var p: Parser */;
7284 val
* var
/* : null */;
7285 val
* var_node_list
/* var node_list: nullable Object */;
7286 val
* var1
/* : nullable Object */;
7287 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7288 val
* var2
/* : nullable Object */;
7289 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7290 val
* var3
/* : nullable Object */;
7291 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7292 val
* var4
/* : nullable Object */;
7293 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7294 val
* var5
/* : AImplicitSelfExpr */;
7295 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
7296 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
7297 short int var6
/* : Bool */;
7300 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
7301 short int var7
/* : Bool */;
7304 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
7305 short int var10
/* : Bool */;
7308 val
* var13
/* : AAttrReassignExpr */;
7309 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
7310 long var14
/* : Int */;
7311 long var15
/* : Int */;
7314 var_node_list
= var
;
7315 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7316 var_nodearraylist4
= var1
;
7317 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7318 var_nodearraylist3
= var2
;
7319 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7320 var_nodearraylist2
= var3
;
7321 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7322 var_nodearraylist1
= var4
;
7323 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
7324 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
7325 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
7326 var_pexprnode2
= var5
;
7327 var_tattridnode3
= var_nodearraylist2
;
7328 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
7329 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
7330 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
7331 if(var_tattridnode3
== NULL
) {
7334 if(cltype
>= var_tattridnode3
->type
->table_size
) {
7337 var6
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
7341 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27049);
7344 var_passignopnode4
= var_nodearraylist3
;
7345 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
7346 cltype8
= type_nullable_parser_nodes__AAssignOp
.color
;
7347 idtype9
= type_nullable_parser_nodes__AAssignOp
.id
;
7348 if(var_passignopnode4
== NULL
) {
7351 if(cltype8
>= var_passignopnode4
->type
->table_size
) {
7354 var7
= var_passignopnode4
->type
->type_table
[cltype8
] == idtype9
;
7358 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27051);
7361 var_pexprnode5
= var_nodearraylist4
;
7362 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
7363 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
7364 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
7365 if(var_pexprnode5
== NULL
) {
7368 if(cltype11
>= var_pexprnode5
->type
->table_size
) {
7371 var10
= var_pexprnode5
->type
->type_table
[cltype11
] == idtype12
;
7375 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27053);
7378 var13
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
7379 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AAttrReassignExpr__init_aattrreassignexpr
]))(var13
, var_pexprnode2
, var_tattridnode3
, var_passignopnode4
, var_pexprnode5
) /* init_aattrreassignexpr on <var13:AAttrReassignExpr>*/;
7380 CHECK_NEW_parser_nodes__AAttrReassignExpr(var13
);
7381 var_pexprnode1
= var13
;
7382 var_node_list
= var_pexprnode1
;
7383 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction718> */
7384 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
7385 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
7388 /* method parser#ReduceAction718#action for (self: Object, Parser) */
7389 void VIRTUAL_parser__ReduceAction718__action(val
* self
, val
* p0
) {
7390 parser__ReduceAction718__action(self
, p0
);
7393 /* method parser#ReduceAction719#action for (self: ReduceAction719, Parser) */
7394 void parser__ReduceAction719__action(val
* self
, val
* p0
) {
7395 val
* var_p
/* var p: Parser */;
7396 val
* var
/* : null */;
7397 val
* var_node_list
/* var node_list: nullable Object */;
7398 val
* var1
/* : nullable Object */;
7399 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7400 val
* var2
/* : nullable Object */;
7401 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7402 val
* var3
/* : nullable Object */;
7403 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7404 val
* var4
/* : nullable Object */;
7405 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7406 val
* var5
/* : nullable Object */;
7407 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7408 val
* var6
/* : AImplicitSelfExpr */;
7409 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
7410 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
7411 short int var7
/* : Bool */;
7414 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
7415 short int var8
/* : Bool */;
7418 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
7419 short int var11
/* : Bool */;
7422 val
* var14
/* : AAttrReassignExpr */;
7423 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
7424 long var15
/* : Int */;
7425 long var16
/* : Int */;
7428 var_node_list
= var
;
7429 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7430 var_nodearraylist5
= var1
;
7431 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7432 var_nodearraylist4
= var2
;
7433 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7434 var_nodearraylist3
= var3
;
7435 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7436 var_nodearraylist2
= var4
;
7437 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7438 var_nodearraylist1
= var5
;
7439 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
7440 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
7441 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
7442 var_pexprnode2
= var6
;
7443 var_tattridnode3
= var_nodearraylist3
;
7444 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
7445 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
7446 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
7447 if(var_tattridnode3
== NULL
) {
7450 if(cltype
>= var_tattridnode3
->type
->table_size
) {
7453 var7
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
7457 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27076);
7460 var_passignopnode4
= var_nodearraylist4
;
7461 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
7462 cltype9
= type_nullable_parser_nodes__AAssignOp
.color
;
7463 idtype10
= type_nullable_parser_nodes__AAssignOp
.id
;
7464 if(var_passignopnode4
== NULL
) {
7467 if(cltype9
>= var_passignopnode4
->type
->table_size
) {
7470 var8
= var_passignopnode4
->type
->type_table
[cltype9
] == idtype10
;
7474 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27078);
7477 var_pexprnode5
= var_nodearraylist5
;
7478 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
7479 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
7480 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
7481 if(var_pexprnode5
== NULL
) {
7484 if(cltype12
>= var_pexprnode5
->type
->table_size
) {
7487 var11
= var_pexprnode5
->type
->type_table
[cltype12
] == idtype13
;
7491 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27080);
7494 var14
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
7495 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AAttrReassignExpr__init_aattrreassignexpr
]))(var14
, var_pexprnode2
, var_tattridnode3
, var_passignopnode4
, var_pexprnode5
) /* init_aattrreassignexpr on <var14:AAttrReassignExpr>*/;
7496 CHECK_NEW_parser_nodes__AAttrReassignExpr(var14
);
7497 var_pexprnode1
= var14
;
7498 var_node_list
= var_pexprnode1
;
7499 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction719> */
7500 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
7501 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
7504 /* method parser#ReduceAction719#action for (self: Object, Parser) */
7505 void VIRTUAL_parser__ReduceAction719__action(val
* self
, val
* p0
) {
7506 parser__ReduceAction719__action(self
, p0
);
7509 /* method parser#ReduceAction721#action for (self: ReduceAction721, Parser) */
7510 void parser__ReduceAction721__action(val
* self
, val
* p0
) {
7511 val
* var_p
/* var p: Parser */;
7512 val
* var
/* : null */;
7513 val
* var_node_list
/* var node_list: nullable Object */;
7514 val
* var1
/* : nullable Object */;
7515 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7516 val
* var2
/* : nullable Object */;
7517 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7518 val
* var3
/* : nullable Object */;
7519 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7520 val
* var4
/* : nullable Object */;
7521 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7522 val
* var5
/* : nullable Object */;
7523 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7524 val
* var6
/* : nullable Object */;
7525 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7526 val
* var7
/* : nullable Object */;
7527 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7528 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7529 short int var8
/* : Bool */;
7532 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7533 short int var9
/* : Bool */;
7536 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7537 short int var12
/* : Bool */;
7540 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
7541 short int var15
/* : Bool */;
7544 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
7545 short int var18
/* : Bool */;
7548 val
* var21
/* : ACallReassignExpr */;
7549 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
7550 long var22
/* : Int */;
7551 long var23
/* : Int */;
7554 var_node_list
= var
;
7555 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7556 var_nodearraylist7
= var1
;
7557 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7558 var_nodearraylist6
= var2
;
7559 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7560 var_nodearraylist5
= var3
;
7561 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7562 var_nodearraylist4
= var4
;
7563 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7564 var_nodearraylist3
= var5
;
7565 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7566 var_nodearraylist2
= var6
;
7567 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7568 var_nodearraylist1
= var7
;
7569 var_pexprnode2
= var_nodearraylist1
;
7570 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7571 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7572 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7573 if(var_pexprnode2
== NULL
) {
7576 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7579 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7583 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27104);
7586 var_tidnode3
= var_nodearraylist4
;
7587 /* <var_tidnode3:nullable Object> isa nullable TId */
7588 cltype10
= type_nullable_parser_nodes__TId
.color
;
7589 idtype11
= type_nullable_parser_nodes__TId
.id
;
7590 if(var_tidnode3
== NULL
) {
7593 if(cltype10
>= var_tidnode3
->type
->table_size
) {
7596 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
7600 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27106);
7603 var_pexprsnode4
= var_nodearraylist5
;
7604 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7605 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
7606 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
7607 if(var_pexprsnode4
== NULL
) {
7610 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
7613 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
7617 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27108);
7620 var_passignopnode5
= var_nodearraylist6
;
7621 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
7622 cltype16
= type_nullable_parser_nodes__AAssignOp
.color
;
7623 idtype17
= type_nullable_parser_nodes__AAssignOp
.id
;
7624 if(var_passignopnode5
== NULL
) {
7627 if(cltype16
>= var_passignopnode5
->type
->table_size
) {
7630 var15
= var_passignopnode5
->type
->type_table
[cltype16
] == idtype17
;
7634 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27110);
7637 var_pexprnode6
= var_nodearraylist7
;
7638 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
7639 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
7640 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
7641 if(var_pexprnode6
== NULL
) {
7644 if(cltype19
>= var_pexprnode6
->type
->table_size
) {
7647 var18
= var_pexprnode6
->type
->type_table
[cltype19
] == idtype20
;
7651 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27112);
7654 var21
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
7655 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__ACallReassignExpr__init_acallreassignexpr
]))(var21
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_passignopnode5
, var_pexprnode6
) /* init_acallreassignexpr on <var21:ACallReassignExpr>*/;
7656 CHECK_NEW_parser_nodes__ACallReassignExpr(var21
);
7657 var_pexprnode1
= var21
;
7658 var_node_list
= var_pexprnode1
;
7659 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction721> */
7660 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
7661 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
7664 /* method parser#ReduceAction721#action for (self: Object, Parser) */
7665 void VIRTUAL_parser__ReduceAction721__action(val
* self
, val
* p0
) {
7666 parser__ReduceAction721__action(self
, p0
);
7669 /* method parser#ReduceAction722#action for (self: ReduceAction722, Parser) */
7670 void parser__ReduceAction722__action(val
* self
, val
* p0
) {
7671 val
* var_p
/* var p: Parser */;
7672 val
* var
/* : null */;
7673 val
* var_node_list
/* var node_list: nullable Object */;
7674 val
* var1
/* : nullable Object */;
7675 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7676 val
* var2
/* : nullable Object */;
7677 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7678 val
* var3
/* : nullable Object */;
7679 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7680 val
* var4
/* : nullable Object */;
7681 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7682 val
* var5
/* : AImplicitSelfExpr */;
7683 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
7684 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7685 short int var6
/* : Bool */;
7688 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7689 short int var7
/* : Bool */;
7692 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
7693 short int var10
/* : Bool */;
7696 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
7697 short int var13
/* : Bool */;
7700 val
* var16
/* : ACallReassignExpr */;
7701 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
7702 long var17
/* : Int */;
7703 long var18
/* : Int */;
7706 var_node_list
= var
;
7707 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7708 var_nodearraylist4
= var1
;
7709 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7710 var_nodearraylist3
= var2
;
7711 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7712 var_nodearraylist2
= var3
;
7713 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7714 var_nodearraylist1
= var4
;
7715 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
7716 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
7717 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
7718 var_pexprnode2
= var5
;
7719 var_tidnode3
= var_nodearraylist1
;
7720 /* <var_tidnode3:nullable Object> isa nullable TId */
7721 cltype
= type_nullable_parser_nodes__TId
.color
;
7722 idtype
= type_nullable_parser_nodes__TId
.id
;
7723 if(var_tidnode3
== NULL
) {
7726 if(cltype
>= var_tidnode3
->type
->table_size
) {
7729 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
7733 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27135);
7736 var_pexprsnode4
= var_nodearraylist2
;
7737 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7738 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
7739 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
7740 if(var_pexprsnode4
== NULL
) {
7743 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
7746 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
7750 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27137);
7753 var_passignopnode5
= var_nodearraylist3
;
7754 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
7755 cltype11
= type_nullable_parser_nodes__AAssignOp
.color
;
7756 idtype12
= type_nullable_parser_nodes__AAssignOp
.id
;
7757 if(var_passignopnode5
== NULL
) {
7760 if(cltype11
>= var_passignopnode5
->type
->table_size
) {
7763 var10
= var_passignopnode5
->type
->type_table
[cltype11
] == idtype12
;
7767 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27139);
7770 var_pexprnode6
= var_nodearraylist4
;
7771 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
7772 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
7773 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
7774 if(var_pexprnode6
== NULL
) {
7777 if(cltype14
>= var_pexprnode6
->type
->table_size
) {
7780 var13
= var_pexprnode6
->type
->type_table
[cltype14
] == idtype15
;
7784 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27141);
7787 var16
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
7788 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ACallReassignExpr__init_acallreassignexpr
]))(var16
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_passignopnode5
, var_pexprnode6
) /* init_acallreassignexpr on <var16:ACallReassignExpr>*/;
7789 CHECK_NEW_parser_nodes__ACallReassignExpr(var16
);
7790 var_pexprnode1
= var16
;
7791 var_node_list
= var_pexprnode1
;
7792 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction722> */
7793 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
7794 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
7797 /* method parser#ReduceAction722#action for (self: Object, Parser) */
7798 void VIRTUAL_parser__ReduceAction722__action(val
* self
, val
* p0
) {
7799 parser__ReduceAction722__action(self
, p0
);
7802 /* method parser#ReduceAction723#action for (self: ReduceAction723, Parser) */
7803 void parser__ReduceAction723__action(val
* self
, val
* p0
) {
7804 val
* var_p
/* var p: Parser */;
7805 val
* var
/* : null */;
7806 val
* var_node_list
/* var node_list: nullable Object */;
7807 val
* var1
/* : nullable Object */;
7808 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7809 val
* var2
/* : nullable Object */;
7810 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7811 val
* var3
/* : nullable Object */;
7812 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7813 val
* var4
/* : nullable Object */;
7814 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7815 val
* var5
/* : nullable Object */;
7816 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7817 val
* var6
/* : nullable Object */;
7818 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7819 val
* var7
/* : nullable Object */;
7820 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7821 val
* var8
/* : nullable Object */;
7822 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7823 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7824 short int var9
/* : Bool */;
7827 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7828 short int var10
/* : Bool */;
7831 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7832 short int var13
/* : Bool */;
7835 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
7836 short int var16
/* : Bool */;
7839 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
7840 short int var19
/* : Bool */;
7843 val
* var22
/* : ACallReassignExpr */;
7844 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
7845 long var23
/* : Int */;
7846 long var24
/* : Int */;
7849 var_node_list
= var
;
7850 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7851 var_nodearraylist8
= var1
;
7852 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7853 var_nodearraylist7
= var2
;
7854 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7855 var_nodearraylist6
= var3
;
7856 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7857 var_nodearraylist5
= var4
;
7858 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7859 var_nodearraylist4
= var5
;
7860 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7861 var_nodearraylist3
= var6
;
7862 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7863 var_nodearraylist2
= var7
;
7864 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7865 var_nodearraylist1
= var8
;
7866 var_pexprnode2
= var_nodearraylist1
;
7867 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7868 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7869 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7870 if(var_pexprnode2
== NULL
) {
7873 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7876 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7880 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27167);
7883 var_tidnode3
= var_nodearraylist5
;
7884 /* <var_tidnode3:nullable Object> isa nullable TId */
7885 cltype11
= type_nullable_parser_nodes__TId
.color
;
7886 idtype12
= type_nullable_parser_nodes__TId
.id
;
7887 if(var_tidnode3
== NULL
) {
7890 if(cltype11
>= var_tidnode3
->type
->table_size
) {
7893 var10
= var_tidnode3
->type
->type_table
[cltype11
] == idtype12
;
7897 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27169);
7900 var_pexprsnode4
= var_nodearraylist6
;
7901 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
7902 cltype14
= type_nullable_parser_nodes__AExprs
.color
;
7903 idtype15
= type_nullable_parser_nodes__AExprs
.id
;
7904 if(var_pexprsnode4
== NULL
) {
7907 if(cltype14
>= var_pexprsnode4
->type
->table_size
) {
7910 var13
= var_pexprsnode4
->type
->type_table
[cltype14
] == idtype15
;
7914 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27171);
7917 var_passignopnode5
= var_nodearraylist7
;
7918 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
7919 cltype17
= type_nullable_parser_nodes__AAssignOp
.color
;
7920 idtype18
= type_nullable_parser_nodes__AAssignOp
.id
;
7921 if(var_passignopnode5
== NULL
) {
7924 if(cltype17
>= var_passignopnode5
->type
->table_size
) {
7927 var16
= var_passignopnode5
->type
->type_table
[cltype17
] == idtype18
;
7931 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27173);
7934 var_pexprnode6
= var_nodearraylist8
;
7935 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
7936 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
7937 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
7938 if(var_pexprnode6
== NULL
) {
7941 if(cltype20
>= var_pexprnode6
->type
->table_size
) {
7944 var19
= var_pexprnode6
->type
->type_table
[cltype20
] == idtype21
;
7948 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27175);
7951 var22
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
7952 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var22
->class->vft
[COLOR_parser_prod__ACallReassignExpr__init_acallreassignexpr
]))(var22
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_passignopnode5
, var_pexprnode6
) /* init_acallreassignexpr on <var22:ACallReassignExpr>*/;
7953 CHECK_NEW_parser_nodes__ACallReassignExpr(var22
);
7954 var_pexprnode1
= var22
;
7955 var_node_list
= var_pexprnode1
;
7956 var23
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction723> */
7957 var24
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var23
) /* go_to on <var_p:Parser>*/;
7958 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var24
, var_node_list
) /* push on <var_p:Parser>*/;
7961 /* method parser#ReduceAction723#action for (self: Object, Parser) */
7962 void VIRTUAL_parser__ReduceAction723__action(val
* self
, val
* p0
) {
7963 parser__ReduceAction723__action(self
, p0
);
7966 /* method parser#ReduceAction724#action for (self: ReduceAction724, Parser) */
7967 void parser__ReduceAction724__action(val
* self
, val
* p0
) {
7968 val
* var_p
/* var p: Parser */;
7969 val
* var
/* : null */;
7970 val
* var_node_list
/* var node_list: nullable Object */;
7971 val
* var1
/* : nullable Object */;
7972 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7973 val
* var2
/* : nullable Object */;
7974 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7975 val
* var3
/* : nullable Object */;
7976 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7977 val
* var4
/* : nullable Object */;
7978 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7979 val
* var5
/* : nullable Object */;
7980 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7981 val
* var6
/* : nullable Object */;
7982 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7983 val
* var7
/* : nullable Object */;
7984 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7985 val
* var8
/* : nullable Object */;
7986 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7987 val
* var9
/* : nullable Object */;
7988 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7989 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7990 short int var10
/* : Bool */;
7993 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7994 short int var11
/* : Bool */;
7997 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
7998 short int var14
/* : Bool */;
8001 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
8002 short int var17
/* : Bool */;
8005 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
8006 short int var20
/* : Bool */;
8009 val
* var23
/* : ACallReassignExpr */;
8010 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
8011 long var24
/* : Int */;
8012 long var25
/* : Int */;
8015 var_node_list
= var
;
8016 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8017 var_nodearraylist9
= var1
;
8018 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8019 var_nodearraylist8
= var2
;
8020 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8021 var_nodearraylist7
= var3
;
8022 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8023 var_nodearraylist6
= var4
;
8024 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8025 var_nodearraylist5
= var5
;
8026 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8027 var_nodearraylist4
= var6
;
8028 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8029 var_nodearraylist3
= var7
;
8030 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8031 var_nodearraylist2
= var8
;
8032 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8033 var_nodearraylist1
= var9
;
8034 var_pexprnode2
= var_nodearraylist1
;
8035 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8036 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8037 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8038 if(var_pexprnode2
== NULL
) {
8041 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8044 var10
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8048 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27202);
8051 var_tidnode3
= var_nodearraylist6
;
8052 /* <var_tidnode3:nullable Object> isa nullable TId */
8053 cltype12
= type_nullable_parser_nodes__TId
.color
;
8054 idtype13
= type_nullable_parser_nodes__TId
.id
;
8055 if(var_tidnode3
== NULL
) {
8058 if(cltype12
>= var_tidnode3
->type
->table_size
) {
8061 var11
= var_tidnode3
->type
->type_table
[cltype12
] == idtype13
;
8065 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27204);
8068 var_pexprsnode4
= var_nodearraylist7
;
8069 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8070 cltype15
= type_nullable_parser_nodes__AExprs
.color
;
8071 idtype16
= type_nullable_parser_nodes__AExprs
.id
;
8072 if(var_pexprsnode4
== NULL
) {
8075 if(cltype15
>= var_pexprsnode4
->type
->table_size
) {
8078 var14
= var_pexprsnode4
->type
->type_table
[cltype15
] == idtype16
;
8082 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27206);
8085 var_passignopnode5
= var_nodearraylist8
;
8086 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
8087 cltype18
= type_nullable_parser_nodes__AAssignOp
.color
;
8088 idtype19
= type_nullable_parser_nodes__AAssignOp
.id
;
8089 if(var_passignopnode5
== NULL
) {
8092 if(cltype18
>= var_passignopnode5
->type
->table_size
) {
8095 var17
= var_passignopnode5
->type
->type_table
[cltype18
] == idtype19
;
8099 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27208);
8102 var_pexprnode6
= var_nodearraylist9
;
8103 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
8104 cltype21
= type_nullable_parser_nodes__AExpr
.color
;
8105 idtype22
= type_nullable_parser_nodes__AExpr
.id
;
8106 if(var_pexprnode6
== NULL
) {
8109 if(cltype21
>= var_pexprnode6
->type
->table_size
) {
8112 var20
= var_pexprnode6
->type
->type_table
[cltype21
] == idtype22
;
8116 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27210);
8119 var23
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
8120 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var23
->class->vft
[COLOR_parser_prod__ACallReassignExpr__init_acallreassignexpr
]))(var23
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_passignopnode5
, var_pexprnode6
) /* init_acallreassignexpr on <var23:ACallReassignExpr>*/;
8121 CHECK_NEW_parser_nodes__ACallReassignExpr(var23
);
8122 var_pexprnode1
= var23
;
8123 var_node_list
= var_pexprnode1
;
8124 var24
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction724> */
8125 var25
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var24
) /* go_to on <var_p:Parser>*/;
8126 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var25
, var_node_list
) /* push on <var_p:Parser>*/;
8129 /* method parser#ReduceAction724#action for (self: Object, Parser) */
8130 void VIRTUAL_parser__ReduceAction724__action(val
* self
, val
* p0
) {
8131 parser__ReduceAction724__action(self
, p0
);
8134 /* method parser#ReduceAction726#action for (self: ReduceAction726, Parser) */
8135 void parser__ReduceAction726__action(val
* self
, val
* p0
) {
8136 val
* var_p
/* var p: Parser */;
8137 val
* var
/* : null */;
8138 val
* var_node_list
/* var node_list: nullable Object */;
8139 val
* var1
/* : nullable Object */;
8140 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8141 val
* var2
/* : nullable Object */;
8142 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8143 val
* var3
/* : nullable Object */;
8144 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8145 val
* var4
/* : nullable Object */;
8146 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8147 val
* var5
/* : nullable Object */;
8148 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8149 val
* var6
/* : AImplicitSelfExpr */;
8150 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
8151 val
* var_tidnode3
/* var tidnode3: nullable Object */;
8152 short int var7
/* : Bool */;
8155 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8156 short int var8
/* : Bool */;
8159 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
8160 short int var11
/* : Bool */;
8163 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
8164 short int var14
/* : Bool */;
8167 val
* var17
/* : ACallReassignExpr */;
8168 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
8169 long var18
/* : Int */;
8170 long var19
/* : Int */;
8173 var_node_list
= var
;
8174 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8175 var_nodearraylist5
= var1
;
8176 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8177 var_nodearraylist4
= var2
;
8178 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8179 var_nodearraylist3
= var3
;
8180 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8181 var_nodearraylist2
= var4
;
8182 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8183 var_nodearraylist1
= var5
;
8184 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
8185 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
8186 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var6
);
8187 var_pexprnode2
= var6
;
8188 var_tidnode3
= var_nodearraylist2
;
8189 /* <var_tidnode3:nullable Object> isa nullable TId */
8190 cltype
= type_nullable_parser_nodes__TId
.color
;
8191 idtype
= type_nullable_parser_nodes__TId
.id
;
8192 if(var_tidnode3
== NULL
) {
8195 if(cltype
>= var_tidnode3
->type
->table_size
) {
8198 var7
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
8202 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27234);
8205 var_pexprsnode4
= var_nodearraylist3
;
8206 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8207 cltype9
= type_nullable_parser_nodes__AExprs
.color
;
8208 idtype10
= type_nullable_parser_nodes__AExprs
.id
;
8209 if(var_pexprsnode4
== NULL
) {
8212 if(cltype9
>= var_pexprsnode4
->type
->table_size
) {
8215 var8
= var_pexprsnode4
->type
->type_table
[cltype9
] == idtype10
;
8219 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27236);
8222 var_passignopnode5
= var_nodearraylist4
;
8223 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
8224 cltype12
= type_nullable_parser_nodes__AAssignOp
.color
;
8225 idtype13
= type_nullable_parser_nodes__AAssignOp
.id
;
8226 if(var_passignopnode5
== NULL
) {
8229 if(cltype12
>= var_passignopnode5
->type
->table_size
) {
8232 var11
= var_passignopnode5
->type
->type_table
[cltype12
] == idtype13
;
8236 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27238);
8239 var_pexprnode6
= var_nodearraylist5
;
8240 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
8241 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
8242 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
8243 if(var_pexprnode6
== NULL
) {
8246 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
8249 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
8253 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27240);
8256 var17
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
8257 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__ACallReassignExpr__init_acallreassignexpr
]))(var17
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_passignopnode5
, var_pexprnode6
) /* init_acallreassignexpr on <var17:ACallReassignExpr>*/;
8258 CHECK_NEW_parser_nodes__ACallReassignExpr(var17
);
8259 var_pexprnode1
= var17
;
8260 var_node_list
= var_pexprnode1
;
8261 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction726> */
8262 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
8263 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
8266 /* method parser#ReduceAction726#action for (self: Object, Parser) */
8267 void VIRTUAL_parser__ReduceAction726__action(val
* self
, val
* p0
) {
8268 parser__ReduceAction726__action(self
, p0
);
8271 /* method parser#ReduceAction727#action for (self: ReduceAction727, Parser) */
8272 void parser__ReduceAction727__action(val
* self
, val
* p0
) {
8273 val
* var_p
/* var p: Parser */;
8274 val
* var
/* : null */;
8275 val
* var_node_list
/* var node_list: nullable Object */;
8276 val
* var1
/* : nullable Object */;
8277 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8278 val
* var2
/* : nullable Object */;
8279 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8280 val
* var3
/* : nullable Object */;
8281 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8282 val
* var4
/* : nullable Object */;
8283 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8284 val
* var5
/* : nullable Object */;
8285 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8286 val
* var6
/* : nullable Object */;
8287 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8288 val
* var7
/* : AImplicitSelfExpr */;
8289 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
8290 val
* var_tidnode3
/* var tidnode3: nullable Object */;
8291 short int var8
/* : Bool */;
8294 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
8295 short int var9
/* : Bool */;
8298 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
8299 short int var12
/* : Bool */;
8302 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
8303 short int var15
/* : Bool */;
8306 val
* var18
/* : ACallReassignExpr */;
8307 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
8308 long var19
/* : Int */;
8309 long var20
/* : Int */;
8312 var_node_list
= var
;
8313 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8314 var_nodearraylist6
= var1
;
8315 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8316 var_nodearraylist5
= var2
;
8317 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8318 var_nodearraylist4
= var3
;
8319 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8320 var_nodearraylist3
= var4
;
8321 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8322 var_nodearraylist2
= var5
;
8323 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8324 var_nodearraylist1
= var6
;
8325 var7
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
8326 ((void (*)(val
*))(var7
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var7
) /* init_aimplicitselfexpr on <var7:AImplicitSelfExpr>*/;
8327 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var7
);
8328 var_pexprnode2
= var7
;
8329 var_tidnode3
= var_nodearraylist3
;
8330 /* <var_tidnode3:nullable Object> isa nullable TId */
8331 cltype
= type_nullable_parser_nodes__TId
.color
;
8332 idtype
= type_nullable_parser_nodes__TId
.id
;
8333 if(var_tidnode3
== NULL
) {
8336 if(cltype
>= var_tidnode3
->type
->table_size
) {
8339 var8
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
8343 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27265);
8346 var_pexprsnode4
= var_nodearraylist4
;
8347 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
8348 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
8349 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
8350 if(var_pexprsnode4
== NULL
) {
8353 if(cltype10
>= var_pexprsnode4
->type
->table_size
) {
8356 var9
= var_pexprsnode4
->type
->type_table
[cltype10
] == idtype11
;
8360 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27267);
8363 var_passignopnode5
= var_nodearraylist5
;
8364 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
8365 cltype13
= type_nullable_parser_nodes__AAssignOp
.color
;
8366 idtype14
= type_nullable_parser_nodes__AAssignOp
.id
;
8367 if(var_passignopnode5
== NULL
) {
8370 if(cltype13
>= var_passignopnode5
->type
->table_size
) {
8373 var12
= var_passignopnode5
->type
->type_table
[cltype13
] == idtype14
;
8377 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27269);
8380 var_pexprnode6
= var_nodearraylist6
;
8381 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
8382 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
8383 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
8384 if(var_pexprnode6
== NULL
) {
8387 if(cltype16
>= var_pexprnode6
->type
->table_size
) {
8390 var15
= var_pexprnode6
->type
->type_table
[cltype16
] == idtype17
;
8394 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27271);
8397 var18
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
8398 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var18
->class->vft
[COLOR_parser_prod__ACallReassignExpr__init_acallreassignexpr
]))(var18
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
, var_passignopnode5
, var_pexprnode6
) /* init_acallreassignexpr on <var18:ACallReassignExpr>*/;
8399 CHECK_NEW_parser_nodes__ACallReassignExpr(var18
);
8400 var_pexprnode1
= var18
;
8401 var_node_list
= var_pexprnode1
;
8402 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction727> */
8403 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
8404 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
8407 /* method parser#ReduceAction727#action for (self: Object, Parser) */
8408 void VIRTUAL_parser__ReduceAction727__action(val
* self
, val
* p0
) {
8409 parser__ReduceAction727__action(self
, p0
);
8412 /* method parser#ReduceAction729#action for (self: ReduceAction729, Parser) */
8413 void parser__ReduceAction729__action(val
* self
, val
* p0
) {
8414 val
* var_p
/* var p: Parser */;
8415 val
* var
/* : null */;
8416 val
* var_node_list
/* var node_list: nullable Object */;
8417 val
* var1
/* : nullable Object */;
8418 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8419 val
* var2
/* : nullable Object */;
8420 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8421 val
* var3
/* : nullable Object */;
8422 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8423 val
* var4
/* : nullable Object */;
8424 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8425 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8426 short int var5
/* : Bool */;
8429 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
8430 short int var6
/* : Bool */;
8433 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
8434 short int var9
/* : Bool */;
8437 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
8438 short int var12
/* : Bool */;
8441 val
* var15
/* : ABraReassignExpr */;
8442 val
* var_pexprnode1
/* var pexprnode1: nullable ABraReassignExpr */;
8443 long var16
/* : Int */;
8444 long var17
/* : Int */;
8447 var_node_list
= var
;
8448 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8449 var_nodearraylist4
= var1
;
8450 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8451 var_nodearraylist3
= var2
;
8452 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8453 var_nodearraylist2
= var3
;
8454 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8455 var_nodearraylist1
= var4
;
8456 var_pexprnode2
= var_nodearraylist1
;
8457 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8458 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8459 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8460 if(var_pexprnode2
== NULL
) {
8463 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8466 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8470 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27293);
8473 var_pexprsnode3
= var_nodearraylist2
;
8474 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
8475 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
8476 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
8477 if(var_pexprsnode3
== NULL
) {
8480 if(cltype7
>= var_pexprsnode3
->type
->table_size
) {
8483 var6
= var_pexprsnode3
->type
->type_table
[cltype7
] == idtype8
;
8487 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27295);
8490 var_passignopnode4
= var_nodearraylist3
;
8491 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
8492 cltype10
= type_nullable_parser_nodes__AAssignOp
.color
;
8493 idtype11
= type_nullable_parser_nodes__AAssignOp
.id
;
8494 if(var_passignopnode4
== NULL
) {
8497 if(cltype10
>= var_passignopnode4
->type
->table_size
) {
8500 var9
= var_passignopnode4
->type
->type_table
[cltype10
] == idtype11
;
8504 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27297);
8507 var_pexprnode5
= var_nodearraylist4
;
8508 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
8509 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
8510 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
8511 if(var_pexprnode5
== NULL
) {
8514 if(cltype13
>= var_pexprnode5
->type
->table_size
) {
8517 var12
= var_pexprnode5
->type
->type_table
[cltype13
] == idtype14
;
8521 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27299);
8524 var15
= NEW_parser_nodes__ABraReassignExpr(&type_parser_nodes__ABraReassignExpr
);
8525 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ABraReassignExpr__init_abrareassignexpr
]))(var15
, var_pexprnode2
, var_pexprsnode3
, var_passignopnode4
, var_pexprnode5
) /* init_abrareassignexpr on <var15:ABraReassignExpr>*/;
8526 CHECK_NEW_parser_nodes__ABraReassignExpr(var15
);
8527 var_pexprnode1
= var15
;
8528 var_node_list
= var_pexprnode1
;
8529 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction729> */
8530 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
8531 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
8534 /* method parser#ReduceAction729#action for (self: Object, Parser) */
8535 void VIRTUAL_parser__ReduceAction729__action(val
* self
, val
* p0
) {
8536 parser__ReduceAction729__action(self
, p0
);
8539 /* method parser#ReduceAction730#action for (self: ReduceAction730, Parser) */
8540 void parser__ReduceAction730__action(val
* self
, val
* p0
) {
8541 val
* var_p
/* var p: Parser */;
8542 val
* var
/* : null */;
8543 val
* var_node_list
/* var node_list: nullable Object */;
8544 val
* var1
/* : nullable Object */;
8545 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8546 val
* var_tpluseqnode2
/* var tpluseqnode2: nullable Object */;
8547 short int var2
/* : Bool */;
8550 val
* var3
/* : APlusAssignOp */;
8551 val
* var_passignopnode1
/* var passignopnode1: nullable APlusAssignOp */;
8552 long var4
/* : Int */;
8553 long var5
/* : Int */;
8556 var_node_list
= var
;
8557 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8558 var_nodearraylist1
= var1
;
8559 var_tpluseqnode2
= var_nodearraylist1
;
8560 /* <var_tpluseqnode2:nullable Object> isa nullable TPluseq */
8561 cltype
= type_nullable_parser_nodes__TPluseq
.color
;
8562 idtype
= type_nullable_parser_nodes__TPluseq
.id
;
8563 if(var_tpluseqnode2
== NULL
) {
8566 if(cltype
>= var_tpluseqnode2
->type
->table_size
) {
8569 var2
= var_tpluseqnode2
->type
->type_table
[cltype
] == idtype
;
8573 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27317);
8576 var3
= NEW_parser_nodes__APlusAssignOp(&type_parser_nodes__APlusAssignOp
);
8577 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APlusAssignOp__init_aplusassignop
]))(var3
, var_tpluseqnode2
) /* init_aplusassignop on <var3:APlusAssignOp>*/;
8578 CHECK_NEW_parser_nodes__APlusAssignOp(var3
);
8579 var_passignopnode1
= var3
;
8580 var_node_list
= var_passignopnode1
;
8581 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction730> */
8582 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8583 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8586 /* method parser#ReduceAction730#action for (self: Object, Parser) */
8587 void VIRTUAL_parser__ReduceAction730__action(val
* self
, val
* p0
) {
8588 parser__ReduceAction730__action(self
, p0
);
8591 /* method parser#ReduceAction731#action for (self: ReduceAction731, Parser) */
8592 void parser__ReduceAction731__action(val
* self
, val
* p0
) {
8593 val
* var_p
/* var p: Parser */;
8594 val
* var
/* : null */;
8595 val
* var_node_list
/* var node_list: nullable Object */;
8596 val
* var1
/* : nullable Object */;
8597 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8598 val
* var_tminuseqnode2
/* var tminuseqnode2: nullable Object */;
8599 short int var2
/* : Bool */;
8602 val
* var3
/* : AMinusAssignOp */;
8603 val
* var_passignopnode1
/* var passignopnode1: nullable AMinusAssignOp */;
8604 long var4
/* : Int */;
8605 long var5
/* : Int */;
8608 var_node_list
= var
;
8609 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8610 var_nodearraylist1
= var1
;
8611 var_tminuseqnode2
= var_nodearraylist1
;
8612 /* <var_tminuseqnode2:nullable Object> isa nullable TMinuseq */
8613 cltype
= type_nullable_parser_nodes__TMinuseq
.color
;
8614 idtype
= type_nullable_parser_nodes__TMinuseq
.id
;
8615 if(var_tminuseqnode2
== NULL
) {
8618 if(cltype
>= var_tminuseqnode2
->type
->table_size
) {
8621 var2
= var_tminuseqnode2
->type
->type_table
[cltype
] == idtype
;
8625 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27332);
8628 var3
= NEW_parser_nodes__AMinusAssignOp(&type_parser_nodes__AMinusAssignOp
);
8629 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AMinusAssignOp__init_aminusassignop
]))(var3
, var_tminuseqnode2
) /* init_aminusassignop on <var3:AMinusAssignOp>*/;
8630 CHECK_NEW_parser_nodes__AMinusAssignOp(var3
);
8631 var_passignopnode1
= var3
;
8632 var_node_list
= var_passignopnode1
;
8633 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction731> */
8634 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8635 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8638 /* method parser#ReduceAction731#action for (self: Object, Parser) */
8639 void VIRTUAL_parser__ReduceAction731__action(val
* self
, val
* p0
) {
8640 parser__ReduceAction731__action(self
, p0
);
8643 /* method parser#ReduceAction732#action for (self: ReduceAction732, Parser) */
8644 void parser__ReduceAction732__action(val
* self
, val
* p0
) {
8645 val
* var_p
/* var p: Parser */;
8646 val
* var
/* : null */;
8647 val
* var_node_list
/* var node_list: nullable Object */;
8648 val
* var1
/* : nullable Object */;
8649 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8650 val
* var2
/* : nullable Object */;
8651 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8652 val
* var3
/* : nullable Object */;
8653 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8654 val
* var_tkwdonode2
/* var tkwdonode2: nullable Object */;
8655 short int var4
/* : Bool */;
8658 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8659 short int var5
/* : Bool */;
8662 val
* var_plabelnode4
/* var plabelnode4: nullable Object */;
8663 short int var8
/* : Bool */;
8666 val
* var11
/* : ADoExpr */;
8667 val
* var_pexprnode1
/* var pexprnode1: nullable ADoExpr */;
8668 long var12
/* : Int */;
8669 long var13
/* : Int */;
8672 var_node_list
= var
;
8673 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8674 var_nodearraylist3
= var1
;
8675 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8676 var_nodearraylist2
= var2
;
8677 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8678 var_nodearraylist1
= var3
;
8679 var_tkwdonode2
= var_nodearraylist1
;
8680 /* <var_tkwdonode2:nullable Object> isa nullable TKwdo */
8681 cltype
= type_nullable_parser_nodes__TKwdo
.color
;
8682 idtype
= type_nullable_parser_nodes__TKwdo
.id
;
8683 if(var_tkwdonode2
== NULL
) {
8686 if(cltype
>= var_tkwdonode2
->type
->table_size
) {
8689 var4
= var_tkwdonode2
->type
->type_table
[cltype
] == idtype
;
8693 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27349);
8696 var_pexprnode3
= var_nodearraylist2
;
8697 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8698 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
8699 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
8700 if(var_pexprnode3
== NULL
) {
8703 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
8706 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
8710 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27351);
8713 var_plabelnode4
= var_nodearraylist3
;
8714 /* <var_plabelnode4:nullable Object> isa nullable ALabel */
8715 cltype9
= type_nullable_parser_nodes__ALabel
.color
;
8716 idtype10
= type_nullable_parser_nodes__ALabel
.id
;
8717 if(var_plabelnode4
== NULL
) {
8720 if(cltype9
>= var_plabelnode4
->type
->table_size
) {
8723 var8
= var_plabelnode4
->type
->type_table
[cltype9
] == idtype10
;
8727 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27353);
8730 var11
= NEW_parser_nodes__ADoExpr(&type_parser_nodes__ADoExpr
);
8731 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ADoExpr__init_adoexpr
]))(var11
, var_tkwdonode2
, var_pexprnode3
, var_plabelnode4
) /* init_adoexpr on <var11:ADoExpr>*/;
8732 CHECK_NEW_parser_nodes__ADoExpr(var11
);
8733 var_pexprnode1
= var11
;
8734 var_node_list
= var_pexprnode1
;
8735 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction732> */
8736 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
8737 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
8740 /* method parser#ReduceAction732#action for (self: Object, Parser) */
8741 void VIRTUAL_parser__ReduceAction732__action(val
* self
, val
* p0
) {
8742 parser__ReduceAction732__action(self
, p0
);
8745 /* method parser#ReduceAction733#action for (self: ReduceAction733, Parser) */
8746 void parser__ReduceAction733__action(val
* self
, val
* p0
) {
8747 val
* var_p
/* var p: Parser */;
8748 val
* var
/* : null */;
8749 val
* var_node_list
/* var node_list: nullable Object */;
8750 val
* var1
/* : nullable Object */;
8751 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8752 val
* var2
/* : nullable Object */;
8753 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8754 val
* var_tkwdonode2
/* var tkwdonode2: nullable Object */;
8755 short int var3
/* : Bool */;
8758 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8759 short int var4
/* : Bool */;
8762 val
* var7
/* : ADoExpr */;
8763 val
* var8
/* : null */;
8764 val
* var_pexprnode1
/* var pexprnode1: nullable ADoExpr */;
8765 long var9
/* : Int */;
8766 long var10
/* : Int */;
8769 var_node_list
= var
;
8770 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8771 var_nodearraylist2
= var1
;
8772 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8773 var_nodearraylist1
= var2
;
8774 var_tkwdonode2
= var_nodearraylist1
;
8775 /* <var_tkwdonode2:nullable Object> isa nullable TKwdo */
8776 cltype
= type_nullable_parser_nodes__TKwdo
.color
;
8777 idtype
= type_nullable_parser_nodes__TKwdo
.id
;
8778 if(var_tkwdonode2
== NULL
) {
8781 if(cltype
>= var_tkwdonode2
->type
->table_size
) {
8784 var3
= var_tkwdonode2
->type
->type_table
[cltype
] == idtype
;
8788 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27371);
8791 var_pexprnode3
= var_nodearraylist2
;
8792 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8793 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
8794 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
8795 if(var_pexprnode3
== NULL
) {
8798 if(cltype5
>= var_pexprnode3
->type
->table_size
) {
8801 var4
= var_pexprnode3
->type
->type_table
[cltype5
] == idtype6
;
8805 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27373);
8808 var7
= NEW_parser_nodes__ADoExpr(&type_parser_nodes__ADoExpr
);
8810 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ADoExpr__init_adoexpr
]))(var7
, var_tkwdonode2
, var_pexprnode3
, var8
) /* init_adoexpr on <var7:ADoExpr>*/;
8811 CHECK_NEW_parser_nodes__ADoExpr(var7
);
8812 var_pexprnode1
= var7
;
8813 var_node_list
= var_pexprnode1
;
8814 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction733> */
8815 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8816 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8819 /* method parser#ReduceAction733#action for (self: Object, Parser) */
8820 void VIRTUAL_parser__ReduceAction733__action(val
* self
, val
* p0
) {
8821 parser__ReduceAction733__action(self
, p0
);
8824 /* method parser#ReduceAction734#action for (self: ReduceAction734, Parser) */
8825 void parser__ReduceAction734__action(val
* self
, val
* p0
) {
8826 val
* var_p
/* var p: Parser */;
8827 val
* var
/* : null */;
8828 val
* var_node_list
/* var node_list: nullable Object */;
8829 val
* var1
/* : nullable Object */;
8830 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
8831 val
* var2
/* : nullable Object */;
8832 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
8833 val
* var3
/* : nullable Object */;
8834 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8835 val
* var4
/* : nullable Object */;
8836 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8837 val
* var5
/* : nullable Object */;
8838 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8839 val
* var6
/* : nullable Object */;
8840 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8841 val
* var7
/* : nullable Object */;
8842 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8843 val
* var8
/* : nullable Object */;
8844 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8845 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
8846 short int var9
/* : Bool */;
8849 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8850 short int var10
/* : Bool */;
8853 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8854 short int var13
/* : Bool */;
8857 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
8858 short int var16
/* : Bool */;
8861 val
* var19
/* : AIfExpr */;
8862 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
8863 long var20
/* : Int */;
8864 long var21
/* : Int */;
8867 var_node_list
= var
;
8868 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8869 var_nodearraylist8
= var1
;
8870 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8871 var_nodearraylist7
= var2
;
8872 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8873 var_nodearraylist6
= var3
;
8874 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8875 var_nodearraylist5
= var4
;
8876 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8877 var_nodearraylist4
= var5
;
8878 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8879 var_nodearraylist3
= var6
;
8880 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8881 var_nodearraylist2
= var7
;
8882 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8883 var_nodearraylist1
= var8
;
8884 var_tkwifnode2
= var_nodearraylist1
;
8885 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
8886 cltype
= type_nullable_parser_nodes__TKwif
.color
;
8887 idtype
= type_nullable_parser_nodes__TKwif
.id
;
8888 if(var_tkwifnode2
== NULL
) {
8891 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
8894 var9
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
8898 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27397);
8901 var_pexprnode3
= var_nodearraylist3
;
8902 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8903 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
8904 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
8905 if(var_pexprnode3
== NULL
) {
8908 if(cltype11
>= var_pexprnode3
->type
->table_size
) {
8911 var10
= var_pexprnode3
->type
->type_table
[cltype11
] == idtype12
;
8915 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27399);
8918 var_pexprnode4
= var_nodearraylist6
;
8919 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8920 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
8921 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
8922 if(var_pexprnode4
== NULL
) {
8925 if(cltype14
>= var_pexprnode4
->type
->table_size
) {
8928 var13
= var_pexprnode4
->type
->type_table
[cltype14
] == idtype15
;
8932 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27401);
8935 var_pexprnode5
= var_nodearraylist8
;
8936 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
8937 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
8938 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
8939 if(var_pexprnode5
== NULL
) {
8942 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
8945 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
8949 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27403);
8952 var19
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
8953 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__AIfExpr__init_aifexpr
]))(var19
, var_tkwifnode2
, var_pexprnode3
, var_pexprnode4
, var_pexprnode5
) /* init_aifexpr on <var19:AIfExpr>*/;
8954 CHECK_NEW_parser_nodes__AIfExpr(var19
);
8955 var_pexprnode1
= var19
;
8956 var_node_list
= var_pexprnode1
;
8957 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction734> */
8958 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
8959 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
8962 /* method parser#ReduceAction734#action for (self: Object, Parser) */
8963 void VIRTUAL_parser__ReduceAction734__action(val
* self
, val
* p0
) {
8964 parser__ReduceAction734__action(self
, p0
);
8967 /* method parser#ReduceAction735#action for (self: ReduceAction735, Parser) */
8968 void parser__ReduceAction735__action(val
* self
, val
* p0
) {
8969 val
* var_p
/* var p: Parser */;
8970 val
* var
/* : null */;
8971 val
* var_node_list
/* var node_list: nullable Object */;
8972 val
* var1
/* : nullable Object */;
8973 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
8974 val
* var2
/* : nullable Object */;
8975 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8976 val
* var3
/* : nullable Object */;
8977 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8978 val
* var4
/* : nullable Object */;
8979 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8980 val
* var5
/* : nullable Object */;
8981 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8982 val
* var6
/* : nullable Object */;
8983 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8984 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
8985 short int var7
/* : Bool */;
8988 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8989 short int var8
/* : Bool */;
8992 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8993 short int var11
/* : Bool */;
8996 val
* var14
/* : AIfExpr */;
8997 val
* var15
/* : null */;
8998 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
8999 long var16
/* : Int */;
9000 long var17
/* : Int */;
9003 var_node_list
= var
;
9004 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9005 var_nodearraylist6
= var1
;
9006 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9007 var_nodearraylist5
= var2
;
9008 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9009 var_nodearraylist4
= var3
;
9010 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9011 var_nodearraylist3
= var4
;
9012 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9013 var_nodearraylist2
= var5
;
9014 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9015 var_nodearraylist1
= var6
;
9016 var_tkwifnode2
= var_nodearraylist1
;
9017 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
9018 cltype
= type_nullable_parser_nodes__TKwif
.color
;
9019 idtype
= type_nullable_parser_nodes__TKwif
.id
;
9020 if(var_tkwifnode2
== NULL
) {
9023 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
9026 var7
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
9030 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27426);
9033 var_pexprnode3
= var_nodearraylist3
;
9034 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9035 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
9036 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
9037 if(var_pexprnode3
== NULL
) {
9040 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
9043 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
9047 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27428);
9050 var_pexprnode4
= var_nodearraylist6
;
9051 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9052 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
9053 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
9054 if(var_pexprnode4
== NULL
) {
9057 if(cltype12
>= var_pexprnode4
->type
->table_size
) {
9060 var11
= var_pexprnode4
->type
->type_table
[cltype12
] == idtype13
;
9064 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27430);
9067 var14
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
9069 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AIfExpr__init_aifexpr
]))(var14
, var_tkwifnode2
, var_pexprnode3
, var_pexprnode4
, var15
) /* init_aifexpr on <var14:AIfExpr>*/;
9070 CHECK_NEW_parser_nodes__AIfExpr(var14
);
9071 var_pexprnode1
= var14
;
9072 var_node_list
= var_pexprnode1
;
9073 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction735> */
9074 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
9075 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
9078 /* method parser#ReduceAction735#action for (self: Object, Parser) */
9079 void VIRTUAL_parser__ReduceAction735__action(val
* self
, val
* p0
) {
9080 parser__ReduceAction735__action(self
, p0
);
9083 /* method parser#ReduceAction736#action for (self: ReduceAction736, Parser) */
9084 void parser__ReduceAction736__action(val
* self
, val
* p0
) {
9085 val
* var_p
/* var p: Parser */;
9086 val
* var
/* : null */;
9087 val
* var_node_list
/* var node_list: nullable Object */;
9088 val
* var1
/* : nullable Object */;
9089 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
9090 val
* var2
/* : nullable Object */;
9091 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9092 val
* var3
/* : nullable Object */;
9093 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9094 val
* var4
/* : nullable Object */;
9095 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9096 val
* var5
/* : nullable Object */;
9097 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9098 val
* var6
/* : nullable Object */;
9099 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9100 val
* var7
/* : nullable Object */;
9101 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9102 val
* var8
/* : nullable Object */;
9103 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9104 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
9105 short int var9
/* : Bool */;
9108 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9109 short int var10
/* : Bool */;
9112 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9113 short int var13
/* : Bool */;
9116 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
9117 short int var16
/* : Bool */;
9120 val
* var19
/* : AIfExpr */;
9121 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
9122 long var20
/* : Int */;
9123 long var21
/* : Int */;
9126 var_node_list
= var
;
9127 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9128 var_nodearraylist8
= var1
;
9129 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9130 var_nodearraylist7
= var2
;
9131 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9132 var_nodearraylist6
= var3
;
9133 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9134 var_nodearraylist5
= var4
;
9135 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9136 var_nodearraylist4
= var5
;
9137 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9138 var_nodearraylist3
= var6
;
9139 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9140 var_nodearraylist2
= var7
;
9141 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9142 var_nodearraylist1
= var8
;
9143 var_tkwifnode2
= var_nodearraylist1
;
9144 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
9145 cltype
= type_nullable_parser_nodes__TKwif
.color
;
9146 idtype
= type_nullable_parser_nodes__TKwif
.id
;
9147 if(var_tkwifnode2
== NULL
) {
9150 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
9153 var9
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
9157 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27455);
9160 var_pexprnode3
= var_nodearraylist3
;
9161 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9162 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
9163 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
9164 if(var_pexprnode3
== NULL
) {
9167 if(cltype11
>= var_pexprnode3
->type
->table_size
) {
9170 var10
= var_pexprnode3
->type
->type_table
[cltype11
] == idtype12
;
9174 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27457);
9177 var_pexprnode4
= var_nodearraylist7
;
9178 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9179 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
9180 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
9181 if(var_pexprnode4
== NULL
) {
9184 if(cltype14
>= var_pexprnode4
->type
->table_size
) {
9187 var13
= var_pexprnode4
->type
->type_table
[cltype14
] == idtype15
;
9191 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27459);
9194 var_pexprnode5
= var_nodearraylist8
;
9195 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
9196 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
9197 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
9198 if(var_pexprnode5
== NULL
) {
9201 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
9204 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
9208 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27461);
9211 var19
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
9212 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__AIfExpr__init_aifexpr
]))(var19
, var_tkwifnode2
, var_pexprnode3
, var_pexprnode4
, var_pexprnode5
) /* init_aifexpr on <var19:AIfExpr>*/;
9213 CHECK_NEW_parser_nodes__AIfExpr(var19
);
9214 var_pexprnode1
= var19
;
9215 var_node_list
= var_pexprnode1
;
9216 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction736> */
9217 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
9218 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
9221 /* method parser#ReduceAction736#action for (self: Object, Parser) */
9222 void VIRTUAL_parser__ReduceAction736__action(val
* self
, val
* p0
) {
9223 parser__ReduceAction736__action(self
, p0
);
9226 /* method parser#ReduceAction737#action for (self: ReduceAction737, Parser) */
9227 void parser__ReduceAction737__action(val
* self
, val
* p0
) {
9228 val
* var_p
/* var p: Parser */;
9229 val
* var
/* : null */;
9230 val
* var_node_list
/* var node_list: nullable Object */;
9231 val
* var1
/* : nullable Object */;
9232 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9233 val
* var2
/* : nullable Object */;
9234 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9235 val
* var3
/* : nullable Object */;
9236 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9237 val
* var4
/* : nullable Object */;
9238 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9239 val
* var5
/* : nullable Object */;
9240 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9241 val
* var6
/* : nullable Object */;
9242 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9243 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
9244 short int var7
/* : Bool */;
9247 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9248 short int var8
/* : Bool */;
9251 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
9252 short int var11
/* : Bool */;
9255 val
* var14
/* : AIfExpr */;
9256 val
* var15
/* : null */;
9257 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
9258 long var16
/* : Int */;
9259 long var17
/* : Int */;
9262 var_node_list
= var
;
9263 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9264 var_nodearraylist6
= var1
;
9265 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9266 var_nodearraylist5
= var2
;
9267 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9268 var_nodearraylist4
= var3
;
9269 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9270 var_nodearraylist3
= var4
;
9271 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9272 var_nodearraylist2
= var5
;
9273 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9274 var_nodearraylist1
= var6
;
9275 var_tkwifnode2
= var_nodearraylist1
;
9276 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
9277 cltype
= type_nullable_parser_nodes__TKwif
.color
;
9278 idtype
= type_nullable_parser_nodes__TKwif
.id
;
9279 if(var_tkwifnode2
== NULL
) {
9282 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
9285 var7
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
9289 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27484);
9292 var_pexprnode3
= var_nodearraylist3
;
9293 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9294 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
9295 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
9296 if(var_pexprnode3
== NULL
) {
9299 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
9302 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
9306 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27486);
9309 var_pexprnode5
= var_nodearraylist6
;
9310 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
9311 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
9312 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
9313 if(var_pexprnode5
== NULL
) {
9316 if(cltype12
>= var_pexprnode5
->type
->table_size
) {
9319 var11
= var_pexprnode5
->type
->type_table
[cltype12
] == idtype13
;
9323 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27488);
9326 var14
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
9328 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AIfExpr__init_aifexpr
]))(var14
, var_tkwifnode2
, var_pexprnode3
, var15
, var_pexprnode5
) /* init_aifexpr on <var14:AIfExpr>*/;
9329 CHECK_NEW_parser_nodes__AIfExpr(var14
);
9330 var_pexprnode1
= var14
;
9331 var_node_list
= var_pexprnode1
;
9332 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction737> */
9333 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
9334 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
9337 /* method parser#ReduceAction737#action for (self: Object, Parser) */
9338 void VIRTUAL_parser__ReduceAction737__action(val
* self
, val
* p0
) {
9339 parser__ReduceAction737__action(self
, p0
);
9342 /* method parser#ReduceAction738#action for (self: ReduceAction738, Parser) */
9343 void parser__ReduceAction738__action(val
* self
, val
* p0
) {
9344 val
* var_p
/* var p: Parser */;
9345 val
* var
/* : null */;
9346 val
* var_node_list
/* var node_list: nullable Object */;
9347 val
* var1
/* : nullable Object */;
9348 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9349 val
* var2
/* : nullable Object */;
9350 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9351 val
* var3
/* : nullable Object */;
9352 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9353 val
* var4
/* : nullable Object */;
9354 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9355 val
* var5
/* : nullable Object */;
9356 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9357 val
* var6
/* : nullable Object */;
9358 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9359 val
* var7
/* : nullable Object */;
9360 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9361 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
9362 short int var8
/* : Bool */;
9365 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9366 short int var9
/* : Bool */;
9369 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
9370 short int var12
/* : Bool */;
9373 val
* var15
/* : AIfExpr */;
9374 val
* var16
/* : null */;
9375 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
9376 long var17
/* : Int */;
9377 long var18
/* : Int */;
9380 var_node_list
= var
;
9381 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9382 var_nodearraylist7
= var1
;
9383 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9384 var_nodearraylist6
= var2
;
9385 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9386 var_nodearraylist5
= var3
;
9387 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9388 var_nodearraylist4
= var4
;
9389 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9390 var_nodearraylist3
= var5
;
9391 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9392 var_nodearraylist2
= var6
;
9393 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9394 var_nodearraylist1
= var7
;
9395 var_tkwifnode2
= var_nodearraylist1
;
9396 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
9397 cltype
= type_nullable_parser_nodes__TKwif
.color
;
9398 idtype
= type_nullable_parser_nodes__TKwif
.id
;
9399 if(var_tkwifnode2
== NULL
) {
9402 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
9405 var8
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
9409 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27512);
9412 var_pexprnode3
= var_nodearraylist3
;
9413 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9414 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
9415 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
9416 if(var_pexprnode3
== NULL
) {
9419 if(cltype10
>= var_pexprnode3
->type
->table_size
) {
9422 var9
= var_pexprnode3
->type
->type_table
[cltype10
] == idtype11
;
9426 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27514);
9429 var_pexprnode5
= var_nodearraylist7
;
9430 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
9431 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
9432 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
9433 if(var_pexprnode5
== NULL
) {
9436 if(cltype13
>= var_pexprnode5
->type
->table_size
) {
9439 var12
= var_pexprnode5
->type
->type_table
[cltype13
] == idtype14
;
9443 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27516);
9446 var15
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
9448 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__AIfExpr__init_aifexpr
]))(var15
, var_tkwifnode2
, var_pexprnode3
, var16
, var_pexprnode5
) /* init_aifexpr on <var15:AIfExpr>*/;
9449 CHECK_NEW_parser_nodes__AIfExpr(var15
);
9450 var_pexprnode1
= var15
;
9451 var_node_list
= var_pexprnode1
;
9452 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction738> */
9453 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
9454 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
9457 /* method parser#ReduceAction738#action for (self: Object, Parser) */
9458 void VIRTUAL_parser__ReduceAction738__action(val
* self
, val
* p0
) {
9459 parser__ReduceAction738__action(self
, p0
);
9462 /* method parser#ReduceAction741#action for (self: ReduceAction741, Parser) */
9463 void parser__ReduceAction741__action(val
* self
, val
* p0
) {
9464 val
* var_p
/* var p: Parser */;
9465 val
* var
/* : null */;
9466 val
* var_node_list
/* var node_list: nullable Object */;
9467 val
* var1
/* : nullable Object */;
9468 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9469 val
* var2
/* : nullable Object */;
9470 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9471 val
* var3
/* : nullable Object */;
9472 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9473 val
* var_tkwloopnode2
/* var tkwloopnode2: nullable Object */;
9474 short int var4
/* : Bool */;
9477 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9478 short int var5
/* : Bool */;
9481 val
* var_plabelnode4
/* var plabelnode4: nullable Object */;
9482 short int var8
/* : Bool */;
9485 val
* var11
/* : ALoopExpr */;
9486 val
* var_pexprnode1
/* var pexprnode1: nullable ALoopExpr */;
9487 long var12
/* : Int */;
9488 long var13
/* : Int */;
9491 var_node_list
= var
;
9492 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9493 var_nodearraylist3
= var1
;
9494 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9495 var_nodearraylist2
= var2
;
9496 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9497 var_nodearraylist1
= var3
;
9498 var_tkwloopnode2
= var_nodearraylist1
;
9499 /* <var_tkwloopnode2:nullable Object> isa nullable TKwloop */
9500 cltype
= type_nullable_parser_nodes__TKwloop
.color
;
9501 idtype
= type_nullable_parser_nodes__TKwloop
.id
;
9502 if(var_tkwloopnode2
== NULL
) {
9505 if(cltype
>= var_tkwloopnode2
->type
->table_size
) {
9508 var4
= var_tkwloopnode2
->type
->type_table
[cltype
] == idtype
;
9512 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27536);
9515 var_pexprnode3
= var_nodearraylist2
;
9516 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9517 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
9518 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
9519 if(var_pexprnode3
== NULL
) {
9522 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
9525 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
9529 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27538);
9532 var_plabelnode4
= var_nodearraylist3
;
9533 /* <var_plabelnode4:nullable Object> isa nullable ALabel */
9534 cltype9
= type_nullable_parser_nodes__ALabel
.color
;
9535 idtype10
= type_nullable_parser_nodes__ALabel
.id
;
9536 if(var_plabelnode4
== NULL
) {
9539 if(cltype9
>= var_plabelnode4
->type
->table_size
) {
9542 var8
= var_plabelnode4
->type
->type_table
[cltype9
] == idtype10
;
9546 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27540);
9549 var11
= NEW_parser_nodes__ALoopExpr(&type_parser_nodes__ALoopExpr
);
9550 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ALoopExpr__init_aloopexpr
]))(var11
, var_tkwloopnode2
, var_pexprnode3
, var_plabelnode4
) /* init_aloopexpr on <var11:ALoopExpr>*/;
9551 CHECK_NEW_parser_nodes__ALoopExpr(var11
);
9552 var_pexprnode1
= var11
;
9553 var_node_list
= var_pexprnode1
;
9554 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction741> */
9555 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
9556 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
9559 /* method parser#ReduceAction741#action for (self: Object, Parser) */
9560 void VIRTUAL_parser__ReduceAction741__action(val
* self
, val
* p0
) {
9561 parser__ReduceAction741__action(self
, p0
);
9564 /* method parser#ReduceAction742#action for (self: ReduceAction742, Parser) */
9565 void parser__ReduceAction742__action(val
* self
, val
* p0
) {
9566 val
* var_p
/* var p: Parser */;
9567 val
* var
/* : null */;
9568 val
* var_node_list
/* var node_list: nullable Object */;
9569 val
* var1
/* : nullable Object */;
9570 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9571 val
* var2
/* : nullable Object */;
9572 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9573 val
* var_tkwloopnode2
/* var tkwloopnode2: nullable Object */;
9574 short int var3
/* : Bool */;
9577 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9578 short int var4
/* : Bool */;
9581 val
* var7
/* : ALoopExpr */;
9582 val
* var8
/* : null */;
9583 val
* var_pexprnode1
/* var pexprnode1: nullable ALoopExpr */;
9584 long var9
/* : Int */;
9585 long var10
/* : Int */;
9588 var_node_list
= var
;
9589 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9590 var_nodearraylist2
= var1
;
9591 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9592 var_nodearraylist1
= var2
;
9593 var_tkwloopnode2
= var_nodearraylist1
;
9594 /* <var_tkwloopnode2:nullable Object> isa nullable TKwloop */
9595 cltype
= type_nullable_parser_nodes__TKwloop
.color
;
9596 idtype
= type_nullable_parser_nodes__TKwloop
.id
;
9597 if(var_tkwloopnode2
== NULL
) {
9600 if(cltype
>= var_tkwloopnode2
->type
->table_size
) {
9603 var3
= var_tkwloopnode2
->type
->type_table
[cltype
] == idtype
;
9607 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27558);
9610 var_pexprnode3
= var_nodearraylist2
;
9611 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9612 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
9613 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
9614 if(var_pexprnode3
== NULL
) {
9617 if(cltype5
>= var_pexprnode3
->type
->table_size
) {
9620 var4
= var_pexprnode3
->type
->type_table
[cltype5
] == idtype6
;
9624 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27560);
9627 var7
= NEW_parser_nodes__ALoopExpr(&type_parser_nodes__ALoopExpr
);
9629 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ALoopExpr__init_aloopexpr
]))(var7
, var_tkwloopnode2
, var_pexprnode3
, var8
) /* init_aloopexpr on <var7:ALoopExpr>*/;
9630 CHECK_NEW_parser_nodes__ALoopExpr(var7
);
9631 var_pexprnode1
= var7
;
9632 var_node_list
= var_pexprnode1
;
9633 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction742> */
9634 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
9635 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
9638 /* method parser#ReduceAction742#action for (self: Object, Parser) */
9639 void VIRTUAL_parser__ReduceAction742__action(val
* self
, val
* p0
) {
9640 parser__ReduceAction742__action(self
, p0
);
9643 /* method parser#ReduceAction743#action for (self: ReduceAction743, Parser) */
9644 void parser__ReduceAction743__action(val
* self
, val
* p0
) {
9645 val
* var_p
/* var p: Parser */;
9646 val
* var
/* : null */;
9647 val
* var_node_list
/* var node_list: nullable Object */;
9648 val
* var1
/* : nullable Object */;
9649 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9650 val
* var2
/* : nullable Object */;
9651 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9652 val
* var3
/* : nullable Object */;
9653 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9654 val
* var4
/* : nullable Object */;
9655 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9656 val
* var5
/* : nullable Object */;
9657 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9658 val
* var6
/* : nullable Object */;
9659 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9660 val
* var7
/* : nullable Object */;
9661 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9662 val
* var_tkwwhilenode2
/* var tkwwhilenode2: nullable Object */;
9663 short int var8
/* : Bool */;
9666 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9667 short int var9
/* : Bool */;
9670 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
9671 short int var12
/* : Bool */;
9674 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
9675 short int var15
/* : Bool */;
9678 val
* var_plabelnode6
/* var plabelnode6: nullable Object */;
9679 short int var18
/* : Bool */;
9682 val
* var21
/* : AWhileExpr */;
9683 val
* var_pexprnode1
/* var pexprnode1: nullable AWhileExpr */;
9684 long var22
/* : Int */;
9685 long var23
/* : Int */;
9688 var_node_list
= var
;
9689 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9690 var_nodearraylist7
= var1
;
9691 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9692 var_nodearraylist6
= var2
;
9693 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9694 var_nodearraylist5
= var3
;
9695 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9696 var_nodearraylist4
= var4
;
9697 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9698 var_nodearraylist3
= var5
;
9699 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9700 var_nodearraylist2
= var6
;
9701 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9702 var_nodearraylist1
= var7
;
9703 var_tkwwhilenode2
= var_nodearraylist1
;
9704 /* <var_tkwwhilenode2:nullable Object> isa nullable TKwwhile */
9705 cltype
= type_nullable_parser_nodes__TKwwhile
.color
;
9706 idtype
= type_nullable_parser_nodes__TKwwhile
.id
;
9707 if(var_tkwwhilenode2
== NULL
) {
9710 if(cltype
>= var_tkwwhilenode2
->type
->table_size
) {
9713 var8
= var_tkwwhilenode2
->type
->type_table
[cltype
] == idtype
;
9717 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27583);
9720 var_pexprnode3
= var_nodearraylist3
;
9721 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9722 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
9723 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
9724 if(var_pexprnode3
== NULL
) {
9727 if(cltype10
>= var_pexprnode3
->type
->table_size
) {
9730 var9
= var_pexprnode3
->type
->type_table
[cltype10
] == idtype11
;
9734 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27585);
9737 var_tkwdonode4
= var_nodearraylist5
;
9738 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
9739 cltype13
= type_nullable_parser_nodes__TKwdo
.color
;
9740 idtype14
= type_nullable_parser_nodes__TKwdo
.id
;
9741 if(var_tkwdonode4
== NULL
) {
9744 if(cltype13
>= var_tkwdonode4
->type
->table_size
) {
9747 var12
= var_tkwdonode4
->type
->type_table
[cltype13
] == idtype14
;
9751 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27587);
9754 var_pexprnode5
= var_nodearraylist6
;
9755 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
9756 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
9757 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
9758 if(var_pexprnode5
== NULL
) {
9761 if(cltype16
>= var_pexprnode5
->type
->table_size
) {
9764 var15
= var_pexprnode5
->type
->type_table
[cltype16
] == idtype17
;
9768 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27589);
9771 var_plabelnode6
= var_nodearraylist7
;
9772 /* <var_plabelnode6:nullable Object> isa nullable ALabel */
9773 cltype19
= type_nullable_parser_nodes__ALabel
.color
;
9774 idtype20
= type_nullable_parser_nodes__ALabel
.id
;
9775 if(var_plabelnode6
== NULL
) {
9778 if(cltype19
>= var_plabelnode6
->type
->table_size
) {
9781 var18
= var_plabelnode6
->type
->type_table
[cltype19
] == idtype20
;
9785 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27591);
9788 var21
= NEW_parser_nodes__AWhileExpr(&type_parser_nodes__AWhileExpr
);
9789 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__AWhileExpr__init_awhileexpr
]))(var21
, var_tkwwhilenode2
, var_pexprnode3
, var_tkwdonode4
, var_pexprnode5
, var_plabelnode6
) /* init_awhileexpr on <var21:AWhileExpr>*/;
9790 CHECK_NEW_parser_nodes__AWhileExpr(var21
);
9791 var_pexprnode1
= var21
;
9792 var_node_list
= var_pexprnode1
;
9793 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction743> */
9794 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
9795 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
9798 /* method parser#ReduceAction743#action for (self: Object, Parser) */
9799 void VIRTUAL_parser__ReduceAction743__action(val
* self
, val
* p0
) {
9800 parser__ReduceAction743__action(self
, p0
);
9803 /* method parser#ReduceAction744#action for (self: ReduceAction744, Parser) */
9804 void parser__ReduceAction744__action(val
* self
, val
* p0
) {
9805 val
* var_p
/* var p: Parser */;
9806 val
* var
/* : null */;
9807 val
* var_node_list
/* var node_list: nullable Object */;
9808 val
* var1
/* : nullable Object */;
9809 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9810 val
* var2
/* : nullable Object */;
9811 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9812 val
* var3
/* : nullable Object */;
9813 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9814 val
* var4
/* : nullable Object */;
9815 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9816 val
* var5
/* : nullable Object */;
9817 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9818 val
* var6
/* : nullable Object */;
9819 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9820 val
* var_tkwwhilenode2
/* var tkwwhilenode2: nullable Object */;
9821 short int var7
/* : Bool */;
9824 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9825 short int var8
/* : Bool */;
9828 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
9829 short int var11
/* : Bool */;
9832 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
9833 short int var14
/* : Bool */;
9836 val
* var17
/* : AWhileExpr */;
9837 val
* var18
/* : null */;
9838 val
* var_pexprnode1
/* var pexprnode1: nullable AWhileExpr */;
9839 long var19
/* : Int */;
9840 long var20
/* : Int */;
9843 var_node_list
= var
;
9844 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9845 var_nodearraylist6
= var1
;
9846 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9847 var_nodearraylist5
= var2
;
9848 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9849 var_nodearraylist4
= var3
;
9850 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9851 var_nodearraylist3
= var4
;
9852 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9853 var_nodearraylist2
= var5
;
9854 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9855 var_nodearraylist1
= var6
;
9856 var_tkwwhilenode2
= var_nodearraylist1
;
9857 /* <var_tkwwhilenode2:nullable Object> isa nullable TKwwhile */
9858 cltype
= type_nullable_parser_nodes__TKwwhile
.color
;
9859 idtype
= type_nullable_parser_nodes__TKwwhile
.id
;
9860 if(var_tkwwhilenode2
== NULL
) {
9863 if(cltype
>= var_tkwwhilenode2
->type
->table_size
) {
9866 var7
= var_tkwwhilenode2
->type
->type_table
[cltype
] == idtype
;
9870 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27615);
9873 var_pexprnode3
= var_nodearraylist3
;
9874 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9875 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
9876 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
9877 if(var_pexprnode3
== NULL
) {
9880 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
9883 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
9887 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27617);
9890 var_tkwdonode4
= var_nodearraylist5
;
9891 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
9892 cltype12
= type_nullable_parser_nodes__TKwdo
.color
;
9893 idtype13
= type_nullable_parser_nodes__TKwdo
.id
;
9894 if(var_tkwdonode4
== NULL
) {
9897 if(cltype12
>= var_tkwdonode4
->type
->table_size
) {
9900 var11
= var_tkwdonode4
->type
->type_table
[cltype12
] == idtype13
;
9904 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27619);
9907 var_pexprnode5
= var_nodearraylist6
;
9908 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
9909 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
9910 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
9911 if(var_pexprnode5
== NULL
) {
9914 if(cltype15
>= var_pexprnode5
->type
->table_size
) {
9917 var14
= var_pexprnode5
->type
->type_table
[cltype15
] == idtype16
;
9921 fprintf(stderr
, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser.nit", 27621);
9924 var17
= NEW_parser_nodes__AWhileExpr(&type_parser_nodes__AWhileExpr
);
9926 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AWhileExpr__init_awhileexpr
]))(var17
, var_tkwwhilenode2
, var_pexprnode3
, var_tkwdonode4
, var_pexprnode5
, var18
) /* init_awhileexpr on <var17:AWhileExpr>*/;
9927 CHECK_NEW_parser_nodes__AWhileExpr(var17
);
9928 var_pexprnode1
= var17
;
9929 var_node_list
= var_pexprnode1
;
9930 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction744> */
9931 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
9932 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
9935 /* method parser#ReduceAction744#action for (self: Object, Parser) */
9936 void VIRTUAL_parser__ReduceAction744__action(val
* self
, val
* p0
) {
9937 parser__ReduceAction744__action(self
, p0
);