1 #include "parser.sep.0.h"
2 /* method parser#ReduceAction652#action for (self: ReduceAction652, Parser) */
3 void parser__ReduceAction652__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_nodearraylist6
/* var nodearraylist6: nullable Object */;
9 val
* var2
/* : nullable Object */;
10 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
11 val
* var3
/* : nullable Object */;
12 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
13 val
* var4
/* : nullable Object */;
14 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
15 val
* var5
/* : nullable Object */;
16 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
17 val
* var6
/* : nullable Object */;
18 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
19 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
20 short int var7
/* : Bool */;
23 val
* var_tidnode3
/* var tidnode3: nullable Object */;
24 short int var8
/* : Bool */;
27 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
28 short int var11
/* : Bool */;
31 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
32 short int var14
/* : Bool */;
35 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
36 short int var17
/* : Bool */;
39 val
* var20
/* : AVardeclExpr */;
40 val
* var21
/* : null */;
41 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
42 long var22
/* : Int */;
43 long var23
/* : Int */;
47 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
48 var_nodearraylist6
= var1
;
49 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
50 var_nodearraylist5
= var2
;
51 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
52 var_nodearraylist4
= var3
;
53 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
54 var_nodearraylist3
= var4
;
55 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
56 var_nodearraylist2
= var5
;
57 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
58 var_nodearraylist1
= var6
;
59 var_tkwvarnode2
= var_nodearraylist1
;
60 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
61 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
62 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
63 if(var_tkwvarnode2
== NULL
) {
66 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
69 var7
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
73 fprintf(stderr
, "Runtime error: %s", "Assert failed");
74 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25026);
77 var_tidnode3
= var_nodearraylist2
;
78 /* <var_tidnode3:nullable Object> isa nullable TId */
79 cltype9
= type_nullable_parser_nodes__TId
.color
;
80 idtype10
= type_nullable_parser_nodes__TId
.id
;
81 if(var_tidnode3
== NULL
) {
84 if(cltype9
>= var_tidnode3
->type
->table_size
) {
87 var8
= var_tidnode3
->type
->type_table
[cltype9
] == idtype10
;
91 fprintf(stderr
, "Runtime error: %s", "Assert failed");
92 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25028);
95 var_ptypenode4
= var_nodearraylist3
;
96 /* <var_ptypenode4:nullable Object> isa nullable AType */
97 cltype12
= type_nullable_parser_nodes__AType
.color
;
98 idtype13
= type_nullable_parser_nodes__AType
.id
;
99 if(var_ptypenode4
== NULL
) {
102 if(cltype12
>= var_ptypenode4
->type
->table_size
) {
105 var11
= var_ptypenode4
->type
->type_table
[cltype12
] == idtype13
;
109 fprintf(stderr
, "Runtime error: %s", "Assert failed");
110 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25030);
113 var_tassignnode5
= var_nodearraylist4
;
114 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
115 cltype15
= type_nullable_parser_nodes__TAssign
.color
;
116 idtype16
= type_nullable_parser_nodes__TAssign
.id
;
117 if(var_tassignnode5
== NULL
) {
120 if(cltype15
>= var_tassignnode5
->type
->table_size
) {
123 var14
= var_tassignnode5
->type
->type_table
[cltype15
] == idtype16
;
127 fprintf(stderr
, "Runtime error: %s", "Assert failed");
128 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25032);
131 var_pexprnode6
= var_nodearraylist6
;
132 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
133 cltype18
= type_nullable_parser_nodes__AExpr
.color
;
134 idtype19
= type_nullable_parser_nodes__AExpr
.id
;
135 if(var_pexprnode6
== NULL
) {
138 if(cltype18
>= var_pexprnode6
->type
->table_size
) {
141 var17
= var_pexprnode6
->type
->type_table
[cltype18
] == idtype19
;
145 fprintf(stderr
, "Runtime error: %s", "Assert failed");
146 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25034);
149 var20
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
151 ((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>*/;
152 var_pexprnode1
= var20
;
153 var_node_list
= var_pexprnode1
;
154 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction652> */
155 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
156 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
159 /* method parser#ReduceAction652#action for (self: Object, Parser) */
160 void VIRTUAL_parser__ReduceAction652__action(val
* self
, val
* p0
) {
161 parser__ReduceAction652__action(self
, p0
);
164 /* method parser#ReduceAction653#action for (self: ReduceAction653, Parser) */
165 void parser__ReduceAction653__action(val
* self
, val
* p0
) {
166 val
* var_p
/* var p: Parser */;
167 val
* var
/* : null */;
168 val
* var_node_list
/* var node_list: nullable Object */;
169 val
* var1
/* : nullable Object */;
170 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
171 val
* var2
/* : nullable Object */;
172 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
173 val
* var3
/* : nullable Object */;
174 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
175 val
* var4
/* : nullable Object */;
176 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
177 val
* var5
/* : nullable Object */;
178 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
179 val
* var6
/* : nullable Object */;
180 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
181 val
* var7
/* : nullable Object */;
182 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
183 val
* var_tkwvarnode2
/* var tkwvarnode2: nullable Object */;
184 short int var8
/* : Bool */;
187 val
* var_tidnode3
/* var tidnode3: nullable Object */;
188 short int var9
/* : Bool */;
191 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
192 short int var12
/* : Bool */;
195 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
196 short int var15
/* : Bool */;
199 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
200 short int var18
/* : Bool */;
203 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
204 short int var21
/* : Bool */;
207 val
* var24
/* : AVardeclExpr */;
208 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
209 long var25
/* : Int */;
210 long var26
/* : Int */;
214 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
215 var_nodearraylist7
= var1
;
216 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
217 var_nodearraylist6
= var2
;
218 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
219 var_nodearraylist5
= var3
;
220 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
221 var_nodearraylist4
= var4
;
222 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
223 var_nodearraylist3
= var5
;
224 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
225 var_nodearraylist2
= var6
;
226 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
227 var_nodearraylist1
= var7
;
228 var_tkwvarnode2
= var_nodearraylist1
;
229 /* <var_tkwvarnode2:nullable Object> isa nullable TKwvar */
230 cltype
= type_nullable_parser_nodes__TKwvar
.color
;
231 idtype
= type_nullable_parser_nodes__TKwvar
.id
;
232 if(var_tkwvarnode2
== NULL
) {
235 if(cltype
>= var_tkwvarnode2
->type
->table_size
) {
238 var8
= var_tkwvarnode2
->type
->type_table
[cltype
] == idtype
;
242 fprintf(stderr
, "Runtime error: %s", "Assert failed");
243 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25060);
246 var_tidnode3
= var_nodearraylist2
;
247 /* <var_tidnode3:nullable Object> isa nullable TId */
248 cltype10
= type_nullable_parser_nodes__TId
.color
;
249 idtype11
= type_nullable_parser_nodes__TId
.id
;
250 if(var_tidnode3
== NULL
) {
253 if(cltype10
>= var_tidnode3
->type
->table_size
) {
256 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
260 fprintf(stderr
, "Runtime error: %s", "Assert failed");
261 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25062);
264 var_ptypenode4
= var_nodearraylist4
;
265 /* <var_ptypenode4:nullable Object> isa nullable AType */
266 cltype13
= type_nullable_parser_nodes__AType
.color
;
267 idtype14
= type_nullable_parser_nodes__AType
.id
;
268 if(var_ptypenode4
== NULL
) {
271 if(cltype13
>= var_ptypenode4
->type
->table_size
) {
274 var12
= var_ptypenode4
->type
->type_table
[cltype13
] == idtype14
;
278 fprintf(stderr
, "Runtime error: %s", "Assert failed");
279 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25064);
282 var_tassignnode5
= var_nodearraylist5
;
283 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
284 cltype16
= type_nullable_parser_nodes__TAssign
.color
;
285 idtype17
= type_nullable_parser_nodes__TAssign
.id
;
286 if(var_tassignnode5
== NULL
) {
289 if(cltype16
>= var_tassignnode5
->type
->table_size
) {
292 var15
= var_tassignnode5
->type
->type_table
[cltype16
] == idtype17
;
296 fprintf(stderr
, "Runtime error: %s", "Assert failed");
297 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25066);
300 var_pexprnode6
= var_nodearraylist7
;
301 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
302 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
303 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
304 if(var_pexprnode6
== NULL
) {
307 if(cltype19
>= var_pexprnode6
->type
->table_size
) {
310 var18
= var_pexprnode6
->type
->type_table
[cltype19
] == idtype20
;
314 fprintf(stderr
, "Runtime error: %s", "Assert failed");
315 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25068);
318 var_pannotationsnode7
= var_nodearraylist3
;
319 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
320 cltype22
= type_nullable_parser_nodes__AAnnotations
.color
;
321 idtype23
= type_nullable_parser_nodes__AAnnotations
.id
;
322 if(var_pannotationsnode7
== NULL
) {
325 if(cltype22
>= var_pannotationsnode7
->type
->table_size
) {
328 var21
= var_pannotationsnode7
->type
->type_table
[cltype22
] == idtype23
;
332 fprintf(stderr
, "Runtime error: %s", "Assert failed");
333 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25070);
336 var24
= NEW_parser_nodes__AVardeclExpr(&type_parser_nodes__AVardeclExpr
);
337 ((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>*/;
338 var_pexprnode1
= var24
;
339 var_node_list
= var_pexprnode1
;
340 var25
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction653> */
341 var26
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var25
) /* go_to on <var_p:Parser>*/;
342 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var26
, var_node_list
) /* push on <var_p:Parser>*/;
345 /* method parser#ReduceAction653#action for (self: Object, Parser) */
346 void VIRTUAL_parser__ReduceAction653__action(val
* self
, val
* p0
) {
347 parser__ReduceAction653__action(self
, p0
);
350 /* method parser#ReduceAction654#action for (self: ReduceAction654, Parser) */
351 void parser__ReduceAction654__action(val
* self
, val
* p0
) {
352 val
* var_p
/* var p: Parser */;
353 val
* var
/* : null */;
354 val
* var_node_list
/* var node_list: nullable Object */;
355 val
* var1
/* : nullable Object */;
356 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
357 val
* var2
/* : nullable Object */;
358 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
359 val
* var3
/* : nullable Object */;
360 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
361 val
* var4
/* : nullable Object */;
362 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
363 val
* var5
/* : nullable Object */;
364 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
365 val
* var6
/* : nullable Object */;
366 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
367 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
368 short int var7
/* : Bool */;
371 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
372 short int var8
/* : Bool */;
375 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
376 short int var11
/* : Bool */;
379 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
380 short int var14
/* : Bool */;
383 val
* var17
/* : AAttrAssignExpr */;
384 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
385 long var18
/* : Int */;
386 long var19
/* : Int */;
390 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
391 var_nodearraylist6
= var1
;
392 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
393 var_nodearraylist5
= var2
;
394 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
395 var_nodearraylist4
= var3
;
396 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
397 var_nodearraylist3
= var4
;
398 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
399 var_nodearraylist2
= var5
;
400 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
401 var_nodearraylist1
= var6
;
402 var_pexprnode2
= var_nodearraylist1
;
403 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
404 cltype
= type_nullable_parser_nodes__AExpr
.color
;
405 idtype
= type_nullable_parser_nodes__AExpr
.id
;
406 if(var_pexprnode2
== NULL
) {
409 if(cltype
>= var_pexprnode2
->type
->table_size
) {
412 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
416 fprintf(stderr
, "Runtime error: %s", "Assert failed");
417 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25095);
420 var_tattridnode3
= var_nodearraylist4
;
421 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
422 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
423 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
424 if(var_tattridnode3
== NULL
) {
427 if(cltype9
>= var_tattridnode3
->type
->table_size
) {
430 var8
= var_tattridnode3
->type
->type_table
[cltype9
] == idtype10
;
434 fprintf(stderr
, "Runtime error: %s", "Assert failed");
435 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25097);
438 var_tassignnode4
= var_nodearraylist5
;
439 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
440 cltype12
= type_nullable_parser_nodes__TAssign
.color
;
441 idtype13
= type_nullable_parser_nodes__TAssign
.id
;
442 if(var_tassignnode4
== NULL
) {
445 if(cltype12
>= var_tassignnode4
->type
->table_size
) {
448 var11
= var_tassignnode4
->type
->type_table
[cltype12
] == idtype13
;
452 fprintf(stderr
, "Runtime error: %s", "Assert failed");
453 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25099);
456 var_pexprnode5
= var_nodearraylist6
;
457 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
458 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
459 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
460 if(var_pexprnode5
== NULL
) {
463 if(cltype15
>= var_pexprnode5
->type
->table_size
) {
466 var14
= var_pexprnode5
->type
->type_table
[cltype15
] == idtype16
;
470 fprintf(stderr
, "Runtime error: %s", "Assert failed");
471 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25101);
474 var17
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
475 ((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>*/;
476 var_pexprnode1
= var17
;
477 var_node_list
= var_pexprnode1
;
478 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction654> */
479 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
480 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
483 /* method parser#ReduceAction654#action for (self: Object, Parser) */
484 void VIRTUAL_parser__ReduceAction654__action(val
* self
, val
* p0
) {
485 parser__ReduceAction654__action(self
, p0
);
488 /* method parser#ReduceAction655#action for (self: ReduceAction655, Parser) */
489 void parser__ReduceAction655__action(val
* self
, val
* p0
) {
490 val
* var_p
/* var p: Parser */;
491 val
* var
/* : null */;
492 val
* var_node_list
/* var node_list: nullable Object */;
493 val
* var1
/* : nullable Object */;
494 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
495 val
* var2
/* : nullable Object */;
496 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
497 val
* var3
/* : nullable Object */;
498 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
499 val
* var4
/* : AImplicitSelfExpr */;
500 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
501 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
502 short int var5
/* : Bool */;
505 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
506 short int var6
/* : Bool */;
509 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
510 short int var9
/* : Bool */;
513 val
* var12
/* : AAttrAssignExpr */;
514 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
515 long var13
/* : Int */;
516 long var14
/* : Int */;
520 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
521 var_nodearraylist3
= var1
;
522 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
523 var_nodearraylist2
= var2
;
524 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
525 var_nodearraylist1
= var3
;
526 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
527 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
528 var_pexprnode2
= var4
;
529 var_tattridnode3
= var_nodearraylist1
;
530 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
531 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
532 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
533 if(var_tattridnode3
== NULL
) {
536 if(cltype
>= var_tattridnode3
->type
->table_size
) {
539 var5
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
543 fprintf(stderr
, "Runtime error: %s", "Assert failed");
544 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25122);
547 var_tassignnode4
= var_nodearraylist2
;
548 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
549 cltype7
= type_nullable_parser_nodes__TAssign
.color
;
550 idtype8
= type_nullable_parser_nodes__TAssign
.id
;
551 if(var_tassignnode4
== NULL
) {
554 if(cltype7
>= var_tassignnode4
->type
->table_size
) {
557 var6
= var_tassignnode4
->type
->type_table
[cltype7
] == idtype8
;
561 fprintf(stderr
, "Runtime error: %s", "Assert failed");
562 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25124);
565 var_pexprnode5
= var_nodearraylist3
;
566 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
567 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
568 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
569 if(var_pexprnode5
== NULL
) {
572 if(cltype10
>= var_pexprnode5
->type
->table_size
) {
575 var9
= var_pexprnode5
->type
->type_table
[cltype10
] == idtype11
;
579 fprintf(stderr
, "Runtime error: %s", "Assert failed");
580 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25126);
583 var12
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
584 ((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>*/;
585 var_pexprnode1
= var12
;
586 var_node_list
= var_pexprnode1
;
587 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction655> */
588 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
589 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
592 /* method parser#ReduceAction655#action for (self: Object, Parser) */
593 void VIRTUAL_parser__ReduceAction655__action(val
* self
, val
* p0
) {
594 parser__ReduceAction655__action(self
, p0
);
597 /* method parser#ReduceAction656#action for (self: ReduceAction656, Parser) */
598 void parser__ReduceAction656__action(val
* self
, val
* p0
) {
599 val
* var_p
/* var p: Parser */;
600 val
* var
/* : null */;
601 val
* var_node_list
/* var node_list: nullable Object */;
602 val
* var1
/* : nullable Object */;
603 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
604 val
* var2
/* : nullable Object */;
605 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
606 val
* var3
/* : nullable Object */;
607 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
608 val
* var4
/* : nullable Object */;
609 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
610 val
* var5
/* : nullable Object */;
611 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
612 val
* var6
/* : nullable Object */;
613 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
614 val
* var7
/* : nullable Object */;
615 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
616 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
617 short int var8
/* : Bool */;
620 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
621 short int var9
/* : Bool */;
624 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
625 short int var12
/* : Bool */;
628 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
629 short int var15
/* : Bool */;
632 val
* var18
/* : AAttrAssignExpr */;
633 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
634 long var19
/* : Int */;
635 long var20
/* : Int */;
639 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
640 var_nodearraylist7
= var1
;
641 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
642 var_nodearraylist6
= var2
;
643 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
644 var_nodearraylist5
= var3
;
645 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
646 var_nodearraylist4
= var4
;
647 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
648 var_nodearraylist3
= var5
;
649 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
650 var_nodearraylist2
= var6
;
651 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
652 var_nodearraylist1
= var7
;
653 var_pexprnode2
= var_nodearraylist1
;
654 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
655 cltype
= type_nullable_parser_nodes__AExpr
.color
;
656 idtype
= type_nullable_parser_nodes__AExpr
.id
;
657 if(var_pexprnode2
== NULL
) {
660 if(cltype
>= var_pexprnode2
->type
->table_size
) {
663 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
667 fprintf(stderr
, "Runtime error: %s", "Assert failed");
668 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25150);
671 var_tattridnode3
= var_nodearraylist5
;
672 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
673 cltype10
= type_nullable_parser_nodes__TAttrid
.color
;
674 idtype11
= type_nullable_parser_nodes__TAttrid
.id
;
675 if(var_tattridnode3
== NULL
) {
678 if(cltype10
>= var_tattridnode3
->type
->table_size
) {
681 var9
= var_tattridnode3
->type
->type_table
[cltype10
] == idtype11
;
685 fprintf(stderr
, "Runtime error: %s", "Assert failed");
686 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25152);
689 var_tassignnode4
= var_nodearraylist6
;
690 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
691 cltype13
= type_nullable_parser_nodes__TAssign
.color
;
692 idtype14
= type_nullable_parser_nodes__TAssign
.id
;
693 if(var_tassignnode4
== NULL
) {
696 if(cltype13
>= var_tassignnode4
->type
->table_size
) {
699 var12
= var_tassignnode4
->type
->type_table
[cltype13
] == idtype14
;
703 fprintf(stderr
, "Runtime error: %s", "Assert failed");
704 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25154);
707 var_pexprnode5
= var_nodearraylist7
;
708 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
709 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
710 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
711 if(var_pexprnode5
== NULL
) {
714 if(cltype16
>= var_pexprnode5
->type
->table_size
) {
717 var15
= var_pexprnode5
->type
->type_table
[cltype16
] == idtype17
;
721 fprintf(stderr
, "Runtime error: %s", "Assert failed");
722 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25156);
725 var18
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
726 ((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>*/;
727 var_pexprnode1
= var18
;
728 var_node_list
= var_pexprnode1
;
729 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction656> */
730 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
731 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
734 /* method parser#ReduceAction656#action for (self: Object, Parser) */
735 void VIRTUAL_parser__ReduceAction656__action(val
* self
, val
* p0
) {
736 parser__ReduceAction656__action(self
, p0
);
739 /* method parser#ReduceAction657#action for (self: ReduceAction657, Parser) */
740 void parser__ReduceAction657__action(val
* self
, val
* p0
) {
741 val
* var_p
/* var p: Parser */;
742 val
* var
/* : null */;
743 val
* var_node_list
/* var node_list: nullable Object */;
744 val
* var1
/* : nullable Object */;
745 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
746 val
* var2
/* : nullable Object */;
747 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
748 val
* var3
/* : nullable Object */;
749 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
750 val
* var4
/* : nullable Object */;
751 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
752 val
* var5
/* : nullable Object */;
753 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
754 val
* var6
/* : nullable Object */;
755 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
756 val
* var7
/* : nullable Object */;
757 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
758 val
* var8
/* : nullable Object */;
759 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
760 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
761 short int var9
/* : Bool */;
764 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
765 short int var10
/* : Bool */;
768 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
769 short int var13
/* : Bool */;
772 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
773 short int var16
/* : Bool */;
776 val
* var19
/* : AAttrAssignExpr */;
777 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
778 long var20
/* : Int */;
779 long var21
/* : Int */;
783 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
784 var_nodearraylist8
= var1
;
785 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
786 var_nodearraylist7
= var2
;
787 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
788 var_nodearraylist6
= var3
;
789 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
790 var_nodearraylist5
= var4
;
791 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
792 var_nodearraylist4
= var5
;
793 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
794 var_nodearraylist3
= var6
;
795 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
796 var_nodearraylist2
= var7
;
797 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
798 var_nodearraylist1
= var8
;
799 var_pexprnode2
= var_nodearraylist1
;
800 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
801 cltype
= type_nullable_parser_nodes__AExpr
.color
;
802 idtype
= type_nullable_parser_nodes__AExpr
.id
;
803 if(var_pexprnode2
== NULL
) {
806 if(cltype
>= var_pexprnode2
->type
->table_size
) {
809 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
813 fprintf(stderr
, "Runtime error: %s", "Assert failed");
814 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25181);
817 var_tattridnode3
= var_nodearraylist6
;
818 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
819 cltype11
= type_nullable_parser_nodes__TAttrid
.color
;
820 idtype12
= type_nullable_parser_nodes__TAttrid
.id
;
821 if(var_tattridnode3
== NULL
) {
824 if(cltype11
>= var_tattridnode3
->type
->table_size
) {
827 var10
= var_tattridnode3
->type
->type_table
[cltype11
] == idtype12
;
831 fprintf(stderr
, "Runtime error: %s", "Assert failed");
832 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25183);
835 var_tassignnode4
= var_nodearraylist7
;
836 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
837 cltype14
= type_nullable_parser_nodes__TAssign
.color
;
838 idtype15
= type_nullable_parser_nodes__TAssign
.id
;
839 if(var_tassignnode4
== NULL
) {
842 if(cltype14
>= var_tassignnode4
->type
->table_size
) {
845 var13
= var_tassignnode4
->type
->type_table
[cltype14
] == idtype15
;
849 fprintf(stderr
, "Runtime error: %s", "Assert failed");
850 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25185);
853 var_pexprnode5
= var_nodearraylist8
;
854 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
855 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
856 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
857 if(var_pexprnode5
== NULL
) {
860 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
863 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
867 fprintf(stderr
, "Runtime error: %s", "Assert failed");
868 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25187);
871 var19
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
872 ((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>*/;
873 var_pexprnode1
= var19
;
874 var_node_list
= var_pexprnode1
;
875 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction657> */
876 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
877 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
880 /* method parser#ReduceAction657#action for (self: Object, Parser) */
881 void VIRTUAL_parser__ReduceAction657__action(val
* self
, val
* p0
) {
882 parser__ReduceAction657__action(self
, p0
);
885 /* method parser#ReduceAction659#action for (self: ReduceAction659, Parser) */
886 void parser__ReduceAction659__action(val
* self
, val
* p0
) {
887 val
* var_p
/* var p: Parser */;
888 val
* var
/* : null */;
889 val
* var_node_list
/* var node_list: nullable Object */;
890 val
* var1
/* : nullable Object */;
891 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
892 val
* var2
/* : nullable Object */;
893 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
894 val
* var3
/* : nullable Object */;
895 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
896 val
* var4
/* : nullable Object */;
897 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
898 val
* var5
/* : AImplicitSelfExpr */;
899 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
900 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
901 short int var6
/* : Bool */;
904 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
905 short int var7
/* : Bool */;
908 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
909 short int var10
/* : Bool */;
912 val
* var13
/* : AAttrAssignExpr */;
913 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
914 long var14
/* : Int */;
915 long var15
/* : Int */;
919 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
920 var_nodearraylist4
= var1
;
921 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
922 var_nodearraylist3
= var2
;
923 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
924 var_nodearraylist2
= var3
;
925 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
926 var_nodearraylist1
= var4
;
927 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
928 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
929 var_pexprnode2
= var5
;
930 var_tattridnode3
= var_nodearraylist2
;
931 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
932 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
933 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
934 if(var_tattridnode3
== NULL
) {
937 if(cltype
>= var_tattridnode3
->type
->table_size
) {
940 var6
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
944 fprintf(stderr
, "Runtime error: %s", "Assert failed");
945 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25209);
948 var_tassignnode4
= var_nodearraylist3
;
949 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
950 cltype8
= type_nullable_parser_nodes__TAssign
.color
;
951 idtype9
= type_nullable_parser_nodes__TAssign
.id
;
952 if(var_tassignnode4
== NULL
) {
955 if(cltype8
>= var_tassignnode4
->type
->table_size
) {
958 var7
= var_tassignnode4
->type
->type_table
[cltype8
] == idtype9
;
962 fprintf(stderr
, "Runtime error: %s", "Assert failed");
963 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25211);
966 var_pexprnode5
= var_nodearraylist4
;
967 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
968 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
969 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
970 if(var_pexprnode5
== NULL
) {
973 if(cltype11
>= var_pexprnode5
->type
->table_size
) {
976 var10
= var_pexprnode5
->type
->type_table
[cltype11
] == idtype12
;
980 fprintf(stderr
, "Runtime error: %s", "Assert failed");
981 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25213);
984 var13
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
985 ((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>*/;
986 var_pexprnode1
= var13
;
987 var_node_list
= var_pexprnode1
;
988 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction659> */
989 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
990 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
993 /* method parser#ReduceAction659#action for (self: Object, Parser) */
994 void VIRTUAL_parser__ReduceAction659__action(val
* self
, val
* p0
) {
995 parser__ReduceAction659__action(self
, p0
);
998 /* method parser#ReduceAction660#action for (self: ReduceAction660, Parser) */
999 void parser__ReduceAction660__action(val
* self
, val
* p0
) {
1000 val
* var_p
/* var p: Parser */;
1001 val
* var
/* : null */;
1002 val
* var_node_list
/* var node_list: nullable Object */;
1003 val
* var1
/* : nullable Object */;
1004 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1005 val
* var2
/* : nullable Object */;
1006 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1007 val
* var3
/* : nullable Object */;
1008 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1009 val
* var4
/* : nullable Object */;
1010 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1011 val
* var5
/* : nullable Object */;
1012 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1013 val
* var6
/* : AImplicitSelfExpr */;
1014 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1015 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
1016 short int var7
/* : Bool */;
1019 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
1020 short int var8
/* : Bool */;
1023 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
1024 short int var11
/* : Bool */;
1027 val
* var14
/* : AAttrAssignExpr */;
1028 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrAssignExpr */;
1029 long var15
/* : Int */;
1030 long var16
/* : Int */;
1033 var_node_list
= var
;
1034 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1035 var_nodearraylist5
= var1
;
1036 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1037 var_nodearraylist4
= var2
;
1038 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1039 var_nodearraylist3
= var3
;
1040 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1041 var_nodearraylist2
= var4
;
1042 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1043 var_nodearraylist1
= var5
;
1044 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1045 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
1046 var_pexprnode2
= var6
;
1047 var_tattridnode3
= var_nodearraylist3
;
1048 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
1049 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
1050 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
1051 if(var_tattridnode3
== NULL
) {
1054 if(cltype
>= var_tattridnode3
->type
->table_size
) {
1057 var7
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
1061 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1062 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25236);
1065 var_tassignnode4
= var_nodearraylist4
;
1066 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
1067 cltype9
= type_nullable_parser_nodes__TAssign
.color
;
1068 idtype10
= type_nullable_parser_nodes__TAssign
.id
;
1069 if(var_tassignnode4
== NULL
) {
1072 if(cltype9
>= var_tassignnode4
->type
->table_size
) {
1075 var8
= var_tassignnode4
->type
->type_table
[cltype9
] == idtype10
;
1079 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1080 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25238);
1083 var_pexprnode5
= var_nodearraylist5
;
1084 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
1085 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
1086 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
1087 if(var_pexprnode5
== NULL
) {
1090 if(cltype12
>= var_pexprnode5
->type
->table_size
) {
1093 var11
= var_pexprnode5
->type
->type_table
[cltype12
] == idtype13
;
1097 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1098 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25240);
1101 var14
= NEW_parser_nodes__AAttrAssignExpr(&type_parser_nodes__AAttrAssignExpr
);
1102 ((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>*/;
1103 var_pexprnode1
= var14
;
1104 var_node_list
= var_pexprnode1
;
1105 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction660> */
1106 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
1107 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
1110 /* method parser#ReduceAction660#action for (self: Object, Parser) */
1111 void VIRTUAL_parser__ReduceAction660__action(val
* self
, val
* p0
) {
1112 parser__ReduceAction660__action(self
, p0
);
1115 /* method parser#ReduceAction662#action for (self: ReduceAction662, Parser) */
1116 void parser__ReduceAction662__action(val
* self
, val
* p0
) {
1117 val
* var_p
/* var p: Parser */;
1118 val
* var
/* : null */;
1119 val
* var_node_list
/* var node_list: nullable Object */;
1120 val
* var1
/* : nullable Object */;
1121 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1122 val
* var2
/* : nullable Object */;
1123 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1124 val
* var3
/* : nullable Object */;
1125 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1126 val
* var4
/* : nullable Object */;
1127 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1128 val
* var5
/* : nullable Object */;
1129 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1130 val
* var6
/* : nullable Object */;
1131 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1132 val
* var7
/* : nullable Object */;
1133 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1134 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1135 short int var8
/* : Bool */;
1138 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1139 short int var9
/* : Bool */;
1142 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
1143 short int var12
/* : Bool */;
1146 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
1147 short int var15
/* : Bool */;
1150 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1151 short int var18
/* : Bool */;
1154 val
* var21
/* : ACallAssignExpr */;
1155 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
1156 long var22
/* : Int */;
1157 long var23
/* : Int */;
1160 var_node_list
= var
;
1161 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1162 var_nodearraylist7
= var1
;
1163 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1164 var_nodearraylist6
= var2
;
1165 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1166 var_nodearraylist5
= var3
;
1167 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1168 var_nodearraylist4
= var4
;
1169 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1170 var_nodearraylist3
= var5
;
1171 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1172 var_nodearraylist2
= var6
;
1173 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1174 var_nodearraylist1
= var7
;
1175 var_pexprnode2
= var_nodearraylist1
;
1176 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1177 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1178 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1179 if(var_pexprnode2
== NULL
) {
1182 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1185 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1189 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1190 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25264);
1193 var_tidnode3
= var_nodearraylist4
;
1194 /* <var_tidnode3:nullable Object> isa nullable TId */
1195 cltype10
= type_nullable_parser_nodes__TId
.color
;
1196 idtype11
= type_nullable_parser_nodes__TId
.id
;
1197 if(var_tidnode3
== NULL
) {
1200 if(cltype10
>= var_tidnode3
->type
->table_size
) {
1203 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
1207 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1208 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25266);
1211 var_pexprsnode4
= var_nodearraylist5
;
1212 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
1213 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
1214 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
1215 if(var_pexprsnode4
== NULL
) {
1218 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
1221 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
1225 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1226 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25268);
1229 var_tassignnode5
= var_nodearraylist6
;
1230 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
1231 cltype16
= type_nullable_parser_nodes__TAssign
.color
;
1232 idtype17
= type_nullable_parser_nodes__TAssign
.id
;
1233 if(var_tassignnode5
== NULL
) {
1236 if(cltype16
>= var_tassignnode5
->type
->table_size
) {
1239 var15
= var_tassignnode5
->type
->type_table
[cltype16
] == idtype17
;
1243 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1244 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25270);
1247 var_pexprnode6
= var_nodearraylist7
;
1248 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
1249 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
1250 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
1251 if(var_pexprnode6
== NULL
) {
1254 if(cltype19
>= var_pexprnode6
->type
->table_size
) {
1257 var18
= var_pexprnode6
->type
->type_table
[cltype19
] == idtype20
;
1261 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1262 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25272);
1265 var21
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
1266 ((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>*/;
1267 var_pexprnode1
= var21
;
1268 var_node_list
= var_pexprnode1
;
1269 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction662> */
1270 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
1271 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
1274 /* method parser#ReduceAction662#action for (self: Object, Parser) */
1275 void VIRTUAL_parser__ReduceAction662__action(val
* self
, val
* p0
) {
1276 parser__ReduceAction662__action(self
, p0
);
1279 /* method parser#ReduceAction663#action for (self: ReduceAction663, Parser) */
1280 void parser__ReduceAction663__action(val
* self
, val
* p0
) {
1281 val
* var_p
/* var p: Parser */;
1282 val
* var
/* : null */;
1283 val
* var_node_list
/* var node_list: nullable Object */;
1284 val
* var1
/* : nullable Object */;
1285 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1286 val
* var2
/* : nullable Object */;
1287 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1288 val
* var3
/* : nullable Object */;
1289 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1290 val
* var4
/* : nullable Object */;
1291 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1292 val
* var5
/* : AImplicitSelfExpr */;
1293 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1294 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1295 short int var6
/* : Bool */;
1298 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
1299 short int var7
/* : Bool */;
1302 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
1303 short int var10
/* : Bool */;
1306 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1307 short int var13
/* : Bool */;
1310 val
* var16
/* : ACallAssignExpr */;
1311 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
1312 long var17
/* : Int */;
1313 long var18
/* : Int */;
1316 var_node_list
= var
;
1317 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1318 var_nodearraylist4
= var1
;
1319 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1320 var_nodearraylist3
= var2
;
1321 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1322 var_nodearraylist2
= var3
;
1323 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1324 var_nodearraylist1
= var4
;
1325 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1326 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
1327 var_pexprnode2
= var5
;
1328 var_tidnode3
= var_nodearraylist1
;
1329 /* <var_tidnode3:nullable Object> isa nullable TId */
1330 cltype
= type_nullable_parser_nodes__TId
.color
;
1331 idtype
= type_nullable_parser_nodes__TId
.id
;
1332 if(var_tidnode3
== NULL
) {
1335 if(cltype
>= var_tidnode3
->type
->table_size
) {
1338 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
1342 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1343 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25295);
1346 var_pexprsnode4
= var_nodearraylist2
;
1347 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
1348 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
1349 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
1350 if(var_pexprsnode4
== NULL
) {
1353 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
1356 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
1360 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1361 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25297);
1364 var_tassignnode5
= var_nodearraylist3
;
1365 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
1366 cltype11
= type_nullable_parser_nodes__TAssign
.color
;
1367 idtype12
= type_nullable_parser_nodes__TAssign
.id
;
1368 if(var_tassignnode5
== NULL
) {
1371 if(cltype11
>= var_tassignnode5
->type
->table_size
) {
1374 var10
= var_tassignnode5
->type
->type_table
[cltype11
] == idtype12
;
1378 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1379 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25299);
1382 var_pexprnode6
= var_nodearraylist4
;
1383 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
1384 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
1385 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
1386 if(var_pexprnode6
== NULL
) {
1389 if(cltype14
>= var_pexprnode6
->type
->table_size
) {
1392 var13
= var_pexprnode6
->type
->type_table
[cltype14
] == idtype15
;
1396 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1397 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25301);
1400 var16
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
1401 ((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>*/;
1402 var_pexprnode1
= var16
;
1403 var_node_list
= var_pexprnode1
;
1404 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction663> */
1405 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
1406 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
1409 /* method parser#ReduceAction663#action for (self: Object, Parser) */
1410 void VIRTUAL_parser__ReduceAction663__action(val
* self
, val
* p0
) {
1411 parser__ReduceAction663__action(self
, p0
);
1414 /* method parser#ReduceAction664#action for (self: ReduceAction664, Parser) */
1415 void parser__ReduceAction664__action(val
* self
, val
* p0
) {
1416 val
* var_p
/* var p: Parser */;
1417 val
* var
/* : null */;
1418 val
* var_node_list
/* var node_list: nullable Object */;
1419 val
* var1
/* : nullable Object */;
1420 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
1421 val
* var2
/* : nullable Object */;
1422 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1423 val
* var3
/* : nullable Object */;
1424 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1425 val
* var4
/* : nullable Object */;
1426 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1427 val
* var5
/* : nullable Object */;
1428 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1429 val
* var6
/* : nullable Object */;
1430 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1431 val
* var7
/* : nullable Object */;
1432 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1433 val
* var8
/* : nullable Object */;
1434 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1435 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1436 short int var9
/* : Bool */;
1439 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1440 short int var10
/* : Bool */;
1443 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
1444 short int var13
/* : Bool */;
1447 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
1448 short int var16
/* : Bool */;
1451 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1452 short int var19
/* : Bool */;
1455 val
* var22
/* : ACallAssignExpr */;
1456 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
1457 long var23
/* : Int */;
1458 long var24
/* : Int */;
1461 var_node_list
= var
;
1462 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1463 var_nodearraylist8
= var1
;
1464 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1465 var_nodearraylist7
= var2
;
1466 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1467 var_nodearraylist6
= var3
;
1468 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1469 var_nodearraylist5
= var4
;
1470 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1471 var_nodearraylist4
= var5
;
1472 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1473 var_nodearraylist3
= var6
;
1474 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1475 var_nodearraylist2
= var7
;
1476 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1477 var_nodearraylist1
= var8
;
1478 var_pexprnode2
= var_nodearraylist1
;
1479 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1480 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1481 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1482 if(var_pexprnode2
== NULL
) {
1485 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1488 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1492 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1493 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25327);
1496 var_tidnode3
= var_nodearraylist5
;
1497 /* <var_tidnode3:nullable Object> isa nullable TId */
1498 cltype11
= type_nullable_parser_nodes__TId
.color
;
1499 idtype12
= type_nullable_parser_nodes__TId
.id
;
1500 if(var_tidnode3
== NULL
) {
1503 if(cltype11
>= var_tidnode3
->type
->table_size
) {
1506 var10
= var_tidnode3
->type
->type_table
[cltype11
] == idtype12
;
1510 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1511 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25329);
1514 var_pexprsnode4
= var_nodearraylist6
;
1515 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
1516 cltype14
= type_nullable_parser_nodes__AExprs
.color
;
1517 idtype15
= type_nullable_parser_nodes__AExprs
.id
;
1518 if(var_pexprsnode4
== NULL
) {
1521 if(cltype14
>= var_pexprsnode4
->type
->table_size
) {
1524 var13
= var_pexprsnode4
->type
->type_table
[cltype14
] == idtype15
;
1528 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1529 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25331);
1532 var_tassignnode5
= var_nodearraylist7
;
1533 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
1534 cltype17
= type_nullable_parser_nodes__TAssign
.color
;
1535 idtype18
= type_nullable_parser_nodes__TAssign
.id
;
1536 if(var_tassignnode5
== NULL
) {
1539 if(cltype17
>= var_tassignnode5
->type
->table_size
) {
1542 var16
= var_tassignnode5
->type
->type_table
[cltype17
] == idtype18
;
1546 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1547 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25333);
1550 var_pexprnode6
= var_nodearraylist8
;
1551 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
1552 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
1553 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
1554 if(var_pexprnode6
== NULL
) {
1557 if(cltype20
>= var_pexprnode6
->type
->table_size
) {
1560 var19
= var_pexprnode6
->type
->type_table
[cltype20
] == idtype21
;
1564 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1565 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25335);
1568 var22
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
1569 ((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>*/;
1570 var_pexprnode1
= var22
;
1571 var_node_list
= var_pexprnode1
;
1572 var23
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction664> */
1573 var24
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var23
) /* go_to on <var_p:Parser>*/;
1574 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var24
, var_node_list
) /* push on <var_p:Parser>*/;
1577 /* method parser#ReduceAction664#action for (self: Object, Parser) */
1578 void VIRTUAL_parser__ReduceAction664__action(val
* self
, val
* p0
) {
1579 parser__ReduceAction664__action(self
, p0
);
1582 /* method parser#ReduceAction665#action for (self: ReduceAction665, Parser) */
1583 void parser__ReduceAction665__action(val
* self
, val
* p0
) {
1584 val
* var_p
/* var p: Parser */;
1585 val
* var
/* : null */;
1586 val
* var_node_list
/* var node_list: nullable Object */;
1587 val
* var1
/* : nullable Object */;
1588 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
1589 val
* var2
/* : nullable Object */;
1590 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
1591 val
* var3
/* : nullable Object */;
1592 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1593 val
* var4
/* : nullable Object */;
1594 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1595 val
* var5
/* : nullable Object */;
1596 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1597 val
* var6
/* : nullable Object */;
1598 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1599 val
* var7
/* : nullable Object */;
1600 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1601 val
* var8
/* : nullable Object */;
1602 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1603 val
* var9
/* : nullable Object */;
1604 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1605 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
1606 short int var10
/* : Bool */;
1609 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1610 short int var11
/* : Bool */;
1613 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
1614 short int var14
/* : Bool */;
1617 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
1618 short int var17
/* : Bool */;
1621 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1622 short int var20
/* : Bool */;
1625 val
* var23
/* : ACallAssignExpr */;
1626 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
1627 long var24
/* : Int */;
1628 long var25
/* : Int */;
1631 var_node_list
= var
;
1632 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1633 var_nodearraylist9
= var1
;
1634 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1635 var_nodearraylist8
= var2
;
1636 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1637 var_nodearraylist7
= var3
;
1638 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1639 var_nodearraylist6
= var4
;
1640 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1641 var_nodearraylist5
= var5
;
1642 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1643 var_nodearraylist4
= var6
;
1644 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1645 var_nodearraylist3
= var7
;
1646 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1647 var_nodearraylist2
= var8
;
1648 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1649 var_nodearraylist1
= var9
;
1650 var_pexprnode2
= var_nodearraylist1
;
1651 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
1652 cltype
= type_nullable_parser_nodes__AExpr
.color
;
1653 idtype
= type_nullable_parser_nodes__AExpr
.id
;
1654 if(var_pexprnode2
== NULL
) {
1657 if(cltype
>= var_pexprnode2
->type
->table_size
) {
1660 var10
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
1664 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1665 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25362);
1668 var_tidnode3
= var_nodearraylist6
;
1669 /* <var_tidnode3:nullable Object> isa nullable TId */
1670 cltype12
= type_nullable_parser_nodes__TId
.color
;
1671 idtype13
= type_nullable_parser_nodes__TId
.id
;
1672 if(var_tidnode3
== NULL
) {
1675 if(cltype12
>= var_tidnode3
->type
->table_size
) {
1678 var11
= var_tidnode3
->type
->type_table
[cltype12
] == idtype13
;
1682 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1683 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25364);
1686 var_pexprsnode4
= var_nodearraylist7
;
1687 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
1688 cltype15
= type_nullable_parser_nodes__AExprs
.color
;
1689 idtype16
= type_nullable_parser_nodes__AExprs
.id
;
1690 if(var_pexprsnode4
== NULL
) {
1693 if(cltype15
>= var_pexprsnode4
->type
->table_size
) {
1696 var14
= var_pexprsnode4
->type
->type_table
[cltype15
] == idtype16
;
1700 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1701 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25366);
1704 var_tassignnode5
= var_nodearraylist8
;
1705 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
1706 cltype18
= type_nullable_parser_nodes__TAssign
.color
;
1707 idtype19
= type_nullable_parser_nodes__TAssign
.id
;
1708 if(var_tassignnode5
== NULL
) {
1711 if(cltype18
>= var_tassignnode5
->type
->table_size
) {
1714 var17
= var_tassignnode5
->type
->type_table
[cltype18
] == idtype19
;
1718 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1719 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25368);
1722 var_pexprnode6
= var_nodearraylist9
;
1723 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
1724 cltype21
= type_nullable_parser_nodes__AExpr
.color
;
1725 idtype22
= type_nullable_parser_nodes__AExpr
.id
;
1726 if(var_pexprnode6
== NULL
) {
1729 if(cltype21
>= var_pexprnode6
->type
->table_size
) {
1732 var20
= var_pexprnode6
->type
->type_table
[cltype21
] == idtype22
;
1736 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1737 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25370);
1740 var23
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
1741 ((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>*/;
1742 var_pexprnode1
= var23
;
1743 var_node_list
= var_pexprnode1
;
1744 var24
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction665> */
1745 var25
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var24
) /* go_to on <var_p:Parser>*/;
1746 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var25
, var_node_list
) /* push on <var_p:Parser>*/;
1749 /* method parser#ReduceAction665#action for (self: Object, Parser) */
1750 void VIRTUAL_parser__ReduceAction665__action(val
* self
, val
* p0
) {
1751 parser__ReduceAction665__action(self
, p0
);
1754 /* method parser#ReduceAction667#action for (self: ReduceAction667, Parser) */
1755 void parser__ReduceAction667__action(val
* self
, val
* p0
) {
1756 val
* var_p
/* var p: Parser */;
1757 val
* var
/* : null */;
1758 val
* var_node_list
/* var node_list: nullable Object */;
1759 val
* var1
/* : nullable Object */;
1760 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1761 val
* var2
/* : nullable Object */;
1762 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1763 val
* var3
/* : nullable Object */;
1764 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1765 val
* var4
/* : nullable Object */;
1766 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1767 val
* var5
/* : nullable Object */;
1768 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1769 val
* var6
/* : AImplicitSelfExpr */;
1770 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1771 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1772 short int var7
/* : Bool */;
1775 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
1776 short int var8
/* : Bool */;
1779 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
1780 short int var11
/* : Bool */;
1783 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1784 short int var14
/* : Bool */;
1787 val
* var17
/* : ACallAssignExpr */;
1788 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
1789 long var18
/* : Int */;
1790 long var19
/* : Int */;
1793 var_node_list
= var
;
1794 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1795 var_nodearraylist5
= var1
;
1796 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1797 var_nodearraylist4
= var2
;
1798 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1799 var_nodearraylist3
= var3
;
1800 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1801 var_nodearraylist2
= var4
;
1802 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1803 var_nodearraylist1
= var5
;
1804 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1805 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
1806 var_pexprnode2
= var6
;
1807 var_tidnode3
= var_nodearraylist2
;
1808 /* <var_tidnode3:nullable Object> isa nullable TId */
1809 cltype
= type_nullable_parser_nodes__TId
.color
;
1810 idtype
= type_nullable_parser_nodes__TId
.id
;
1811 if(var_tidnode3
== NULL
) {
1814 if(cltype
>= var_tidnode3
->type
->table_size
) {
1817 var7
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
1821 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1822 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25394);
1825 var_pexprsnode4
= var_nodearraylist3
;
1826 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
1827 cltype9
= type_nullable_parser_nodes__AExprs
.color
;
1828 idtype10
= type_nullable_parser_nodes__AExprs
.id
;
1829 if(var_pexprsnode4
== NULL
) {
1832 if(cltype9
>= var_pexprsnode4
->type
->table_size
) {
1835 var8
= var_pexprsnode4
->type
->type_table
[cltype9
] == idtype10
;
1839 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1840 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25396);
1843 var_tassignnode5
= var_nodearraylist4
;
1844 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
1845 cltype12
= type_nullable_parser_nodes__TAssign
.color
;
1846 idtype13
= type_nullable_parser_nodes__TAssign
.id
;
1847 if(var_tassignnode5
== NULL
) {
1850 if(cltype12
>= var_tassignnode5
->type
->table_size
) {
1853 var11
= var_tassignnode5
->type
->type_table
[cltype12
] == idtype13
;
1857 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1858 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25398);
1861 var_pexprnode6
= var_nodearraylist5
;
1862 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
1863 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
1864 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
1865 if(var_pexprnode6
== NULL
) {
1868 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
1871 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
1875 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1876 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25400);
1879 var17
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
1880 ((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>*/;
1881 var_pexprnode1
= var17
;
1882 var_node_list
= var_pexprnode1
;
1883 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction667> */
1884 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
1885 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
1888 /* method parser#ReduceAction667#action for (self: Object, Parser) */
1889 void VIRTUAL_parser__ReduceAction667__action(val
* self
, val
* p0
) {
1890 parser__ReduceAction667__action(self
, p0
);
1893 /* method parser#ReduceAction668#action for (self: ReduceAction668, Parser) */
1894 void parser__ReduceAction668__action(val
* self
, val
* p0
) {
1895 val
* var_p
/* var p: Parser */;
1896 val
* var
/* : null */;
1897 val
* var_node_list
/* var node_list: nullable Object */;
1898 val
* var1
/* : nullable Object */;
1899 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1900 val
* var2
/* : nullable Object */;
1901 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1902 val
* var3
/* : nullable Object */;
1903 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1904 val
* var4
/* : nullable Object */;
1905 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1906 val
* var5
/* : nullable Object */;
1907 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1908 val
* var6
/* : nullable Object */;
1909 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1910 val
* var7
/* : AImplicitSelfExpr */;
1911 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1912 val
* var_tidnode3
/* var tidnode3: nullable Object */;
1913 short int var8
/* : Bool */;
1916 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
1917 short int var9
/* : Bool */;
1920 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
1921 short int var12
/* : Bool */;
1924 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
1925 short int var15
/* : Bool */;
1928 val
* var18
/* : ACallAssignExpr */;
1929 val
* var_pexprnode1
/* var pexprnode1: nullable ACallAssignExpr */;
1930 long var19
/* : Int */;
1931 long var20
/* : Int */;
1934 var_node_list
= var
;
1935 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1936 var_nodearraylist6
= var1
;
1937 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1938 var_nodearraylist5
= var2
;
1939 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1940 var_nodearraylist4
= var3
;
1941 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1942 var_nodearraylist3
= var4
;
1943 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1944 var_nodearraylist2
= var5
;
1945 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1946 var_nodearraylist1
= var6
;
1947 var7
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
1948 ((void (*)(val
*))(var7
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var7
) /* init_aimplicitselfexpr on <var7:AImplicitSelfExpr>*/;
1949 var_pexprnode2
= var7
;
1950 var_tidnode3
= var_nodearraylist3
;
1951 /* <var_tidnode3:nullable Object> isa nullable TId */
1952 cltype
= type_nullable_parser_nodes__TId
.color
;
1953 idtype
= type_nullable_parser_nodes__TId
.id
;
1954 if(var_tidnode3
== NULL
) {
1957 if(cltype
>= var_tidnode3
->type
->table_size
) {
1960 var8
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
1964 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1965 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25425);
1968 var_pexprsnode4
= var_nodearraylist4
;
1969 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
1970 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
1971 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
1972 if(var_pexprsnode4
== NULL
) {
1975 if(cltype10
>= var_pexprsnode4
->type
->table_size
) {
1978 var9
= var_pexprsnode4
->type
->type_table
[cltype10
] == idtype11
;
1982 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1983 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25427);
1986 var_tassignnode5
= var_nodearraylist5
;
1987 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
1988 cltype13
= type_nullable_parser_nodes__TAssign
.color
;
1989 idtype14
= type_nullable_parser_nodes__TAssign
.id
;
1990 if(var_tassignnode5
== NULL
) {
1993 if(cltype13
>= var_tassignnode5
->type
->table_size
) {
1996 var12
= var_tassignnode5
->type
->type_table
[cltype13
] == idtype14
;
2000 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2001 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25429);
2004 var_pexprnode6
= var_nodearraylist6
;
2005 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
2006 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
2007 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
2008 if(var_pexprnode6
== NULL
) {
2011 if(cltype16
>= var_pexprnode6
->type
->table_size
) {
2014 var15
= var_pexprnode6
->type
->type_table
[cltype16
] == idtype17
;
2018 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2019 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25431);
2022 var18
= NEW_parser_nodes__ACallAssignExpr(&type_parser_nodes__ACallAssignExpr
);
2023 ((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>*/;
2024 var_pexprnode1
= var18
;
2025 var_node_list
= var_pexprnode1
;
2026 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction668> */
2027 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
2028 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
2031 /* method parser#ReduceAction668#action for (self: Object, Parser) */
2032 void VIRTUAL_parser__ReduceAction668__action(val
* self
, val
* p0
) {
2033 parser__ReduceAction668__action(self
, p0
);
2036 /* method parser#ReduceAction670#action for (self: ReduceAction670, Parser) */
2037 void parser__ReduceAction670__action(val
* self
, val
* p0
) {
2038 val
* var_p
/* var p: Parser */;
2039 val
* var
/* : null */;
2040 val
* var_node_list
/* var node_list: nullable Object */;
2041 val
* var1
/* : nullable Object */;
2042 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2043 val
* var2
/* : nullable Object */;
2044 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2045 val
* var3
/* : nullable Object */;
2046 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2047 val
* var4
/* : nullable Object */;
2048 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2049 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2050 short int var5
/* : Bool */;
2053 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
2054 short int var6
/* : Bool */;
2057 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
2058 short int var9
/* : Bool */;
2061 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2062 short int var12
/* : Bool */;
2065 val
* var15
/* : ABraAssignExpr */;
2066 val
* var_pexprnode1
/* var pexprnode1: nullable ABraAssignExpr */;
2067 long var16
/* : Int */;
2068 long var17
/* : Int */;
2071 var_node_list
= var
;
2072 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2073 var_nodearraylist4
= var1
;
2074 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2075 var_nodearraylist3
= var2
;
2076 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2077 var_nodearraylist2
= var3
;
2078 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2079 var_nodearraylist1
= var4
;
2080 var_pexprnode2
= var_nodearraylist1
;
2081 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2082 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2083 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2084 if(var_pexprnode2
== NULL
) {
2087 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2090 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2094 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2095 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25453);
2098 var_pexprsnode3
= var_nodearraylist2
;
2099 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
2100 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
2101 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
2102 if(var_pexprsnode3
== NULL
) {
2105 if(cltype7
>= var_pexprsnode3
->type
->table_size
) {
2108 var6
= var_pexprsnode3
->type
->type_table
[cltype7
] == idtype8
;
2112 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2113 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25455);
2116 var_tassignnode4
= var_nodearraylist3
;
2117 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
2118 cltype10
= type_nullable_parser_nodes__TAssign
.color
;
2119 idtype11
= type_nullable_parser_nodes__TAssign
.id
;
2120 if(var_tassignnode4
== NULL
) {
2123 if(cltype10
>= var_tassignnode4
->type
->table_size
) {
2126 var9
= var_tassignnode4
->type
->type_table
[cltype10
] == idtype11
;
2130 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2131 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25457);
2134 var_pexprnode5
= var_nodearraylist4
;
2135 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2136 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
2137 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
2138 if(var_pexprnode5
== NULL
) {
2141 if(cltype13
>= var_pexprnode5
->type
->table_size
) {
2144 var12
= var_pexprnode5
->type
->type_table
[cltype13
] == idtype14
;
2148 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2149 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25459);
2152 var15
= NEW_parser_nodes__ABraAssignExpr(&type_parser_nodes__ABraAssignExpr
);
2153 ((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>*/;
2154 var_pexprnode1
= var15
;
2155 var_node_list
= var_pexprnode1
;
2156 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction670> */
2157 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
2158 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
2161 /* method parser#ReduceAction670#action for (self: Object, Parser) */
2162 void VIRTUAL_parser__ReduceAction670__action(val
* self
, val
* p0
) {
2163 parser__ReduceAction670__action(self
, p0
);
2166 /* method parser#ReduceAction671#action for (self: ReduceAction671, Parser) */
2167 void parser__ReduceAction671__action(val
* self
, val
* p0
) {
2168 val
* var_p
/* var p: Parser */;
2169 val
* var
/* : null */;
2170 val
* var_node_list
/* var node_list: nullable Object */;
2171 val
* var1
/* : nullable Object */;
2172 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2173 val
* var2
/* : nullable Object */;
2174 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2175 val
* var3
/* : nullable Object */;
2176 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2177 val
* var4
/* : nullable Object */;
2178 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2179 val
* var5
/* : nullable Object */;
2180 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2181 val
* var6
/* : nullable Object */;
2182 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2183 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2184 short int var7
/* : Bool */;
2187 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
2188 short int var8
/* : Bool */;
2191 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
2192 short int var11
/* : Bool */;
2195 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2196 short int var14
/* : Bool */;
2199 val
* var17
/* : AAttrReassignExpr */;
2200 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
2201 long var18
/* : Int */;
2202 long var19
/* : Int */;
2205 var_node_list
= var
;
2206 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2207 var_nodearraylist6
= var1
;
2208 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2209 var_nodearraylist5
= var2
;
2210 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2211 var_nodearraylist4
= var3
;
2212 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2213 var_nodearraylist3
= var4
;
2214 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2215 var_nodearraylist2
= var5
;
2216 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2217 var_nodearraylist1
= var6
;
2218 var_pexprnode2
= var_nodearraylist1
;
2219 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2220 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2221 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2222 if(var_pexprnode2
== NULL
) {
2225 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2228 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2232 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2233 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25482);
2236 var_tattridnode3
= var_nodearraylist4
;
2237 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
2238 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
2239 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
2240 if(var_tattridnode3
== NULL
) {
2243 if(cltype9
>= var_tattridnode3
->type
->table_size
) {
2246 var8
= var_tattridnode3
->type
->type_table
[cltype9
] == idtype10
;
2250 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2251 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25484);
2254 var_passignopnode4
= var_nodearraylist5
;
2255 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
2256 cltype12
= type_nullable_parser_nodes__AAssignOp
.color
;
2257 idtype13
= type_nullable_parser_nodes__AAssignOp
.id
;
2258 if(var_passignopnode4
== NULL
) {
2261 if(cltype12
>= var_passignopnode4
->type
->table_size
) {
2264 var11
= var_passignopnode4
->type
->type_table
[cltype12
] == idtype13
;
2268 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2269 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25486);
2272 var_pexprnode5
= var_nodearraylist6
;
2273 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2274 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
2275 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
2276 if(var_pexprnode5
== NULL
) {
2279 if(cltype15
>= var_pexprnode5
->type
->table_size
) {
2282 var14
= var_pexprnode5
->type
->type_table
[cltype15
] == idtype16
;
2286 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2287 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25488);
2290 var17
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
2291 ((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>*/;
2292 var_pexprnode1
= var17
;
2293 var_node_list
= var_pexprnode1
;
2294 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction671> */
2295 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
2296 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
2299 /* method parser#ReduceAction671#action for (self: Object, Parser) */
2300 void VIRTUAL_parser__ReduceAction671__action(val
* self
, val
* p0
) {
2301 parser__ReduceAction671__action(self
, p0
);
2304 /* method parser#ReduceAction672#action for (self: ReduceAction672, Parser) */
2305 void parser__ReduceAction672__action(val
* self
, val
* p0
) {
2306 val
* var_p
/* var p: Parser */;
2307 val
* var
/* : null */;
2308 val
* var_node_list
/* var node_list: nullable Object */;
2309 val
* var1
/* : nullable Object */;
2310 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2311 val
* var2
/* : nullable Object */;
2312 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2313 val
* var3
/* : nullable Object */;
2314 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2315 val
* var4
/* : AImplicitSelfExpr */;
2316 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
2317 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
2318 short int var5
/* : Bool */;
2321 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
2322 short int var6
/* : Bool */;
2325 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2326 short int var9
/* : Bool */;
2329 val
* var12
/* : AAttrReassignExpr */;
2330 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
2331 long var13
/* : Int */;
2332 long var14
/* : Int */;
2335 var_node_list
= var
;
2336 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2337 var_nodearraylist3
= var1
;
2338 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2339 var_nodearraylist2
= var2
;
2340 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2341 var_nodearraylist1
= var3
;
2342 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
2343 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
2344 var_pexprnode2
= var4
;
2345 var_tattridnode3
= var_nodearraylist1
;
2346 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
2347 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
2348 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
2349 if(var_tattridnode3
== NULL
) {
2352 if(cltype
>= var_tattridnode3
->type
->table_size
) {
2355 var5
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
2359 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2360 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25509);
2363 var_passignopnode4
= var_nodearraylist2
;
2364 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
2365 cltype7
= type_nullable_parser_nodes__AAssignOp
.color
;
2366 idtype8
= type_nullable_parser_nodes__AAssignOp
.id
;
2367 if(var_passignopnode4
== NULL
) {
2370 if(cltype7
>= var_passignopnode4
->type
->table_size
) {
2373 var6
= var_passignopnode4
->type
->type_table
[cltype7
] == idtype8
;
2377 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2378 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25511);
2381 var_pexprnode5
= var_nodearraylist3
;
2382 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2383 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
2384 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
2385 if(var_pexprnode5
== NULL
) {
2388 if(cltype10
>= var_pexprnode5
->type
->table_size
) {
2391 var9
= var_pexprnode5
->type
->type_table
[cltype10
] == idtype11
;
2395 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2396 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25513);
2399 var12
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
2400 ((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>*/;
2401 var_pexprnode1
= var12
;
2402 var_node_list
= var_pexprnode1
;
2403 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction672> */
2404 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
2405 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
2408 /* method parser#ReduceAction672#action for (self: Object, Parser) */
2409 void VIRTUAL_parser__ReduceAction672__action(val
* self
, val
* p0
) {
2410 parser__ReduceAction672__action(self
, p0
);
2413 /* method parser#ReduceAction673#action for (self: ReduceAction673, Parser) */
2414 void parser__ReduceAction673__action(val
* self
, val
* p0
) {
2415 val
* var_p
/* var p: Parser */;
2416 val
* var
/* : null */;
2417 val
* var_node_list
/* var node_list: nullable Object */;
2418 val
* var1
/* : nullable Object */;
2419 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2420 val
* var2
/* : nullable Object */;
2421 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2422 val
* var3
/* : nullable Object */;
2423 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2424 val
* var4
/* : nullable Object */;
2425 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2426 val
* var5
/* : nullable Object */;
2427 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2428 val
* var6
/* : nullable Object */;
2429 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2430 val
* var7
/* : nullable Object */;
2431 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2432 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2433 short int var8
/* : Bool */;
2436 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
2437 short int var9
/* : Bool */;
2440 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
2441 short int var12
/* : Bool */;
2444 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2445 short int var15
/* : Bool */;
2448 val
* var18
/* : AAttrReassignExpr */;
2449 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
2450 long var19
/* : Int */;
2451 long var20
/* : Int */;
2454 var_node_list
= var
;
2455 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2456 var_nodearraylist7
= var1
;
2457 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2458 var_nodearraylist6
= var2
;
2459 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2460 var_nodearraylist5
= var3
;
2461 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2462 var_nodearraylist4
= var4
;
2463 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2464 var_nodearraylist3
= var5
;
2465 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2466 var_nodearraylist2
= var6
;
2467 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2468 var_nodearraylist1
= var7
;
2469 var_pexprnode2
= var_nodearraylist1
;
2470 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2471 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2472 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2473 if(var_pexprnode2
== NULL
) {
2476 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2479 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2483 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2484 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25537);
2487 var_tattridnode3
= var_nodearraylist5
;
2488 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
2489 cltype10
= type_nullable_parser_nodes__TAttrid
.color
;
2490 idtype11
= type_nullable_parser_nodes__TAttrid
.id
;
2491 if(var_tattridnode3
== NULL
) {
2494 if(cltype10
>= var_tattridnode3
->type
->table_size
) {
2497 var9
= var_tattridnode3
->type
->type_table
[cltype10
] == idtype11
;
2501 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2502 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25539);
2505 var_passignopnode4
= var_nodearraylist6
;
2506 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
2507 cltype13
= type_nullable_parser_nodes__AAssignOp
.color
;
2508 idtype14
= type_nullable_parser_nodes__AAssignOp
.id
;
2509 if(var_passignopnode4
== NULL
) {
2512 if(cltype13
>= var_passignopnode4
->type
->table_size
) {
2515 var12
= var_passignopnode4
->type
->type_table
[cltype13
] == idtype14
;
2519 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2520 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25541);
2523 var_pexprnode5
= var_nodearraylist7
;
2524 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2525 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
2526 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
2527 if(var_pexprnode5
== NULL
) {
2530 if(cltype16
>= var_pexprnode5
->type
->table_size
) {
2533 var15
= var_pexprnode5
->type
->type_table
[cltype16
] == idtype17
;
2537 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2538 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25543);
2541 var18
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
2542 ((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>*/;
2543 var_pexprnode1
= var18
;
2544 var_node_list
= var_pexprnode1
;
2545 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction673> */
2546 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
2547 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
2550 /* method parser#ReduceAction673#action for (self: Object, Parser) */
2551 void VIRTUAL_parser__ReduceAction673__action(val
* self
, val
* p0
) {
2552 parser__ReduceAction673__action(self
, p0
);
2555 /* method parser#ReduceAction674#action for (self: ReduceAction674, Parser) */
2556 void parser__ReduceAction674__action(val
* self
, val
* p0
) {
2557 val
* var_p
/* var p: Parser */;
2558 val
* var
/* : null */;
2559 val
* var_node_list
/* var node_list: nullable Object */;
2560 val
* var1
/* : nullable Object */;
2561 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
2562 val
* var2
/* : nullable Object */;
2563 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2564 val
* var3
/* : nullable Object */;
2565 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2566 val
* var4
/* : nullable Object */;
2567 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2568 val
* var5
/* : nullable Object */;
2569 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2570 val
* var6
/* : nullable Object */;
2571 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2572 val
* var7
/* : nullable Object */;
2573 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2574 val
* var8
/* : nullable Object */;
2575 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2576 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2577 short int var9
/* : Bool */;
2580 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
2581 short int var10
/* : Bool */;
2584 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
2585 short int var13
/* : Bool */;
2588 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2589 short int var16
/* : Bool */;
2592 val
* var19
/* : AAttrReassignExpr */;
2593 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
2594 long var20
/* : Int */;
2595 long var21
/* : Int */;
2598 var_node_list
= var
;
2599 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2600 var_nodearraylist8
= var1
;
2601 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2602 var_nodearraylist7
= var2
;
2603 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2604 var_nodearraylist6
= var3
;
2605 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2606 var_nodearraylist5
= var4
;
2607 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2608 var_nodearraylist4
= var5
;
2609 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2610 var_nodearraylist3
= var6
;
2611 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2612 var_nodearraylist2
= var7
;
2613 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2614 var_nodearraylist1
= var8
;
2615 var_pexprnode2
= var_nodearraylist1
;
2616 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2617 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2618 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2619 if(var_pexprnode2
== NULL
) {
2622 if(cltype
>= var_pexprnode2
->type
->table_size
) {
2625 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
2629 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2630 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25568);
2633 var_tattridnode3
= var_nodearraylist6
;
2634 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
2635 cltype11
= type_nullable_parser_nodes__TAttrid
.color
;
2636 idtype12
= type_nullable_parser_nodes__TAttrid
.id
;
2637 if(var_tattridnode3
== NULL
) {
2640 if(cltype11
>= var_tattridnode3
->type
->table_size
) {
2643 var10
= var_tattridnode3
->type
->type_table
[cltype11
] == idtype12
;
2647 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2648 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25570);
2651 var_passignopnode4
= var_nodearraylist7
;
2652 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
2653 cltype14
= type_nullable_parser_nodes__AAssignOp
.color
;
2654 idtype15
= type_nullable_parser_nodes__AAssignOp
.id
;
2655 if(var_passignopnode4
== NULL
) {
2658 if(cltype14
>= var_passignopnode4
->type
->table_size
) {
2661 var13
= var_passignopnode4
->type
->type_table
[cltype14
] == idtype15
;
2665 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2666 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25572);
2669 var_pexprnode5
= var_nodearraylist8
;
2670 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2671 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
2672 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
2673 if(var_pexprnode5
== NULL
) {
2676 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
2679 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
2683 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2684 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25574);
2687 var19
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
2688 ((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>*/;
2689 var_pexprnode1
= var19
;
2690 var_node_list
= var_pexprnode1
;
2691 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction674> */
2692 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
2693 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
2696 /* method parser#ReduceAction674#action for (self: Object, Parser) */
2697 void VIRTUAL_parser__ReduceAction674__action(val
* self
, val
* p0
) {
2698 parser__ReduceAction674__action(self
, p0
);
2701 /* method parser#ReduceAction676#action for (self: ReduceAction676, Parser) */
2702 void parser__ReduceAction676__action(val
* self
, val
* p0
) {
2703 val
* var_p
/* var p: Parser */;
2704 val
* var
/* : null */;
2705 val
* var_node_list
/* var node_list: nullable Object */;
2706 val
* var1
/* : nullable Object */;
2707 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2708 val
* var2
/* : nullable Object */;
2709 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2710 val
* var3
/* : nullable Object */;
2711 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2712 val
* var4
/* : nullable Object */;
2713 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2714 val
* var5
/* : AImplicitSelfExpr */;
2715 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
2716 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
2717 short int var6
/* : Bool */;
2720 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
2721 short int var7
/* : Bool */;
2724 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2725 short int var10
/* : Bool */;
2728 val
* var13
/* : AAttrReassignExpr */;
2729 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
2730 long var14
/* : Int */;
2731 long var15
/* : Int */;
2734 var_node_list
= var
;
2735 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2736 var_nodearraylist4
= var1
;
2737 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2738 var_nodearraylist3
= var2
;
2739 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2740 var_nodearraylist2
= var3
;
2741 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2742 var_nodearraylist1
= var4
;
2743 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
2744 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
2745 var_pexprnode2
= var5
;
2746 var_tattridnode3
= var_nodearraylist2
;
2747 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
2748 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
2749 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
2750 if(var_tattridnode3
== NULL
) {
2753 if(cltype
>= var_tattridnode3
->type
->table_size
) {
2756 var6
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
2760 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2761 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25596);
2764 var_passignopnode4
= var_nodearraylist3
;
2765 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
2766 cltype8
= type_nullable_parser_nodes__AAssignOp
.color
;
2767 idtype9
= type_nullable_parser_nodes__AAssignOp
.id
;
2768 if(var_passignopnode4
== NULL
) {
2771 if(cltype8
>= var_passignopnode4
->type
->table_size
) {
2774 var7
= var_passignopnode4
->type
->type_table
[cltype8
] == idtype9
;
2778 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2779 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25598);
2782 var_pexprnode5
= var_nodearraylist4
;
2783 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2784 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
2785 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
2786 if(var_pexprnode5
== NULL
) {
2789 if(cltype11
>= var_pexprnode5
->type
->table_size
) {
2792 var10
= var_pexprnode5
->type
->type_table
[cltype11
] == idtype12
;
2796 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2797 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25600);
2800 var13
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
2801 ((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>*/;
2802 var_pexprnode1
= var13
;
2803 var_node_list
= var_pexprnode1
;
2804 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction676> */
2805 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
2806 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
2809 /* method parser#ReduceAction676#action for (self: Object, Parser) */
2810 void VIRTUAL_parser__ReduceAction676__action(val
* self
, val
* p0
) {
2811 parser__ReduceAction676__action(self
, p0
);
2814 /* method parser#ReduceAction677#action for (self: ReduceAction677, Parser) */
2815 void parser__ReduceAction677__action(val
* self
, val
* p0
) {
2816 val
* var_p
/* var p: Parser */;
2817 val
* var
/* : null */;
2818 val
* var_node_list
/* var node_list: nullable Object */;
2819 val
* var1
/* : nullable Object */;
2820 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2821 val
* var2
/* : nullable Object */;
2822 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2823 val
* var3
/* : nullable Object */;
2824 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2825 val
* var4
/* : nullable Object */;
2826 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2827 val
* var5
/* : nullable Object */;
2828 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2829 val
* var6
/* : AImplicitSelfExpr */;
2830 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
2831 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
2832 short int var7
/* : Bool */;
2835 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
2836 short int var8
/* : Bool */;
2839 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2840 short int var11
/* : Bool */;
2843 val
* var14
/* : AAttrReassignExpr */;
2844 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrReassignExpr */;
2845 long var15
/* : Int */;
2846 long var16
/* : Int */;
2849 var_node_list
= var
;
2850 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2851 var_nodearraylist5
= var1
;
2852 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2853 var_nodearraylist4
= var2
;
2854 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2855 var_nodearraylist3
= var3
;
2856 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2857 var_nodearraylist2
= var4
;
2858 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2859 var_nodearraylist1
= var5
;
2860 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
2861 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
2862 var_pexprnode2
= var6
;
2863 var_tattridnode3
= var_nodearraylist3
;
2864 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
2865 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
2866 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
2867 if(var_tattridnode3
== NULL
) {
2870 if(cltype
>= var_tattridnode3
->type
->table_size
) {
2873 var7
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
2877 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2878 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25623);
2881 var_passignopnode4
= var_nodearraylist4
;
2882 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
2883 cltype9
= type_nullable_parser_nodes__AAssignOp
.color
;
2884 idtype10
= type_nullable_parser_nodes__AAssignOp
.id
;
2885 if(var_passignopnode4
== NULL
) {
2888 if(cltype9
>= var_passignopnode4
->type
->table_size
) {
2891 var8
= var_passignopnode4
->type
->type_table
[cltype9
] == idtype10
;
2895 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2896 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25625);
2899 var_pexprnode5
= var_nodearraylist5
;
2900 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2901 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
2902 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
2903 if(var_pexprnode5
== NULL
) {
2906 if(cltype12
>= var_pexprnode5
->type
->table_size
) {
2909 var11
= var_pexprnode5
->type
->type_table
[cltype12
] == idtype13
;
2913 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2914 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25627);
2917 var14
= NEW_parser_nodes__AAttrReassignExpr(&type_parser_nodes__AAttrReassignExpr
);
2918 ((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>*/;
2919 var_pexprnode1
= var14
;
2920 var_node_list
= var_pexprnode1
;
2921 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction677> */
2922 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
2923 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
2926 /* method parser#ReduceAction677#action for (self: Object, Parser) */
2927 void VIRTUAL_parser__ReduceAction677__action(val
* self
, val
* p0
) {
2928 parser__ReduceAction677__action(self
, p0
);
2931 /* method parser#ReduceAction679#action for (self: ReduceAction679, Parser) */
2932 void parser__ReduceAction679__action(val
* self
, val
* p0
) {
2933 val
* var_p
/* var p: Parser */;
2934 val
* var
/* : null */;
2935 val
* var_node_list
/* var node_list: nullable Object */;
2936 val
* var1
/* : nullable Object */;
2937 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
2938 val
* var2
/* : nullable Object */;
2939 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
2940 val
* var3
/* : nullable Object */;
2941 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
2942 val
* var4
/* : nullable Object */;
2943 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2944 val
* var5
/* : nullable Object */;
2945 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2946 val
* var6
/* : nullable Object */;
2947 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2948 val
* var7
/* : nullable Object */;
2949 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2950 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2951 short int var8
/* : Bool */;
2954 val
* var_tidnode3
/* var tidnode3: nullable Object */;
2955 short int var9
/* : Bool */;
2958 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
2959 short int var12
/* : Bool */;
2962 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
2963 short int var15
/* : Bool */;
2966 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
2967 short int var18
/* : Bool */;
2970 val
* var21
/* : ACallReassignExpr */;
2971 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
2972 long var22
/* : Int */;
2973 long var23
/* : Int */;
2976 var_node_list
= var
;
2977 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2978 var_nodearraylist7
= var1
;
2979 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2980 var_nodearraylist6
= var2
;
2981 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2982 var_nodearraylist5
= var3
;
2983 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2984 var_nodearraylist4
= var4
;
2985 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2986 var_nodearraylist3
= var5
;
2987 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2988 var_nodearraylist2
= var6
;
2989 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2990 var_nodearraylist1
= var7
;
2991 var_pexprnode2
= var_nodearraylist1
;
2992 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2993 cltype
= type_nullable_parser_nodes__AExpr
.color
;
2994 idtype
= type_nullable_parser_nodes__AExpr
.id
;
2995 if(var_pexprnode2
== NULL
) {
2998 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3001 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3005 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3006 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25651);
3009 var_tidnode3
= var_nodearraylist4
;
3010 /* <var_tidnode3:nullable Object> isa nullable TId */
3011 cltype10
= type_nullable_parser_nodes__TId
.color
;
3012 idtype11
= type_nullable_parser_nodes__TId
.id
;
3013 if(var_tidnode3
== NULL
) {
3016 if(cltype10
>= var_tidnode3
->type
->table_size
) {
3019 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
3023 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3024 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25653);
3027 var_pexprsnode4
= var_nodearraylist5
;
3028 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
3029 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
3030 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
3031 if(var_pexprsnode4
== NULL
) {
3034 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
3037 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
3041 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3042 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25655);
3045 var_passignopnode5
= var_nodearraylist6
;
3046 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
3047 cltype16
= type_nullable_parser_nodes__AAssignOp
.color
;
3048 idtype17
= type_nullable_parser_nodes__AAssignOp
.id
;
3049 if(var_passignopnode5
== NULL
) {
3052 if(cltype16
>= var_passignopnode5
->type
->table_size
) {
3055 var15
= var_passignopnode5
->type
->type_table
[cltype16
] == idtype17
;
3059 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3060 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25657);
3063 var_pexprnode6
= var_nodearraylist7
;
3064 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
3065 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
3066 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
3067 if(var_pexprnode6
== NULL
) {
3070 if(cltype19
>= var_pexprnode6
->type
->table_size
) {
3073 var18
= var_pexprnode6
->type
->type_table
[cltype19
] == idtype20
;
3077 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3078 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25659);
3081 var21
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
3082 ((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>*/;
3083 var_pexprnode1
= var21
;
3084 var_node_list
= var_pexprnode1
;
3085 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction679> */
3086 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
3087 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
3090 /* method parser#ReduceAction679#action for (self: Object, Parser) */
3091 void VIRTUAL_parser__ReduceAction679__action(val
* self
, val
* p0
) {
3092 parser__ReduceAction679__action(self
, p0
);
3095 /* method parser#ReduceAction680#action for (self: ReduceAction680, Parser) */
3096 void parser__ReduceAction680__action(val
* self
, val
* p0
) {
3097 val
* var_p
/* var p: Parser */;
3098 val
* var
/* : null */;
3099 val
* var_node_list
/* var node_list: nullable Object */;
3100 val
* var1
/* : nullable Object */;
3101 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3102 val
* var2
/* : nullable Object */;
3103 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3104 val
* var3
/* : nullable Object */;
3105 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3106 val
* var4
/* : nullable Object */;
3107 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3108 val
* var5
/* : AImplicitSelfExpr */;
3109 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
3110 val
* var_tidnode3
/* var tidnode3: nullable Object */;
3111 short int var6
/* : Bool */;
3114 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
3115 short int var7
/* : Bool */;
3118 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
3119 short int var10
/* : Bool */;
3122 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
3123 short int var13
/* : Bool */;
3126 val
* var16
/* : ACallReassignExpr */;
3127 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
3128 long var17
/* : Int */;
3129 long var18
/* : Int */;
3132 var_node_list
= var
;
3133 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3134 var_nodearraylist4
= var1
;
3135 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3136 var_nodearraylist3
= var2
;
3137 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3138 var_nodearraylist2
= var3
;
3139 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3140 var_nodearraylist1
= var4
;
3141 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
3142 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
3143 var_pexprnode2
= var5
;
3144 var_tidnode3
= var_nodearraylist1
;
3145 /* <var_tidnode3:nullable Object> isa nullable TId */
3146 cltype
= type_nullable_parser_nodes__TId
.color
;
3147 idtype
= type_nullable_parser_nodes__TId
.id
;
3148 if(var_tidnode3
== NULL
) {
3151 if(cltype
>= var_tidnode3
->type
->table_size
) {
3154 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
3158 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3159 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25682);
3162 var_pexprsnode4
= var_nodearraylist2
;
3163 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
3164 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
3165 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
3166 if(var_pexprsnode4
== NULL
) {
3169 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
3172 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
3176 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3177 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25684);
3180 var_passignopnode5
= var_nodearraylist3
;
3181 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
3182 cltype11
= type_nullable_parser_nodes__AAssignOp
.color
;
3183 idtype12
= type_nullable_parser_nodes__AAssignOp
.id
;
3184 if(var_passignopnode5
== NULL
) {
3187 if(cltype11
>= var_passignopnode5
->type
->table_size
) {
3190 var10
= var_passignopnode5
->type
->type_table
[cltype11
] == idtype12
;
3194 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3195 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25686);
3198 var_pexprnode6
= var_nodearraylist4
;
3199 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
3200 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
3201 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
3202 if(var_pexprnode6
== NULL
) {
3205 if(cltype14
>= var_pexprnode6
->type
->table_size
) {
3208 var13
= var_pexprnode6
->type
->type_table
[cltype14
] == idtype15
;
3212 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3213 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25688);
3216 var16
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
3217 ((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>*/;
3218 var_pexprnode1
= var16
;
3219 var_node_list
= var_pexprnode1
;
3220 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction680> */
3221 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
3222 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
3225 /* method parser#ReduceAction680#action for (self: Object, Parser) */
3226 void VIRTUAL_parser__ReduceAction680__action(val
* self
, val
* p0
) {
3227 parser__ReduceAction680__action(self
, p0
);
3230 /* method parser#ReduceAction681#action for (self: ReduceAction681, Parser) */
3231 void parser__ReduceAction681__action(val
* self
, val
* p0
) {
3232 val
* var_p
/* var p: Parser */;
3233 val
* var
/* : null */;
3234 val
* var_node_list
/* var node_list: nullable Object */;
3235 val
* var1
/* : nullable Object */;
3236 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3237 val
* var2
/* : nullable Object */;
3238 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3239 val
* var3
/* : nullable Object */;
3240 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3241 val
* var4
/* : nullable Object */;
3242 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3243 val
* var5
/* : nullable Object */;
3244 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3245 val
* var6
/* : nullable Object */;
3246 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3247 val
* var7
/* : nullable Object */;
3248 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3249 val
* var8
/* : nullable Object */;
3250 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3251 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
3252 short int var9
/* : Bool */;
3255 val
* var_tidnode3
/* var tidnode3: nullable Object */;
3256 short int var10
/* : Bool */;
3259 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
3260 short int var13
/* : Bool */;
3263 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
3264 short int var16
/* : Bool */;
3267 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
3268 short int var19
/* : Bool */;
3271 val
* var22
/* : ACallReassignExpr */;
3272 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
3273 long var23
/* : Int */;
3274 long var24
/* : Int */;
3277 var_node_list
= var
;
3278 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3279 var_nodearraylist8
= var1
;
3280 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3281 var_nodearraylist7
= var2
;
3282 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3283 var_nodearraylist6
= var3
;
3284 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3285 var_nodearraylist5
= var4
;
3286 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3287 var_nodearraylist4
= var5
;
3288 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3289 var_nodearraylist3
= var6
;
3290 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3291 var_nodearraylist2
= var7
;
3292 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3293 var_nodearraylist1
= var8
;
3294 var_pexprnode2
= var_nodearraylist1
;
3295 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
3296 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3297 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3298 if(var_pexprnode2
== NULL
) {
3301 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3304 var9
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3308 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3309 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25714);
3312 var_tidnode3
= var_nodearraylist5
;
3313 /* <var_tidnode3:nullable Object> isa nullable TId */
3314 cltype11
= type_nullable_parser_nodes__TId
.color
;
3315 idtype12
= type_nullable_parser_nodes__TId
.id
;
3316 if(var_tidnode3
== NULL
) {
3319 if(cltype11
>= var_tidnode3
->type
->table_size
) {
3322 var10
= var_tidnode3
->type
->type_table
[cltype11
] == idtype12
;
3326 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3327 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25716);
3330 var_pexprsnode4
= var_nodearraylist6
;
3331 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
3332 cltype14
= type_nullable_parser_nodes__AExprs
.color
;
3333 idtype15
= type_nullable_parser_nodes__AExprs
.id
;
3334 if(var_pexprsnode4
== NULL
) {
3337 if(cltype14
>= var_pexprsnode4
->type
->table_size
) {
3340 var13
= var_pexprsnode4
->type
->type_table
[cltype14
] == idtype15
;
3344 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3345 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25718);
3348 var_passignopnode5
= var_nodearraylist7
;
3349 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
3350 cltype17
= type_nullable_parser_nodes__AAssignOp
.color
;
3351 idtype18
= type_nullable_parser_nodes__AAssignOp
.id
;
3352 if(var_passignopnode5
== NULL
) {
3355 if(cltype17
>= var_passignopnode5
->type
->table_size
) {
3358 var16
= var_passignopnode5
->type
->type_table
[cltype17
] == idtype18
;
3362 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3363 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25720);
3366 var_pexprnode6
= var_nodearraylist8
;
3367 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
3368 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
3369 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
3370 if(var_pexprnode6
== NULL
) {
3373 if(cltype20
>= var_pexprnode6
->type
->table_size
) {
3376 var19
= var_pexprnode6
->type
->type_table
[cltype20
] == idtype21
;
3380 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3381 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25722);
3384 var22
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
3385 ((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>*/;
3386 var_pexprnode1
= var22
;
3387 var_node_list
= var_pexprnode1
;
3388 var23
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction681> */
3389 var24
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var23
) /* go_to on <var_p:Parser>*/;
3390 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var24
, var_node_list
) /* push on <var_p:Parser>*/;
3393 /* method parser#ReduceAction681#action for (self: Object, Parser) */
3394 void VIRTUAL_parser__ReduceAction681__action(val
* self
, val
* p0
) {
3395 parser__ReduceAction681__action(self
, p0
);
3398 /* method parser#ReduceAction682#action for (self: ReduceAction682, Parser) */
3399 void parser__ReduceAction682__action(val
* self
, val
* p0
) {
3400 val
* var_p
/* var p: Parser */;
3401 val
* var
/* : null */;
3402 val
* var_node_list
/* var node_list: nullable Object */;
3403 val
* var1
/* : nullable Object */;
3404 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
3405 val
* var2
/* : nullable Object */;
3406 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3407 val
* var3
/* : nullable Object */;
3408 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3409 val
* var4
/* : nullable Object */;
3410 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3411 val
* var5
/* : nullable Object */;
3412 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3413 val
* var6
/* : nullable Object */;
3414 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3415 val
* var7
/* : nullable Object */;
3416 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3417 val
* var8
/* : nullable Object */;
3418 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3419 val
* var9
/* : nullable Object */;
3420 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3421 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
3422 short int var10
/* : Bool */;
3425 val
* var_tidnode3
/* var tidnode3: nullable Object */;
3426 short int var11
/* : Bool */;
3429 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
3430 short int var14
/* : Bool */;
3433 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
3434 short int var17
/* : Bool */;
3437 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
3438 short int var20
/* : Bool */;
3441 val
* var23
/* : ACallReassignExpr */;
3442 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
3443 long var24
/* : Int */;
3444 long var25
/* : Int */;
3447 var_node_list
= var
;
3448 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3449 var_nodearraylist9
= var1
;
3450 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3451 var_nodearraylist8
= var2
;
3452 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3453 var_nodearraylist7
= var3
;
3454 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3455 var_nodearraylist6
= var4
;
3456 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3457 var_nodearraylist5
= var5
;
3458 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3459 var_nodearraylist4
= var6
;
3460 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3461 var_nodearraylist3
= var7
;
3462 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3463 var_nodearraylist2
= var8
;
3464 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3465 var_nodearraylist1
= var9
;
3466 var_pexprnode2
= var_nodearraylist1
;
3467 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
3468 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3469 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3470 if(var_pexprnode2
== NULL
) {
3473 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3476 var10
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3480 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3481 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25749);
3484 var_tidnode3
= var_nodearraylist6
;
3485 /* <var_tidnode3:nullable Object> isa nullable TId */
3486 cltype12
= type_nullable_parser_nodes__TId
.color
;
3487 idtype13
= type_nullable_parser_nodes__TId
.id
;
3488 if(var_tidnode3
== NULL
) {
3491 if(cltype12
>= var_tidnode3
->type
->table_size
) {
3494 var11
= var_tidnode3
->type
->type_table
[cltype12
] == idtype13
;
3498 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3499 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25751);
3502 var_pexprsnode4
= var_nodearraylist7
;
3503 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
3504 cltype15
= type_nullable_parser_nodes__AExprs
.color
;
3505 idtype16
= type_nullable_parser_nodes__AExprs
.id
;
3506 if(var_pexprsnode4
== NULL
) {
3509 if(cltype15
>= var_pexprsnode4
->type
->table_size
) {
3512 var14
= var_pexprsnode4
->type
->type_table
[cltype15
] == idtype16
;
3516 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3517 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25753);
3520 var_passignopnode5
= var_nodearraylist8
;
3521 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
3522 cltype18
= type_nullable_parser_nodes__AAssignOp
.color
;
3523 idtype19
= type_nullable_parser_nodes__AAssignOp
.id
;
3524 if(var_passignopnode5
== NULL
) {
3527 if(cltype18
>= var_passignopnode5
->type
->table_size
) {
3530 var17
= var_passignopnode5
->type
->type_table
[cltype18
] == idtype19
;
3534 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3535 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25755);
3538 var_pexprnode6
= var_nodearraylist9
;
3539 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
3540 cltype21
= type_nullable_parser_nodes__AExpr
.color
;
3541 idtype22
= type_nullable_parser_nodes__AExpr
.id
;
3542 if(var_pexprnode6
== NULL
) {
3545 if(cltype21
>= var_pexprnode6
->type
->table_size
) {
3548 var20
= var_pexprnode6
->type
->type_table
[cltype21
] == idtype22
;
3552 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3553 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25757);
3556 var23
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
3557 ((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>*/;
3558 var_pexprnode1
= var23
;
3559 var_node_list
= var_pexprnode1
;
3560 var24
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction682> */
3561 var25
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var24
) /* go_to on <var_p:Parser>*/;
3562 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var25
, var_node_list
) /* push on <var_p:Parser>*/;
3565 /* method parser#ReduceAction682#action for (self: Object, Parser) */
3566 void VIRTUAL_parser__ReduceAction682__action(val
* self
, val
* p0
) {
3567 parser__ReduceAction682__action(self
, p0
);
3570 /* method parser#ReduceAction684#action for (self: ReduceAction684, Parser) */
3571 void parser__ReduceAction684__action(val
* self
, val
* p0
) {
3572 val
* var_p
/* var p: Parser */;
3573 val
* var
/* : null */;
3574 val
* var_node_list
/* var node_list: nullable Object */;
3575 val
* var1
/* : nullable Object */;
3576 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3577 val
* var2
/* : nullable Object */;
3578 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3579 val
* var3
/* : nullable Object */;
3580 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3581 val
* var4
/* : nullable Object */;
3582 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3583 val
* var5
/* : nullable Object */;
3584 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3585 val
* var6
/* : AImplicitSelfExpr */;
3586 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
3587 val
* var_tidnode3
/* var tidnode3: nullable Object */;
3588 short int var7
/* : Bool */;
3591 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
3592 short int var8
/* : Bool */;
3595 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
3596 short int var11
/* : Bool */;
3599 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
3600 short int var14
/* : Bool */;
3603 val
* var17
/* : ACallReassignExpr */;
3604 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
3605 long var18
/* : Int */;
3606 long var19
/* : Int */;
3609 var_node_list
= var
;
3610 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3611 var_nodearraylist5
= var1
;
3612 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3613 var_nodearraylist4
= var2
;
3614 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3615 var_nodearraylist3
= var3
;
3616 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3617 var_nodearraylist2
= var4
;
3618 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3619 var_nodearraylist1
= var5
;
3620 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
3621 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
3622 var_pexprnode2
= var6
;
3623 var_tidnode3
= var_nodearraylist2
;
3624 /* <var_tidnode3:nullable Object> isa nullable TId */
3625 cltype
= type_nullable_parser_nodes__TId
.color
;
3626 idtype
= type_nullable_parser_nodes__TId
.id
;
3627 if(var_tidnode3
== NULL
) {
3630 if(cltype
>= var_tidnode3
->type
->table_size
) {
3633 var7
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
3637 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3638 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25781);
3641 var_pexprsnode4
= var_nodearraylist3
;
3642 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
3643 cltype9
= type_nullable_parser_nodes__AExprs
.color
;
3644 idtype10
= type_nullable_parser_nodes__AExprs
.id
;
3645 if(var_pexprsnode4
== NULL
) {
3648 if(cltype9
>= var_pexprsnode4
->type
->table_size
) {
3651 var8
= var_pexprsnode4
->type
->type_table
[cltype9
] == idtype10
;
3655 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3656 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25783);
3659 var_passignopnode5
= var_nodearraylist4
;
3660 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
3661 cltype12
= type_nullable_parser_nodes__AAssignOp
.color
;
3662 idtype13
= type_nullable_parser_nodes__AAssignOp
.id
;
3663 if(var_passignopnode5
== NULL
) {
3666 if(cltype12
>= var_passignopnode5
->type
->table_size
) {
3669 var11
= var_passignopnode5
->type
->type_table
[cltype12
] == idtype13
;
3673 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3674 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25785);
3677 var_pexprnode6
= var_nodearraylist5
;
3678 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
3679 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
3680 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
3681 if(var_pexprnode6
== NULL
) {
3684 if(cltype15
>= var_pexprnode6
->type
->table_size
) {
3687 var14
= var_pexprnode6
->type
->type_table
[cltype15
] == idtype16
;
3691 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3692 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25787);
3695 var17
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
3696 ((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>*/;
3697 var_pexprnode1
= var17
;
3698 var_node_list
= var_pexprnode1
;
3699 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction684> */
3700 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
3701 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
3704 /* method parser#ReduceAction684#action for (self: Object, Parser) */
3705 void VIRTUAL_parser__ReduceAction684__action(val
* self
, val
* p0
) {
3706 parser__ReduceAction684__action(self
, p0
);
3709 /* method parser#ReduceAction685#action for (self: ReduceAction685, Parser) */
3710 void parser__ReduceAction685__action(val
* self
, val
* p0
) {
3711 val
* var_p
/* var p: Parser */;
3712 val
* var
/* : null */;
3713 val
* var_node_list
/* var node_list: nullable Object */;
3714 val
* var1
/* : nullable Object */;
3715 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3716 val
* var2
/* : nullable Object */;
3717 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3718 val
* var3
/* : nullable Object */;
3719 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3720 val
* var4
/* : nullable Object */;
3721 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3722 val
* var5
/* : nullable Object */;
3723 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3724 val
* var6
/* : nullable Object */;
3725 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3726 val
* var7
/* : AImplicitSelfExpr */;
3727 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
3728 val
* var_tidnode3
/* var tidnode3: nullable Object */;
3729 short int var8
/* : Bool */;
3732 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
3733 short int var9
/* : Bool */;
3736 val
* var_passignopnode5
/* var passignopnode5: nullable Object */;
3737 short int var12
/* : Bool */;
3740 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
3741 short int var15
/* : Bool */;
3744 val
* var18
/* : ACallReassignExpr */;
3745 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
3746 long var19
/* : Int */;
3747 long var20
/* : Int */;
3750 var_node_list
= var
;
3751 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3752 var_nodearraylist6
= var1
;
3753 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3754 var_nodearraylist5
= var2
;
3755 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3756 var_nodearraylist4
= var3
;
3757 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3758 var_nodearraylist3
= var4
;
3759 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3760 var_nodearraylist2
= var5
;
3761 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3762 var_nodearraylist1
= var6
;
3763 var7
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
3764 ((void (*)(val
*))(var7
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var7
) /* init_aimplicitselfexpr on <var7:AImplicitSelfExpr>*/;
3765 var_pexprnode2
= var7
;
3766 var_tidnode3
= var_nodearraylist3
;
3767 /* <var_tidnode3:nullable Object> isa nullable TId */
3768 cltype
= type_nullable_parser_nodes__TId
.color
;
3769 idtype
= type_nullable_parser_nodes__TId
.id
;
3770 if(var_tidnode3
== NULL
) {
3773 if(cltype
>= var_tidnode3
->type
->table_size
) {
3776 var8
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
3780 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3781 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25812);
3784 var_pexprsnode4
= var_nodearraylist4
;
3785 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
3786 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
3787 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
3788 if(var_pexprsnode4
== NULL
) {
3791 if(cltype10
>= var_pexprsnode4
->type
->table_size
) {
3794 var9
= var_pexprsnode4
->type
->type_table
[cltype10
] == idtype11
;
3798 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3799 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25814);
3802 var_passignopnode5
= var_nodearraylist5
;
3803 /* <var_passignopnode5:nullable Object> isa nullable AAssignOp */
3804 cltype13
= type_nullable_parser_nodes__AAssignOp
.color
;
3805 idtype14
= type_nullable_parser_nodes__AAssignOp
.id
;
3806 if(var_passignopnode5
== NULL
) {
3809 if(cltype13
>= var_passignopnode5
->type
->table_size
) {
3812 var12
= var_passignopnode5
->type
->type_table
[cltype13
] == idtype14
;
3816 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3817 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25816);
3820 var_pexprnode6
= var_nodearraylist6
;
3821 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
3822 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
3823 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
3824 if(var_pexprnode6
== NULL
) {
3827 if(cltype16
>= var_pexprnode6
->type
->table_size
) {
3830 var15
= var_pexprnode6
->type
->type_table
[cltype16
] == idtype17
;
3834 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3835 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25818);
3838 var18
= NEW_parser_nodes__ACallReassignExpr(&type_parser_nodes__ACallReassignExpr
);
3839 ((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>*/;
3840 var_pexprnode1
= var18
;
3841 var_node_list
= var_pexprnode1
;
3842 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction685> */
3843 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
3844 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
3847 /* method parser#ReduceAction685#action for (self: Object, Parser) */
3848 void VIRTUAL_parser__ReduceAction685__action(val
* self
, val
* p0
) {
3849 parser__ReduceAction685__action(self
, p0
);
3852 /* method parser#ReduceAction687#action for (self: ReduceAction687, Parser) */
3853 void parser__ReduceAction687__action(val
* self
, val
* p0
) {
3854 val
* var_p
/* var p: Parser */;
3855 val
* var
/* : null */;
3856 val
* var_node_list
/* var node_list: nullable Object */;
3857 val
* var1
/* : nullable Object */;
3858 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3859 val
* var2
/* : nullable Object */;
3860 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3861 val
* var3
/* : nullable Object */;
3862 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3863 val
* var4
/* : nullable Object */;
3864 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3865 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
3866 short int var5
/* : Bool */;
3869 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
3870 short int var6
/* : Bool */;
3873 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
3874 short int var9
/* : Bool */;
3877 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
3878 short int var12
/* : Bool */;
3881 val
* var15
/* : ABraReassignExpr */;
3882 val
* var_pexprnode1
/* var pexprnode1: nullable ABraReassignExpr */;
3883 long var16
/* : Int */;
3884 long var17
/* : Int */;
3887 var_node_list
= var
;
3888 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3889 var_nodearraylist4
= var1
;
3890 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3891 var_nodearraylist3
= var2
;
3892 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3893 var_nodearraylist2
= var3
;
3894 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3895 var_nodearraylist1
= var4
;
3896 var_pexprnode2
= var_nodearraylist1
;
3897 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
3898 cltype
= type_nullable_parser_nodes__AExpr
.color
;
3899 idtype
= type_nullable_parser_nodes__AExpr
.id
;
3900 if(var_pexprnode2
== NULL
) {
3903 if(cltype
>= var_pexprnode2
->type
->table_size
) {
3906 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
3910 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3911 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25840);
3914 var_pexprsnode3
= var_nodearraylist2
;
3915 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
3916 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
3917 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
3918 if(var_pexprsnode3
== NULL
) {
3921 if(cltype7
>= var_pexprsnode3
->type
->table_size
) {
3924 var6
= var_pexprsnode3
->type
->type_table
[cltype7
] == idtype8
;
3928 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3929 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25842);
3932 var_passignopnode4
= var_nodearraylist3
;
3933 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
3934 cltype10
= type_nullable_parser_nodes__AAssignOp
.color
;
3935 idtype11
= type_nullable_parser_nodes__AAssignOp
.id
;
3936 if(var_passignopnode4
== NULL
) {
3939 if(cltype10
>= var_passignopnode4
->type
->table_size
) {
3942 var9
= var_passignopnode4
->type
->type_table
[cltype10
] == idtype11
;
3946 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3947 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25844);
3950 var_pexprnode5
= var_nodearraylist4
;
3951 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
3952 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
3953 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
3954 if(var_pexprnode5
== NULL
) {
3957 if(cltype13
>= var_pexprnode5
->type
->table_size
) {
3960 var12
= var_pexprnode5
->type
->type_table
[cltype13
] == idtype14
;
3964 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3965 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25846);
3968 var15
= NEW_parser_nodes__ABraReassignExpr(&type_parser_nodes__ABraReassignExpr
);
3969 ((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>*/;
3970 var_pexprnode1
= var15
;
3971 var_node_list
= var_pexprnode1
;
3972 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction687> */
3973 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
3974 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
3977 /* method parser#ReduceAction687#action for (self: Object, Parser) */
3978 void VIRTUAL_parser__ReduceAction687__action(val
* self
, val
* p0
) {
3979 parser__ReduceAction687__action(self
, p0
);
3982 /* method parser#ReduceAction688#action for (self: ReduceAction688, Parser) */
3983 void parser__ReduceAction688__action(val
* self
, val
* p0
) {
3984 val
* var_p
/* var p: Parser */;
3985 val
* var
/* : null */;
3986 val
* var_node_list
/* var node_list: nullable Object */;
3987 val
* var1
/* : nullable Object */;
3988 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3989 val
* var_tpluseqnode2
/* var tpluseqnode2: nullable Object */;
3990 short int var2
/* : Bool */;
3993 val
* var3
/* : APlusAssignOp */;
3994 val
* var_passignopnode1
/* var passignopnode1: nullable APlusAssignOp */;
3995 long var4
/* : Int */;
3996 long var5
/* : Int */;
3999 var_node_list
= var
;
4000 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4001 var_nodearraylist1
= var1
;
4002 var_tpluseqnode2
= var_nodearraylist1
;
4003 /* <var_tpluseqnode2:nullable Object> isa nullable TPluseq */
4004 cltype
= type_nullable_parser_nodes__TPluseq
.color
;
4005 idtype
= type_nullable_parser_nodes__TPluseq
.id
;
4006 if(var_tpluseqnode2
== NULL
) {
4009 if(cltype
>= var_tpluseqnode2
->type
->table_size
) {
4012 var2
= var_tpluseqnode2
->type
->type_table
[cltype
] == idtype
;
4016 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4017 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25864);
4020 var3
= NEW_parser_nodes__APlusAssignOp(&type_parser_nodes__APlusAssignOp
);
4021 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APlusAssignOp__init_aplusassignop
]))(var3
, var_tpluseqnode2
) /* init_aplusassignop on <var3:APlusAssignOp>*/;
4022 var_passignopnode1
= var3
;
4023 var_node_list
= var_passignopnode1
;
4024 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction688> */
4025 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
4026 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
4029 /* method parser#ReduceAction688#action for (self: Object, Parser) */
4030 void VIRTUAL_parser__ReduceAction688__action(val
* self
, val
* p0
) {
4031 parser__ReduceAction688__action(self
, p0
);
4034 /* method parser#ReduceAction689#action for (self: ReduceAction689, Parser) */
4035 void parser__ReduceAction689__action(val
* self
, val
* p0
) {
4036 val
* var_p
/* var p: Parser */;
4037 val
* var
/* : null */;
4038 val
* var_node_list
/* var node_list: nullable Object */;
4039 val
* var1
/* : nullable Object */;
4040 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4041 val
* var_tminuseqnode2
/* var tminuseqnode2: nullable Object */;
4042 short int var2
/* : Bool */;
4045 val
* var3
/* : AMinusAssignOp */;
4046 val
* var_passignopnode1
/* var passignopnode1: nullable AMinusAssignOp */;
4047 long var4
/* : Int */;
4048 long var5
/* : Int */;
4051 var_node_list
= var
;
4052 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4053 var_nodearraylist1
= var1
;
4054 var_tminuseqnode2
= var_nodearraylist1
;
4055 /* <var_tminuseqnode2:nullable Object> isa nullable TMinuseq */
4056 cltype
= type_nullable_parser_nodes__TMinuseq
.color
;
4057 idtype
= type_nullable_parser_nodes__TMinuseq
.id
;
4058 if(var_tminuseqnode2
== NULL
) {
4061 if(cltype
>= var_tminuseqnode2
->type
->table_size
) {
4064 var2
= var_tminuseqnode2
->type
->type_table
[cltype
] == idtype
;
4068 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4069 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25879);
4072 var3
= NEW_parser_nodes__AMinusAssignOp(&type_parser_nodes__AMinusAssignOp
);
4073 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AMinusAssignOp__init_aminusassignop
]))(var3
, var_tminuseqnode2
) /* init_aminusassignop on <var3:AMinusAssignOp>*/;
4074 var_passignopnode1
= var3
;
4075 var_node_list
= var_passignopnode1
;
4076 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction689> */
4077 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
4078 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
4081 /* method parser#ReduceAction689#action for (self: Object, Parser) */
4082 void VIRTUAL_parser__ReduceAction689__action(val
* self
, val
* p0
) {
4083 parser__ReduceAction689__action(self
, p0
);
4086 /* method parser#ReduceAction690#action for (self: ReduceAction690, Parser) */
4087 void parser__ReduceAction690__action(val
* self
, val
* p0
) {
4088 val
* var_p
/* var p: Parser */;
4089 val
* var
/* : null */;
4090 val
* var_node_list
/* var node_list: nullable Object */;
4091 val
* var1
/* : nullable Object */;
4092 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4093 val
* var2
/* : nullable Object */;
4094 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4095 val
* var3
/* : nullable Object */;
4096 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4097 val
* var_tkwdonode2
/* var tkwdonode2: nullable Object */;
4098 short int var4
/* : Bool */;
4101 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4102 short int var5
/* : Bool */;
4105 val
* var_plabelnode4
/* var plabelnode4: nullable Object */;
4106 short int var8
/* : Bool */;
4109 val
* var11
/* : ADoExpr */;
4110 val
* var_pexprnode1
/* var pexprnode1: nullable ADoExpr */;
4111 long var12
/* : Int */;
4112 long var13
/* : Int */;
4115 var_node_list
= var
;
4116 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4117 var_nodearraylist3
= var1
;
4118 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4119 var_nodearraylist2
= var2
;
4120 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4121 var_nodearraylist1
= var3
;
4122 var_tkwdonode2
= var_nodearraylist1
;
4123 /* <var_tkwdonode2:nullable Object> isa nullable TKwdo */
4124 cltype
= type_nullable_parser_nodes__TKwdo
.color
;
4125 idtype
= type_nullable_parser_nodes__TKwdo
.id
;
4126 if(var_tkwdonode2
== NULL
) {
4129 if(cltype
>= var_tkwdonode2
->type
->table_size
) {
4132 var4
= var_tkwdonode2
->type
->type_table
[cltype
] == idtype
;
4136 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4137 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25896);
4140 var_pexprnode3
= var_nodearraylist2
;
4141 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4142 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
4143 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
4144 if(var_pexprnode3
== NULL
) {
4147 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
4150 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
4154 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4155 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25898);
4158 var_plabelnode4
= var_nodearraylist3
;
4159 /* <var_plabelnode4:nullable Object> isa nullable ALabel */
4160 cltype9
= type_nullable_parser_nodes__ALabel
.color
;
4161 idtype10
= type_nullable_parser_nodes__ALabel
.id
;
4162 if(var_plabelnode4
== NULL
) {
4165 if(cltype9
>= var_plabelnode4
->type
->table_size
) {
4168 var8
= var_plabelnode4
->type
->type_table
[cltype9
] == idtype10
;
4172 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4173 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25900);
4176 var11
= NEW_parser_nodes__ADoExpr(&type_parser_nodes__ADoExpr
);
4177 ((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>*/;
4178 var_pexprnode1
= var11
;
4179 var_node_list
= var_pexprnode1
;
4180 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction690> */
4181 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
4182 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
4185 /* method parser#ReduceAction690#action for (self: Object, Parser) */
4186 void VIRTUAL_parser__ReduceAction690__action(val
* self
, val
* p0
) {
4187 parser__ReduceAction690__action(self
, p0
);
4190 /* method parser#ReduceAction691#action for (self: ReduceAction691, Parser) */
4191 void parser__ReduceAction691__action(val
* self
, val
* p0
) {
4192 val
* var_p
/* var p: Parser */;
4193 val
* var
/* : null */;
4194 val
* var_node_list
/* var node_list: nullable Object */;
4195 val
* var1
/* : nullable Object */;
4196 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4197 val
* var2
/* : nullable Object */;
4198 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4199 val
* var_tkwdonode2
/* var tkwdonode2: nullable Object */;
4200 short int var3
/* : Bool */;
4203 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4204 short int var4
/* : Bool */;
4207 val
* var7
/* : ADoExpr */;
4208 val
* var8
/* : null */;
4209 val
* var_pexprnode1
/* var pexprnode1: nullable ADoExpr */;
4210 long var9
/* : Int */;
4211 long var10
/* : Int */;
4214 var_node_list
= var
;
4215 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4216 var_nodearraylist2
= var1
;
4217 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4218 var_nodearraylist1
= var2
;
4219 var_tkwdonode2
= var_nodearraylist1
;
4220 /* <var_tkwdonode2:nullable Object> isa nullable TKwdo */
4221 cltype
= type_nullable_parser_nodes__TKwdo
.color
;
4222 idtype
= type_nullable_parser_nodes__TKwdo
.id
;
4223 if(var_tkwdonode2
== NULL
) {
4226 if(cltype
>= var_tkwdonode2
->type
->table_size
) {
4229 var3
= var_tkwdonode2
->type
->type_table
[cltype
] == idtype
;
4233 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4234 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25918);
4237 var_pexprnode3
= var_nodearraylist2
;
4238 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4239 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
4240 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
4241 if(var_pexprnode3
== NULL
) {
4244 if(cltype5
>= var_pexprnode3
->type
->table_size
) {
4247 var4
= var_pexprnode3
->type
->type_table
[cltype5
] == idtype6
;
4251 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4252 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25920);
4255 var7
= NEW_parser_nodes__ADoExpr(&type_parser_nodes__ADoExpr
);
4257 ((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>*/;
4258 var_pexprnode1
= var7
;
4259 var_node_list
= var_pexprnode1
;
4260 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction691> */
4261 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
4262 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
4265 /* method parser#ReduceAction691#action for (self: Object, Parser) */
4266 void VIRTUAL_parser__ReduceAction691__action(val
* self
, val
* p0
) {
4267 parser__ReduceAction691__action(self
, p0
);
4270 /* method parser#ReduceAction692#action for (self: ReduceAction692, Parser) */
4271 void parser__ReduceAction692__action(val
* self
, val
* p0
) {
4272 val
* var_p
/* var p: Parser */;
4273 val
* var
/* : null */;
4274 val
* var_node_list
/* var node_list: nullable Object */;
4275 val
* var1
/* : nullable Object */;
4276 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4277 val
* var2
/* : nullable Object */;
4278 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4279 val
* var3
/* : nullable Object */;
4280 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4281 val
* var4
/* : nullable Object */;
4282 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4283 val
* var5
/* : nullable Object */;
4284 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4285 val
* var6
/* : nullable Object */;
4286 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4287 val
* var7
/* : nullable Object */;
4288 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4289 val
* var8
/* : nullable Object */;
4290 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4291 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4292 short int var9
/* : Bool */;
4295 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4296 short int var10
/* : Bool */;
4299 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
4300 short int var13
/* : Bool */;
4303 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
4304 short int var16
/* : Bool */;
4307 val
* var19
/* : AIfExpr */;
4308 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4309 long var20
/* : Int */;
4310 long var21
/* : Int */;
4313 var_node_list
= var
;
4314 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4315 var_nodearraylist8
= var1
;
4316 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4317 var_nodearraylist7
= var2
;
4318 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4319 var_nodearraylist6
= var3
;
4320 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4321 var_nodearraylist5
= var4
;
4322 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4323 var_nodearraylist4
= var5
;
4324 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4325 var_nodearraylist3
= var6
;
4326 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4327 var_nodearraylist2
= var7
;
4328 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4329 var_nodearraylist1
= var8
;
4330 var_tkwifnode2
= var_nodearraylist1
;
4331 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4332 cltype
= type_nullable_parser_nodes__TKwif
.color
;
4333 idtype
= type_nullable_parser_nodes__TKwif
.id
;
4334 if(var_tkwifnode2
== NULL
) {
4337 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
4340 var9
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
4344 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4345 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25944);
4348 var_pexprnode3
= var_nodearraylist3
;
4349 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4350 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
4351 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
4352 if(var_pexprnode3
== NULL
) {
4355 if(cltype11
>= var_pexprnode3
->type
->table_size
) {
4358 var10
= var_pexprnode3
->type
->type_table
[cltype11
] == idtype12
;
4362 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4363 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25946);
4366 var_pexprnode4
= var_nodearraylist6
;
4367 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
4368 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
4369 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
4370 if(var_pexprnode4
== NULL
) {
4373 if(cltype14
>= var_pexprnode4
->type
->table_size
) {
4376 var13
= var_pexprnode4
->type
->type_table
[cltype14
] == idtype15
;
4380 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4381 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25948);
4384 var_pexprnode5
= var_nodearraylist8
;
4385 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
4386 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
4387 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
4388 if(var_pexprnode5
== NULL
) {
4391 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
4394 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
4398 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4399 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25950);
4402 var19
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
4403 ((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>*/;
4404 var_pexprnode1
= var19
;
4405 var_node_list
= var_pexprnode1
;
4406 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction692> */
4407 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
4408 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
4411 /* method parser#ReduceAction692#action for (self: Object, Parser) */
4412 void VIRTUAL_parser__ReduceAction692__action(val
* self
, val
* p0
) {
4413 parser__ReduceAction692__action(self
, p0
);
4416 /* method parser#ReduceAction693#action for (self: ReduceAction693, Parser) */
4417 void parser__ReduceAction693__action(val
* self
, val
* p0
) {
4418 val
* var_p
/* var p: Parser */;
4419 val
* var
/* : null */;
4420 val
* var_node_list
/* var node_list: nullable Object */;
4421 val
* var1
/* : nullable Object */;
4422 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4423 val
* var2
/* : nullable Object */;
4424 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4425 val
* var3
/* : nullable Object */;
4426 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4427 val
* var4
/* : nullable Object */;
4428 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4429 val
* var5
/* : nullable Object */;
4430 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4431 val
* var6
/* : nullable Object */;
4432 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4433 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4434 short int var7
/* : Bool */;
4437 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4438 short int var8
/* : Bool */;
4441 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
4442 short int var11
/* : Bool */;
4445 val
* var14
/* : AIfExpr */;
4446 val
* var15
/* : null */;
4447 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4448 long var16
/* : Int */;
4449 long var17
/* : Int */;
4452 var_node_list
= var
;
4453 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4454 var_nodearraylist6
= var1
;
4455 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4456 var_nodearraylist5
= var2
;
4457 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4458 var_nodearraylist4
= var3
;
4459 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4460 var_nodearraylist3
= var4
;
4461 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4462 var_nodearraylist2
= var5
;
4463 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4464 var_nodearraylist1
= var6
;
4465 var_tkwifnode2
= var_nodearraylist1
;
4466 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4467 cltype
= type_nullable_parser_nodes__TKwif
.color
;
4468 idtype
= type_nullable_parser_nodes__TKwif
.id
;
4469 if(var_tkwifnode2
== NULL
) {
4472 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
4475 var7
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
4479 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4480 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25973);
4483 var_pexprnode3
= var_nodearraylist3
;
4484 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4485 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
4486 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
4487 if(var_pexprnode3
== NULL
) {
4490 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
4493 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
4497 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4498 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25975);
4501 var_pexprnode4
= var_nodearraylist6
;
4502 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
4503 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
4504 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
4505 if(var_pexprnode4
== NULL
) {
4508 if(cltype12
>= var_pexprnode4
->type
->table_size
) {
4511 var11
= var_pexprnode4
->type
->type_table
[cltype12
] == idtype13
;
4515 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4516 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 25977);
4519 var14
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
4521 ((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>*/;
4522 var_pexprnode1
= var14
;
4523 var_node_list
= var_pexprnode1
;
4524 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction693> */
4525 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
4526 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
4529 /* method parser#ReduceAction693#action for (self: Object, Parser) */
4530 void VIRTUAL_parser__ReduceAction693__action(val
* self
, val
* p0
) {
4531 parser__ReduceAction693__action(self
, p0
);
4534 /* method parser#ReduceAction694#action for (self: ReduceAction694, Parser) */
4535 void parser__ReduceAction694__action(val
* self
, val
* p0
) {
4536 val
* var_p
/* var p: Parser */;
4537 val
* var
/* : null */;
4538 val
* var_node_list
/* var node_list: nullable Object */;
4539 val
* var1
/* : nullable Object */;
4540 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4541 val
* var2
/* : nullable Object */;
4542 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4543 val
* var3
/* : nullable Object */;
4544 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4545 val
* var4
/* : nullable Object */;
4546 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4547 val
* var5
/* : nullable Object */;
4548 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4549 val
* var6
/* : nullable Object */;
4550 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4551 val
* var7
/* : nullable Object */;
4552 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4553 val
* var8
/* : nullable Object */;
4554 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4555 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4556 short int var9
/* : Bool */;
4559 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4560 short int var10
/* : Bool */;
4563 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
4564 short int var13
/* : Bool */;
4567 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
4568 short int var16
/* : Bool */;
4571 val
* var19
/* : AIfExpr */;
4572 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4573 long var20
/* : Int */;
4574 long var21
/* : Int */;
4577 var_node_list
= var
;
4578 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4579 var_nodearraylist8
= var1
;
4580 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4581 var_nodearraylist7
= var2
;
4582 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4583 var_nodearraylist6
= var3
;
4584 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4585 var_nodearraylist5
= var4
;
4586 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4587 var_nodearraylist4
= var5
;
4588 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4589 var_nodearraylist3
= var6
;
4590 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4591 var_nodearraylist2
= var7
;
4592 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4593 var_nodearraylist1
= var8
;
4594 var_tkwifnode2
= var_nodearraylist1
;
4595 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4596 cltype
= type_nullable_parser_nodes__TKwif
.color
;
4597 idtype
= type_nullable_parser_nodes__TKwif
.id
;
4598 if(var_tkwifnode2
== NULL
) {
4601 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
4604 var9
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
4608 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4609 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26002);
4612 var_pexprnode3
= var_nodearraylist3
;
4613 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4614 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
4615 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
4616 if(var_pexprnode3
== NULL
) {
4619 if(cltype11
>= var_pexprnode3
->type
->table_size
) {
4622 var10
= var_pexprnode3
->type
->type_table
[cltype11
] == idtype12
;
4626 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4627 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26004);
4630 var_pexprnode4
= var_nodearraylist7
;
4631 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
4632 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
4633 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
4634 if(var_pexprnode4
== NULL
) {
4637 if(cltype14
>= var_pexprnode4
->type
->table_size
) {
4640 var13
= var_pexprnode4
->type
->type_table
[cltype14
] == idtype15
;
4644 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4645 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26006);
4648 var_pexprnode5
= var_nodearraylist8
;
4649 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
4650 cltype17
= type_nullable_parser_nodes__AExpr
.color
;
4651 idtype18
= type_nullable_parser_nodes__AExpr
.id
;
4652 if(var_pexprnode5
== NULL
) {
4655 if(cltype17
>= var_pexprnode5
->type
->table_size
) {
4658 var16
= var_pexprnode5
->type
->type_table
[cltype17
] == idtype18
;
4662 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4663 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26008);
4666 var19
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
4667 ((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>*/;
4668 var_pexprnode1
= var19
;
4669 var_node_list
= var_pexprnode1
;
4670 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction694> */
4671 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
4672 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
4675 /* method parser#ReduceAction694#action for (self: Object, Parser) */
4676 void VIRTUAL_parser__ReduceAction694__action(val
* self
, val
* p0
) {
4677 parser__ReduceAction694__action(self
, p0
);
4680 /* method parser#ReduceAction695#action for (self: ReduceAction695, Parser) */
4681 void parser__ReduceAction695__action(val
* self
, val
* p0
) {
4682 val
* var_p
/* var p: Parser */;
4683 val
* var
/* : null */;
4684 val
* var_node_list
/* var node_list: nullable Object */;
4685 val
* var1
/* : nullable Object */;
4686 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4687 val
* var2
/* : nullable Object */;
4688 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4689 val
* var3
/* : nullable Object */;
4690 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4691 val
* var4
/* : nullable Object */;
4692 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4693 val
* var5
/* : nullable Object */;
4694 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4695 val
* var6
/* : nullable Object */;
4696 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4697 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4698 short int var7
/* : Bool */;
4701 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4702 short int var8
/* : Bool */;
4705 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
4706 short int var11
/* : Bool */;
4709 val
* var14
/* : AIfExpr */;
4710 val
* var15
/* : null */;
4711 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4712 long var16
/* : Int */;
4713 long var17
/* : Int */;
4716 var_node_list
= var
;
4717 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4718 var_nodearraylist6
= var1
;
4719 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4720 var_nodearraylist5
= var2
;
4721 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4722 var_nodearraylist4
= var3
;
4723 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4724 var_nodearraylist3
= var4
;
4725 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4726 var_nodearraylist2
= var5
;
4727 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4728 var_nodearraylist1
= var6
;
4729 var_tkwifnode2
= var_nodearraylist1
;
4730 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4731 cltype
= type_nullable_parser_nodes__TKwif
.color
;
4732 idtype
= type_nullable_parser_nodes__TKwif
.id
;
4733 if(var_tkwifnode2
== NULL
) {
4736 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
4739 var7
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
4743 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4744 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26031);
4747 var_pexprnode3
= var_nodearraylist3
;
4748 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4749 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
4750 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
4751 if(var_pexprnode3
== NULL
) {
4754 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
4757 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
4761 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4762 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26033);
4765 var_pexprnode5
= var_nodearraylist6
;
4766 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
4767 cltype12
= type_nullable_parser_nodes__AExpr
.color
;
4768 idtype13
= type_nullable_parser_nodes__AExpr
.id
;
4769 if(var_pexprnode5
== NULL
) {
4772 if(cltype12
>= var_pexprnode5
->type
->table_size
) {
4775 var11
= var_pexprnode5
->type
->type_table
[cltype12
] == idtype13
;
4779 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4780 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26035);
4783 var14
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
4785 ((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>*/;
4786 var_pexprnode1
= var14
;
4787 var_node_list
= var_pexprnode1
;
4788 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction695> */
4789 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
4790 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
4793 /* method parser#ReduceAction695#action for (self: Object, Parser) */
4794 void VIRTUAL_parser__ReduceAction695__action(val
* self
, val
* p0
) {
4795 parser__ReduceAction695__action(self
, p0
);
4798 /* method parser#ReduceAction696#action for (self: ReduceAction696, Parser) */
4799 void parser__ReduceAction696__action(val
* self
, val
* p0
) {
4800 val
* var_p
/* var p: Parser */;
4801 val
* var
/* : null */;
4802 val
* var_node_list
/* var node_list: nullable Object */;
4803 val
* var1
/* : nullable Object */;
4804 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4805 val
* var2
/* : nullable Object */;
4806 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4807 val
* var3
/* : nullable Object */;
4808 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4809 val
* var4
/* : nullable Object */;
4810 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4811 val
* var5
/* : nullable Object */;
4812 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4813 val
* var6
/* : nullable Object */;
4814 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4815 val
* var7
/* : nullable Object */;
4816 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4817 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4818 short int var8
/* : Bool */;
4821 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4822 short int var9
/* : Bool */;
4825 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
4826 short int var12
/* : Bool */;
4829 val
* var15
/* : AIfExpr */;
4830 val
* var16
/* : null */;
4831 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4832 long var17
/* : Int */;
4833 long var18
/* : Int */;
4836 var_node_list
= var
;
4837 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4838 var_nodearraylist7
= var1
;
4839 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4840 var_nodearraylist6
= var2
;
4841 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4842 var_nodearraylist5
= var3
;
4843 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4844 var_nodearraylist4
= var4
;
4845 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4846 var_nodearraylist3
= var5
;
4847 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4848 var_nodearraylist2
= var6
;
4849 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4850 var_nodearraylist1
= var7
;
4851 var_tkwifnode2
= var_nodearraylist1
;
4852 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4853 cltype
= type_nullable_parser_nodes__TKwif
.color
;
4854 idtype
= type_nullable_parser_nodes__TKwif
.id
;
4855 if(var_tkwifnode2
== NULL
) {
4858 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
4861 var8
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
4865 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4866 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26059);
4869 var_pexprnode3
= var_nodearraylist3
;
4870 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4871 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
4872 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
4873 if(var_pexprnode3
== NULL
) {
4876 if(cltype10
>= var_pexprnode3
->type
->table_size
) {
4879 var9
= var_pexprnode3
->type
->type_table
[cltype10
] == idtype11
;
4883 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4884 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26061);
4887 var_pexprnode5
= var_nodearraylist7
;
4888 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
4889 cltype13
= type_nullable_parser_nodes__AExpr
.color
;
4890 idtype14
= type_nullable_parser_nodes__AExpr
.id
;
4891 if(var_pexprnode5
== NULL
) {
4894 if(cltype13
>= var_pexprnode5
->type
->table_size
) {
4897 var12
= var_pexprnode5
->type
->type_table
[cltype13
] == idtype14
;
4901 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4902 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26063);
4905 var15
= NEW_parser_nodes__AIfExpr(&type_parser_nodes__AIfExpr
);
4907 ((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>*/;
4908 var_pexprnode1
= var15
;
4909 var_node_list
= var_pexprnode1
;
4910 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction696> */
4911 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
4912 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
4915 /* method parser#ReduceAction696#action for (self: Object, Parser) */
4916 void VIRTUAL_parser__ReduceAction696__action(val
* self
, val
* p0
) {
4917 parser__ReduceAction696__action(self
, p0
);
4920 /* method parser#ReduceAction699#action for (self: ReduceAction699, Parser) */
4921 void parser__ReduceAction699__action(val
* self
, val
* p0
) {
4922 val
* var_p
/* var p: Parser */;
4923 val
* var
/* : null */;
4924 val
* var_node_list
/* var node_list: nullable Object */;
4925 val
* var1
/* : nullable Object */;
4926 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4927 val
* var2
/* : nullable Object */;
4928 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4929 val
* var3
/* : nullable Object */;
4930 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4931 val
* var_tkwloopnode2
/* var tkwloopnode2: nullable Object */;
4932 short int var4
/* : Bool */;
4935 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4936 short int var5
/* : Bool */;
4939 val
* var_plabelnode4
/* var plabelnode4: nullable Object */;
4940 short int var8
/* : Bool */;
4943 val
* var11
/* : ALoopExpr */;
4944 val
* var_pexprnode1
/* var pexprnode1: nullable ALoopExpr */;
4945 long var12
/* : Int */;
4946 long var13
/* : Int */;
4949 var_node_list
= var
;
4950 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4951 var_nodearraylist3
= var1
;
4952 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4953 var_nodearraylist2
= var2
;
4954 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4955 var_nodearraylist1
= var3
;
4956 var_tkwloopnode2
= var_nodearraylist1
;
4957 /* <var_tkwloopnode2:nullable Object> isa nullable TKwloop */
4958 cltype
= type_nullable_parser_nodes__TKwloop
.color
;
4959 idtype
= type_nullable_parser_nodes__TKwloop
.id
;
4960 if(var_tkwloopnode2
== NULL
) {
4963 if(cltype
>= var_tkwloopnode2
->type
->table_size
) {
4966 var4
= var_tkwloopnode2
->type
->type_table
[cltype
] == idtype
;
4970 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4971 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26083);
4974 var_pexprnode3
= var_nodearraylist2
;
4975 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4976 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
4977 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
4978 if(var_pexprnode3
== NULL
) {
4981 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
4984 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
4988 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4989 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26085);
4992 var_plabelnode4
= var_nodearraylist3
;
4993 /* <var_plabelnode4:nullable Object> isa nullable ALabel */
4994 cltype9
= type_nullable_parser_nodes__ALabel
.color
;
4995 idtype10
= type_nullable_parser_nodes__ALabel
.id
;
4996 if(var_plabelnode4
== NULL
) {
4999 if(cltype9
>= var_plabelnode4
->type
->table_size
) {
5002 var8
= var_plabelnode4
->type
->type_table
[cltype9
] == idtype10
;
5006 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5007 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26087);
5010 var11
= NEW_parser_nodes__ALoopExpr(&type_parser_nodes__ALoopExpr
);
5011 ((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>*/;
5012 var_pexprnode1
= var11
;
5013 var_node_list
= var_pexprnode1
;
5014 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction699> */
5015 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
5016 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
5019 /* method parser#ReduceAction699#action for (self: Object, Parser) */
5020 void VIRTUAL_parser__ReduceAction699__action(val
* self
, val
* p0
) {
5021 parser__ReduceAction699__action(self
, p0
);
5024 /* method parser#ReduceAction700#action for (self: ReduceAction700, Parser) */
5025 void parser__ReduceAction700__action(val
* self
, val
* p0
) {
5026 val
* var_p
/* var p: Parser */;
5027 val
* var
/* : null */;
5028 val
* var_node_list
/* var node_list: nullable Object */;
5029 val
* var1
/* : nullable Object */;
5030 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5031 val
* var2
/* : nullable Object */;
5032 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5033 val
* var_tkwloopnode2
/* var tkwloopnode2: nullable Object */;
5034 short int var3
/* : Bool */;
5037 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5038 short int var4
/* : Bool */;
5041 val
* var7
/* : ALoopExpr */;
5042 val
* var8
/* : null */;
5043 val
* var_pexprnode1
/* var pexprnode1: nullable ALoopExpr */;
5044 long var9
/* : Int */;
5045 long var10
/* : Int */;
5048 var_node_list
= var
;
5049 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5050 var_nodearraylist2
= var1
;
5051 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5052 var_nodearraylist1
= var2
;
5053 var_tkwloopnode2
= var_nodearraylist1
;
5054 /* <var_tkwloopnode2:nullable Object> isa nullable TKwloop */
5055 cltype
= type_nullable_parser_nodes__TKwloop
.color
;
5056 idtype
= type_nullable_parser_nodes__TKwloop
.id
;
5057 if(var_tkwloopnode2
== NULL
) {
5060 if(cltype
>= var_tkwloopnode2
->type
->table_size
) {
5063 var3
= var_tkwloopnode2
->type
->type_table
[cltype
] == idtype
;
5067 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5068 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26105);
5071 var_pexprnode3
= var_nodearraylist2
;
5072 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5073 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
5074 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
5075 if(var_pexprnode3
== NULL
) {
5078 if(cltype5
>= var_pexprnode3
->type
->table_size
) {
5081 var4
= var_pexprnode3
->type
->type_table
[cltype5
] == idtype6
;
5085 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5086 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26107);
5089 var7
= NEW_parser_nodes__ALoopExpr(&type_parser_nodes__ALoopExpr
);
5091 ((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>*/;
5092 var_pexprnode1
= var7
;
5093 var_node_list
= var_pexprnode1
;
5094 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction700> */
5095 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
5096 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
5099 /* method parser#ReduceAction700#action for (self: Object, Parser) */
5100 void VIRTUAL_parser__ReduceAction700__action(val
* self
, val
* p0
) {
5101 parser__ReduceAction700__action(self
, p0
);
5104 /* method parser#ReduceAction701#action for (self: ReduceAction701, Parser) */
5105 void parser__ReduceAction701__action(val
* self
, val
* p0
) {
5106 val
* var_p
/* var p: Parser */;
5107 val
* var
/* : null */;
5108 val
* var_node_list
/* var node_list: nullable Object */;
5109 val
* var1
/* : nullable Object */;
5110 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5111 val
* var2
/* : nullable Object */;
5112 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5113 val
* var3
/* : nullable Object */;
5114 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5115 val
* var4
/* : nullable Object */;
5116 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5117 val
* var5
/* : nullable Object */;
5118 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5119 val
* var6
/* : nullable Object */;
5120 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5121 val
* var7
/* : nullable Object */;
5122 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5123 val
* var_tkwwhilenode2
/* var tkwwhilenode2: nullable Object */;
5124 short int var8
/* : Bool */;
5127 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5128 short int var9
/* : Bool */;
5131 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
5132 short int var12
/* : Bool */;
5135 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5136 short int var15
/* : Bool */;
5139 val
* var_plabelnode6
/* var plabelnode6: nullable Object */;
5140 short int var18
/* : Bool */;
5143 val
* var21
/* : AWhileExpr */;
5144 val
* var_pexprnode1
/* var pexprnode1: nullable AWhileExpr */;
5145 long var22
/* : Int */;
5146 long var23
/* : Int */;
5149 var_node_list
= var
;
5150 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5151 var_nodearraylist7
= var1
;
5152 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5153 var_nodearraylist6
= var2
;
5154 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5155 var_nodearraylist5
= var3
;
5156 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5157 var_nodearraylist4
= var4
;
5158 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5159 var_nodearraylist3
= var5
;
5160 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5161 var_nodearraylist2
= var6
;
5162 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5163 var_nodearraylist1
= var7
;
5164 var_tkwwhilenode2
= var_nodearraylist1
;
5165 /* <var_tkwwhilenode2:nullable Object> isa nullable TKwwhile */
5166 cltype
= type_nullable_parser_nodes__TKwwhile
.color
;
5167 idtype
= type_nullable_parser_nodes__TKwwhile
.id
;
5168 if(var_tkwwhilenode2
== NULL
) {
5171 if(cltype
>= var_tkwwhilenode2
->type
->table_size
) {
5174 var8
= var_tkwwhilenode2
->type
->type_table
[cltype
] == idtype
;
5178 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5179 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26130);
5182 var_pexprnode3
= var_nodearraylist3
;
5183 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5184 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
5185 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
5186 if(var_pexprnode3
== NULL
) {
5189 if(cltype10
>= var_pexprnode3
->type
->table_size
) {
5192 var9
= var_pexprnode3
->type
->type_table
[cltype10
] == idtype11
;
5196 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5197 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26132);
5200 var_tkwdonode4
= var_nodearraylist5
;
5201 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
5202 cltype13
= type_nullable_parser_nodes__TKwdo
.color
;
5203 idtype14
= type_nullable_parser_nodes__TKwdo
.id
;
5204 if(var_tkwdonode4
== NULL
) {
5207 if(cltype13
>= var_tkwdonode4
->type
->table_size
) {
5210 var12
= var_tkwdonode4
->type
->type_table
[cltype13
] == idtype14
;
5214 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5215 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26134);
5218 var_pexprnode5
= var_nodearraylist6
;
5219 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5220 cltype16
= type_nullable_parser_nodes__AExpr
.color
;
5221 idtype17
= type_nullable_parser_nodes__AExpr
.id
;
5222 if(var_pexprnode5
== NULL
) {
5225 if(cltype16
>= var_pexprnode5
->type
->table_size
) {
5228 var15
= var_pexprnode5
->type
->type_table
[cltype16
] == idtype17
;
5232 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5233 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26136);
5236 var_plabelnode6
= var_nodearraylist7
;
5237 /* <var_plabelnode6:nullable Object> isa nullable ALabel */
5238 cltype19
= type_nullable_parser_nodes__ALabel
.color
;
5239 idtype20
= type_nullable_parser_nodes__ALabel
.id
;
5240 if(var_plabelnode6
== NULL
) {
5243 if(cltype19
>= var_plabelnode6
->type
->table_size
) {
5246 var18
= var_plabelnode6
->type
->type_table
[cltype19
] == idtype20
;
5250 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5251 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26138);
5254 var21
= NEW_parser_nodes__AWhileExpr(&type_parser_nodes__AWhileExpr
);
5255 ((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>*/;
5256 var_pexprnode1
= var21
;
5257 var_node_list
= var_pexprnode1
;
5258 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction701> */
5259 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
5260 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
5263 /* method parser#ReduceAction701#action for (self: Object, Parser) */
5264 void VIRTUAL_parser__ReduceAction701__action(val
* self
, val
* p0
) {
5265 parser__ReduceAction701__action(self
, p0
);
5268 /* method parser#ReduceAction702#action for (self: ReduceAction702, Parser) */
5269 void parser__ReduceAction702__action(val
* self
, val
* p0
) {
5270 val
* var_p
/* var p: Parser */;
5271 val
* var
/* : null */;
5272 val
* var_node_list
/* var node_list: nullable Object */;
5273 val
* var1
/* : nullable Object */;
5274 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5275 val
* var2
/* : nullable Object */;
5276 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5277 val
* var3
/* : nullable Object */;
5278 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5279 val
* var4
/* : nullable Object */;
5280 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5281 val
* var5
/* : nullable Object */;
5282 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5283 val
* var6
/* : nullable Object */;
5284 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5285 val
* var_tkwwhilenode2
/* var tkwwhilenode2: nullable Object */;
5286 short int var7
/* : Bool */;
5289 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5290 short int var8
/* : Bool */;
5293 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
5294 short int var11
/* : Bool */;
5297 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5298 short int var14
/* : Bool */;
5301 val
* var17
/* : AWhileExpr */;
5302 val
* var18
/* : null */;
5303 val
* var_pexprnode1
/* var pexprnode1: nullable AWhileExpr */;
5304 long var19
/* : Int */;
5305 long var20
/* : Int */;
5308 var_node_list
= var
;
5309 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5310 var_nodearraylist6
= var1
;
5311 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5312 var_nodearraylist5
= var2
;
5313 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5314 var_nodearraylist4
= var3
;
5315 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5316 var_nodearraylist3
= var4
;
5317 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5318 var_nodearraylist2
= var5
;
5319 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5320 var_nodearraylist1
= var6
;
5321 var_tkwwhilenode2
= var_nodearraylist1
;
5322 /* <var_tkwwhilenode2:nullable Object> isa nullable TKwwhile */
5323 cltype
= type_nullable_parser_nodes__TKwwhile
.color
;
5324 idtype
= type_nullable_parser_nodes__TKwwhile
.id
;
5325 if(var_tkwwhilenode2
== NULL
) {
5328 if(cltype
>= var_tkwwhilenode2
->type
->table_size
) {
5331 var7
= var_tkwwhilenode2
->type
->type_table
[cltype
] == idtype
;
5335 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5336 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26162);
5339 var_pexprnode3
= var_nodearraylist3
;
5340 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5341 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
5342 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
5343 if(var_pexprnode3
== NULL
) {
5346 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
5349 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
5353 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5354 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26164);
5357 var_tkwdonode4
= var_nodearraylist5
;
5358 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
5359 cltype12
= type_nullable_parser_nodes__TKwdo
.color
;
5360 idtype13
= type_nullable_parser_nodes__TKwdo
.id
;
5361 if(var_tkwdonode4
== NULL
) {
5364 if(cltype12
>= var_tkwdonode4
->type
->table_size
) {
5367 var11
= var_tkwdonode4
->type
->type_table
[cltype12
] == idtype13
;
5371 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5372 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26166);
5375 var_pexprnode5
= var_nodearraylist6
;
5376 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5377 cltype15
= type_nullable_parser_nodes__AExpr
.color
;
5378 idtype16
= type_nullable_parser_nodes__AExpr
.id
;
5379 if(var_pexprnode5
== NULL
) {
5382 if(cltype15
>= var_pexprnode5
->type
->table_size
) {
5385 var14
= var_pexprnode5
->type
->type_table
[cltype15
] == idtype16
;
5389 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5390 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26168);
5393 var17
= NEW_parser_nodes__AWhileExpr(&type_parser_nodes__AWhileExpr
);
5395 ((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>*/;
5396 var_pexprnode1
= var17
;
5397 var_node_list
= var_pexprnode1
;
5398 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction702> */
5399 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
5400 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
5403 /* method parser#ReduceAction702#action for (self: Object, Parser) */
5404 void VIRTUAL_parser__ReduceAction702__action(val
* self
, val
* p0
) {
5405 parser__ReduceAction702__action(self
, p0
);
5408 /* method parser#ReduceAction703#action for (self: ReduceAction703, Parser) */
5409 void parser__ReduceAction703__action(val
* self
, val
* p0
) {
5410 val
* var_p
/* var p: Parser */;
5411 val
* var
/* : null */;
5412 val
* var_node_list
/* var node_list: nullable Object */;
5413 val
* var1
/* : nullable Object */;
5414 val
* var_nodearraylist15
/* var nodearraylist15: nullable Object */;
5415 val
* var2
/* : nullable Object */;
5416 val
* var_nodearraylist14
/* var nodearraylist14: nullable Object */;
5417 val
* var3
/* : nullable Object */;
5418 val
* var_nodearraylist13
/* var nodearraylist13: nullable Object */;
5419 val
* var4
/* : nullable Object */;
5420 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
5421 val
* var5
/* : nullable Object */;
5422 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
5423 val
* var6
/* : nullable Object */;
5424 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5425 val
* var7
/* : nullable Object */;
5426 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5427 val
* var8
/* : nullable Object */;
5428 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5429 val
* var9
/* : nullable Object */;
5430 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5431 val
* var10
/* : nullable Object */;
5432 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5433 val
* var11
/* : nullable Object */;
5434 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5435 val
* var12
/* : nullable Object */;
5436 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5437 val
* var13
/* : nullable Object */;
5438 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5439 val
* var14
/* : nullable Object */;
5440 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5441 val
* var15
/* : nullable Object */;
5442 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5443 val
* var16
/* : Array[Object] */;
5444 val
* var_listnode4
/* var listnode4: Array[Object] */;
5445 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
5446 short int var17
/* : Bool */;
5449 val
* var_listnode3
/* var listnode3: nullable Object */;
5450 short int var18
/* : Bool */;
5453 val
* var21
/* : Array[Object] */;
5454 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5455 short int var22
/* : Bool */;
5458 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
5459 short int var25
/* : Bool */;
5462 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
5463 short int var28
/* : Bool */;
5466 val
* var_plabelnode8
/* var plabelnode8: nullable Object */;
5467 short int var31
/* : Bool */;
5470 val
* var34
/* : AForExpr */;
5471 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
5472 long var35
/* : Int */;
5473 long var36
/* : Int */;
5476 var_node_list
= var
;
5477 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5478 var_nodearraylist15
= var1
;
5479 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5480 var_nodearraylist14
= var2
;
5481 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5482 var_nodearraylist13
= var3
;
5483 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5484 var_nodearraylist12
= var4
;
5485 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5486 var_nodearraylist11
= var5
;
5487 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5488 var_nodearraylist10
= var6
;
5489 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5490 var_nodearraylist9
= var7
;
5491 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5492 var_nodearraylist8
= var8
;
5493 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5494 var_nodearraylist7
= var9
;
5495 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5496 var_nodearraylist6
= var10
;
5497 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5498 var_nodearraylist5
= var11
;
5499 var12
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5500 var_nodearraylist4
= var12
;
5501 var13
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5502 var_nodearraylist3
= var13
;
5503 var14
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5504 var_nodearraylist2
= var14
;
5505 var15
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5506 var_nodearraylist1
= var15
;
5507 var16
= NEW_array__Array(&type_array__Arraykernel__Object
);
5508 ((void (*)(val
*))(var16
->class->vft
[COLOR_array__Array__init
]))(var16
) /* init on <var16:Array[Object]>*/;
5509 var_listnode4
= var16
;
5510 var_tkwfornode2
= var_nodearraylist1
;
5511 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
5512 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
5513 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
5514 if(var_tkwfornode2
== NULL
) {
5517 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
5520 var17
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
5524 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5525 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26202);
5528 var_listnode3
= var_nodearraylist5
;
5529 /* <var_listnode3:nullable Object> isa Array[Object] */
5530 cltype19
= type_array__Arraykernel__Object
.color
;
5531 idtype20
= type_array__Arraykernel__Object
.id
;
5532 if(var_listnode3
== NULL
) {
5535 if(cltype19
>= var_listnode3
->type
->table_size
) {
5538 var18
= var_listnode3
->type
->type_table
[cltype19
] == idtype20
;
5542 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5543 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26204);
5546 var21
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction703>*/;
5547 var_listnode4
= var21
;
5548 var_pexprnode5
= var_nodearraylist11
;
5549 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5550 cltype23
= type_nullable_parser_nodes__AExpr
.color
;
5551 idtype24
= type_nullable_parser_nodes__AExpr
.id
;
5552 if(var_pexprnode5
== NULL
) {
5555 if(cltype23
>= var_pexprnode5
->type
->table_size
) {
5558 var22
= var_pexprnode5
->type
->type_table
[cltype23
] == idtype24
;
5562 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5563 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26207);
5566 var_tkwdonode6
= var_nodearraylist13
;
5567 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
5568 cltype26
= type_nullable_parser_nodes__TKwdo
.color
;
5569 idtype27
= type_nullable_parser_nodes__TKwdo
.id
;
5570 if(var_tkwdonode6
== NULL
) {
5573 if(cltype26
>= var_tkwdonode6
->type
->table_size
) {
5576 var25
= var_tkwdonode6
->type
->type_table
[cltype26
] == idtype27
;
5580 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5581 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26209);
5584 var_pexprnode7
= var_nodearraylist14
;
5585 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
5586 cltype29
= type_nullable_parser_nodes__AExpr
.color
;
5587 idtype30
= type_nullable_parser_nodes__AExpr
.id
;
5588 if(var_pexprnode7
== NULL
) {
5591 if(cltype29
>= var_pexprnode7
->type
->table_size
) {
5594 var28
= var_pexprnode7
->type
->type_table
[cltype29
] == idtype30
;
5598 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5599 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26211);
5602 var_plabelnode8
= var_nodearraylist15
;
5603 /* <var_plabelnode8:nullable Object> isa nullable ALabel */
5604 cltype32
= type_nullable_parser_nodes__ALabel
.color
;
5605 idtype33
= type_nullable_parser_nodes__ALabel
.id
;
5606 if(var_plabelnode8
== NULL
) {
5609 if(cltype32
>= var_plabelnode8
->type
->table_size
) {
5612 var31
= var_plabelnode8
->type
->type_table
[cltype32
] == idtype33
;
5616 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5617 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26213);
5620 var34
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
5621 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var34
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var34
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var_plabelnode8
) /* init_aforexpr on <var34:AForExpr>*/;
5622 var_pexprnode1
= var34
;
5623 var_node_list
= var_pexprnode1
;
5624 var35
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction703> */
5625 var36
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var35
) /* go_to on <var_p:Parser>*/;
5626 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var36
, var_node_list
) /* push on <var_p:Parser>*/;
5629 /* method parser#ReduceAction703#action for (self: Object, Parser) */
5630 void VIRTUAL_parser__ReduceAction703__action(val
* self
, val
* p0
) {
5631 parser__ReduceAction703__action(self
, p0
);
5634 /* method parser#ReduceAction704#action for (self: ReduceAction704, Parser) */
5635 void parser__ReduceAction704__action(val
* self
, val
* p0
) {
5636 val
* var_p
/* var p: Parser */;
5637 val
* var
/* : null */;
5638 val
* var_node_list
/* var node_list: nullable Object */;
5639 val
* var1
/* : nullable Object */;
5640 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
5641 val
* var2
/* : nullable Object */;
5642 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5643 val
* var3
/* : nullable Object */;
5644 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5645 val
* var4
/* : nullable Object */;
5646 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5647 val
* var5
/* : nullable Object */;
5648 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5649 val
* var6
/* : nullable Object */;
5650 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5651 val
* var7
/* : nullable Object */;
5652 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5653 val
* var8
/* : nullable Object */;
5654 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5655 val
* var9
/* : nullable Object */;
5656 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5657 val
* var10
/* : nullable Object */;
5658 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5659 val
* var11
/* : nullable Object */;
5660 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5661 val
* var12
/* : Array[Object] */;
5662 val
* var_listnode4
/* var listnode4: Array[Object] */;
5663 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
5664 short int var13
/* : Bool */;
5667 val
* var_listnode3
/* var listnode3: nullable Object */;
5668 short int var14
/* : Bool */;
5671 val
* var17
/* : Array[Object] */;
5672 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5673 short int var18
/* : Bool */;
5676 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
5677 short int var21
/* : Bool */;
5680 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
5681 short int var24
/* : Bool */;
5684 val
* var_plabelnode8
/* var plabelnode8: nullable Object */;
5685 short int var27
/* : Bool */;
5688 val
* var30
/* : AForExpr */;
5689 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
5690 long var31
/* : Int */;
5691 long var32
/* : Int */;
5694 var_node_list
= var
;
5695 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5696 var_nodearraylist11
= var1
;
5697 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5698 var_nodearraylist10
= var2
;
5699 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5700 var_nodearraylist9
= var3
;
5701 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5702 var_nodearraylist8
= var4
;
5703 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5704 var_nodearraylist7
= var5
;
5705 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5706 var_nodearraylist6
= var6
;
5707 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5708 var_nodearraylist5
= var7
;
5709 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5710 var_nodearraylist4
= var8
;
5711 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5712 var_nodearraylist3
= var9
;
5713 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5714 var_nodearraylist2
= var10
;
5715 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5716 var_nodearraylist1
= var11
;
5717 var12
= NEW_array__Array(&type_array__Arraykernel__Object
);
5718 ((void (*)(val
*))(var12
->class->vft
[COLOR_array__Array__init
]))(var12
) /* init on <var12:Array[Object]>*/;
5719 var_listnode4
= var12
;
5720 var_tkwfornode2
= var_nodearraylist1
;
5721 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
5722 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
5723 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
5724 if(var_tkwfornode2
== NULL
) {
5727 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
5730 var13
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
5734 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5735 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26244);
5738 var_listnode3
= var_nodearraylist3
;
5739 /* <var_listnode3:nullable Object> isa Array[Object] */
5740 cltype15
= type_array__Arraykernel__Object
.color
;
5741 idtype16
= type_array__Arraykernel__Object
.id
;
5742 if(var_listnode3
== NULL
) {
5745 if(cltype15
>= var_listnode3
->type
->table_size
) {
5748 var14
= var_listnode3
->type
->type_table
[cltype15
] == idtype16
;
5752 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5753 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26246);
5756 var17
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction704>*/;
5757 var_listnode4
= var17
;
5758 var_pexprnode5
= var_nodearraylist7
;
5759 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5760 cltype19
= type_nullable_parser_nodes__AExpr
.color
;
5761 idtype20
= type_nullable_parser_nodes__AExpr
.id
;
5762 if(var_pexprnode5
== NULL
) {
5765 if(cltype19
>= var_pexprnode5
->type
->table_size
) {
5768 var18
= var_pexprnode5
->type
->type_table
[cltype19
] == idtype20
;
5772 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5773 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26249);
5776 var_tkwdonode6
= var_nodearraylist9
;
5777 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
5778 cltype22
= type_nullable_parser_nodes__TKwdo
.color
;
5779 idtype23
= type_nullable_parser_nodes__TKwdo
.id
;
5780 if(var_tkwdonode6
== NULL
) {
5783 if(cltype22
>= var_tkwdonode6
->type
->table_size
) {
5786 var21
= var_tkwdonode6
->type
->type_table
[cltype22
] == idtype23
;
5790 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5791 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26251);
5794 var_pexprnode7
= var_nodearraylist10
;
5795 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
5796 cltype25
= type_nullable_parser_nodes__AExpr
.color
;
5797 idtype26
= type_nullable_parser_nodes__AExpr
.id
;
5798 if(var_pexprnode7
== NULL
) {
5801 if(cltype25
>= var_pexprnode7
->type
->table_size
) {
5804 var24
= var_pexprnode7
->type
->type_table
[cltype25
] == idtype26
;
5808 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5809 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26253);
5812 var_plabelnode8
= var_nodearraylist11
;
5813 /* <var_plabelnode8:nullable Object> isa nullable ALabel */
5814 cltype28
= type_nullable_parser_nodes__ALabel
.color
;
5815 idtype29
= type_nullable_parser_nodes__ALabel
.id
;
5816 if(var_plabelnode8
== NULL
) {
5819 if(cltype28
>= var_plabelnode8
->type
->table_size
) {
5822 var27
= var_plabelnode8
->type
->type_table
[cltype28
] == idtype29
;
5826 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5827 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26255);
5830 var30
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
5831 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var30
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var30
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var_plabelnode8
) /* init_aforexpr on <var30:AForExpr>*/;
5832 var_pexprnode1
= var30
;
5833 var_node_list
= var_pexprnode1
;
5834 var31
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction704> */
5835 var32
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var31
) /* go_to on <var_p:Parser>*/;
5836 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var32
, var_node_list
) /* push on <var_p:Parser>*/;
5839 /* method parser#ReduceAction704#action for (self: Object, Parser) */
5840 void VIRTUAL_parser__ReduceAction704__action(val
* self
, val
* p0
) {
5841 parser__ReduceAction704__action(self
, p0
);
5844 /* method parser#ReduceAction705#action for (self: ReduceAction705, Parser) */
5845 void parser__ReduceAction705__action(val
* self
, val
* p0
) {
5846 val
* var_p
/* var p: Parser */;
5847 val
* var
/* : null */;
5848 val
* var_node_list
/* var node_list: nullable Object */;
5849 val
* var1
/* : nullable Object */;
5850 val
* var_nodearraylist14
/* var nodearraylist14: nullable Object */;
5851 val
* var2
/* : nullable Object */;
5852 val
* var_nodearraylist13
/* var nodearraylist13: nullable Object */;
5853 val
* var3
/* : nullable Object */;
5854 val
* var_nodearraylist12
/* var nodearraylist12: nullable Object */;
5855 val
* var4
/* : nullable Object */;
5856 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
5857 val
* var5
/* : nullable Object */;
5858 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
5859 val
* var6
/* : nullable Object */;
5860 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
5861 val
* var7
/* : nullable Object */;
5862 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5863 val
* var8
/* : nullable Object */;
5864 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5865 val
* var9
/* : nullable Object */;
5866 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5867 val
* var10
/* : nullable Object */;
5868 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5869 val
* var11
/* : nullable Object */;
5870 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5871 val
* var12
/* : nullable Object */;
5872 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5873 val
* var13
/* : nullable Object */;
5874 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5875 val
* var14
/* : nullable Object */;
5876 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5877 val
* var15
/* : Array[Object] */;
5878 val
* var_listnode4
/* var listnode4: Array[Object] */;
5879 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
5880 short int var16
/* : Bool */;
5883 val
* var_listnode3
/* var listnode3: nullable Object */;
5884 short int var17
/* : Bool */;
5887 val
* var20
/* : Array[Object] */;
5888 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5889 short int var21
/* : Bool */;
5892 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
5893 short int var24
/* : Bool */;
5896 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
5897 short int var27
/* : Bool */;
5900 val
* var30
/* : AForExpr */;
5901 val
* var31
/* : null */;
5902 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
5903 long var32
/* : Int */;
5904 long var33
/* : Int */;
5907 var_node_list
= var
;
5908 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5909 var_nodearraylist14
= var1
;
5910 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5911 var_nodearraylist13
= var2
;
5912 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5913 var_nodearraylist12
= var3
;
5914 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5915 var_nodearraylist11
= var4
;
5916 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5917 var_nodearraylist10
= var5
;
5918 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5919 var_nodearraylist9
= var6
;
5920 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5921 var_nodearraylist8
= var7
;
5922 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5923 var_nodearraylist7
= var8
;
5924 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5925 var_nodearraylist6
= var9
;
5926 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5927 var_nodearraylist5
= var10
;
5928 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5929 var_nodearraylist4
= var11
;
5930 var12
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5931 var_nodearraylist3
= var12
;
5932 var13
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5933 var_nodearraylist2
= var13
;
5934 var14
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5935 var_nodearraylist1
= var14
;
5936 var15
= NEW_array__Array(&type_array__Arraykernel__Object
);
5937 ((void (*)(val
*))(var15
->class->vft
[COLOR_array__Array__init
]))(var15
) /* init on <var15:Array[Object]>*/;
5938 var_listnode4
= var15
;
5939 var_tkwfornode2
= var_nodearraylist1
;
5940 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
5941 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
5942 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
5943 if(var_tkwfornode2
== NULL
) {
5946 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
5949 var16
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
5953 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5954 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26289);
5957 var_listnode3
= var_nodearraylist5
;
5958 /* <var_listnode3:nullable Object> isa Array[Object] */
5959 cltype18
= type_array__Arraykernel__Object
.color
;
5960 idtype19
= type_array__Arraykernel__Object
.id
;
5961 if(var_listnode3
== NULL
) {
5964 if(cltype18
>= var_listnode3
->type
->table_size
) {
5967 var17
= var_listnode3
->type
->type_table
[cltype18
] == idtype19
;
5971 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5972 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26291);
5975 var20
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction705>*/;
5976 var_listnode4
= var20
;
5977 var_pexprnode5
= var_nodearraylist11
;
5978 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5979 cltype22
= type_nullable_parser_nodes__AExpr
.color
;
5980 idtype23
= type_nullable_parser_nodes__AExpr
.id
;
5981 if(var_pexprnode5
== NULL
) {
5984 if(cltype22
>= var_pexprnode5
->type
->table_size
) {
5987 var21
= var_pexprnode5
->type
->type_table
[cltype22
] == idtype23
;
5991 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5992 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26294);
5995 var_tkwdonode6
= var_nodearraylist13
;
5996 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
5997 cltype25
= type_nullable_parser_nodes__TKwdo
.color
;
5998 idtype26
= type_nullable_parser_nodes__TKwdo
.id
;
5999 if(var_tkwdonode6
== NULL
) {
6002 if(cltype25
>= var_tkwdonode6
->type
->table_size
) {
6005 var24
= var_tkwdonode6
->type
->type_table
[cltype25
] == idtype26
;
6009 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6010 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26296);
6013 var_pexprnode7
= var_nodearraylist14
;
6014 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
6015 cltype28
= type_nullable_parser_nodes__AExpr
.color
;
6016 idtype29
= type_nullable_parser_nodes__AExpr
.id
;
6017 if(var_pexprnode7
== NULL
) {
6020 if(cltype28
>= var_pexprnode7
->type
->table_size
) {
6023 var27
= var_pexprnode7
->type
->type_table
[cltype28
] == idtype29
;
6027 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6028 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26298);
6031 var30
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
6033 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var30
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var30
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var31
) /* init_aforexpr on <var30:AForExpr>*/;
6034 var_pexprnode1
= var30
;
6035 var_node_list
= var_pexprnode1
;
6036 var32
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction705> */
6037 var33
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var32
) /* go_to on <var_p:Parser>*/;
6038 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var33
, var_node_list
) /* push on <var_p:Parser>*/;
6041 /* method parser#ReduceAction705#action for (self: Object, Parser) */
6042 void VIRTUAL_parser__ReduceAction705__action(val
* self
, val
* p0
) {
6043 parser__ReduceAction705__action(self
, p0
);
6046 /* method parser#ReduceAction706#action for (self: ReduceAction706, Parser) */
6047 void parser__ReduceAction706__action(val
* self
, val
* p0
) {
6048 val
* var_p
/* var p: Parser */;
6049 val
* var
/* : null */;
6050 val
* var_node_list
/* var node_list: nullable Object */;
6051 val
* var1
/* : nullable Object */;
6052 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
6053 val
* var2
/* : nullable Object */;
6054 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
6055 val
* var3
/* : nullable Object */;
6056 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6057 val
* var4
/* : nullable Object */;
6058 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6059 val
* var5
/* : nullable Object */;
6060 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6061 val
* var6
/* : nullable Object */;
6062 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6063 val
* var7
/* : nullable Object */;
6064 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6065 val
* var8
/* : nullable Object */;
6066 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6067 val
* var9
/* : nullable Object */;
6068 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6069 val
* var10
/* : nullable Object */;
6070 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6071 val
* var11
/* : Array[Object] */;
6072 val
* var_listnode4
/* var listnode4: Array[Object] */;
6073 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
6074 short int var12
/* : Bool */;
6077 val
* var_listnode3
/* var listnode3: nullable Object */;
6078 short int var13
/* : Bool */;
6081 val
* var16
/* : Array[Object] */;
6082 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6083 short int var17
/* : Bool */;
6086 val
* var_tkwdonode6
/* var tkwdonode6: nullable Object */;
6087 short int var20
/* : Bool */;
6090 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
6091 short int var23
/* : Bool */;
6094 val
* var26
/* : AForExpr */;
6095 val
* var27
/* : null */;
6096 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
6097 long var28
/* : Int */;
6098 long var29
/* : Int */;
6101 var_node_list
= var
;
6102 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6103 var_nodearraylist10
= var1
;
6104 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6105 var_nodearraylist9
= var2
;
6106 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6107 var_nodearraylist8
= var3
;
6108 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6109 var_nodearraylist7
= var4
;
6110 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6111 var_nodearraylist6
= var5
;
6112 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6113 var_nodearraylist5
= var6
;
6114 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6115 var_nodearraylist4
= var7
;
6116 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6117 var_nodearraylist3
= var8
;
6118 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6119 var_nodearraylist2
= var9
;
6120 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6121 var_nodearraylist1
= var10
;
6122 var11
= NEW_array__Array(&type_array__Arraykernel__Object
);
6123 ((void (*)(val
*))(var11
->class->vft
[COLOR_array__Array__init
]))(var11
) /* init on <var11:Array[Object]>*/;
6124 var_listnode4
= var11
;
6125 var_tkwfornode2
= var_nodearraylist1
;
6126 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
6127 cltype
= type_nullable_parser_nodes__TKwfor
.color
;
6128 idtype
= type_nullable_parser_nodes__TKwfor
.id
;
6129 if(var_tkwfornode2
== NULL
) {
6132 if(cltype
>= var_tkwfornode2
->type
->table_size
) {
6135 var12
= var_tkwfornode2
->type
->type_table
[cltype
] == idtype
;
6139 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6140 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26328);
6143 var_listnode3
= var_nodearraylist3
;
6144 /* <var_listnode3:nullable Object> isa Array[Object] */
6145 cltype14
= type_array__Arraykernel__Object
.color
;
6146 idtype15
= type_array__Arraykernel__Object
.id
;
6147 if(var_listnode3
== NULL
) {
6150 if(cltype14
>= var_listnode3
->type
->table_size
) {
6153 var13
= var_listnode3
->type
->type_table
[cltype14
] == idtype15
;
6157 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6158 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26330);
6161 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction706>*/;
6162 var_listnode4
= var16
;
6163 var_pexprnode5
= var_nodearraylist7
;
6164 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6165 cltype18
= type_nullable_parser_nodes__AExpr
.color
;
6166 idtype19
= type_nullable_parser_nodes__AExpr
.id
;
6167 if(var_pexprnode5
== NULL
) {
6170 if(cltype18
>= var_pexprnode5
->type
->table_size
) {
6173 var17
= var_pexprnode5
->type
->type_table
[cltype18
] == idtype19
;
6177 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6178 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26333);
6181 var_tkwdonode6
= var_nodearraylist9
;
6182 /* <var_tkwdonode6:nullable Object> isa nullable TKwdo */
6183 cltype21
= type_nullable_parser_nodes__TKwdo
.color
;
6184 idtype22
= type_nullable_parser_nodes__TKwdo
.id
;
6185 if(var_tkwdonode6
== NULL
) {
6188 if(cltype21
>= var_tkwdonode6
->type
->table_size
) {
6191 var20
= var_tkwdonode6
->type
->type_table
[cltype21
] == idtype22
;
6195 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6196 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26335);
6199 var_pexprnode7
= var_nodearraylist10
;
6200 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
6201 cltype24
= type_nullable_parser_nodes__AExpr
.color
;
6202 idtype25
= type_nullable_parser_nodes__AExpr
.id
;
6203 if(var_pexprnode7
== NULL
) {
6206 if(cltype24
>= var_pexprnode7
->type
->table_size
) {
6209 var23
= var_pexprnode7
->type
->type_table
[cltype24
] == idtype25
;
6213 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6214 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26337);
6217 var26
= NEW_parser_nodes__AForExpr(&type_parser_nodes__AForExpr
);
6219 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var26
->class->vft
[COLOR_parser_prod__AForExpr__init_aforexpr
]))(var26
, var_tkwfornode2
, var_listnode4
, var_pexprnode5
, var_tkwdonode6
, var_pexprnode7
, var27
) /* init_aforexpr on <var26:AForExpr>*/;
6220 var_pexprnode1
= var26
;
6221 var_node_list
= var_pexprnode1
;
6222 var28
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction706> */
6223 var29
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var28
) /* go_to on <var_p:Parser>*/;
6224 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var29
, var_node_list
) /* push on <var_p:Parser>*/;
6227 /* method parser#ReduceAction706#action for (self: Object, Parser) */
6228 void VIRTUAL_parser__ReduceAction706__action(val
* self
, val
* p0
) {
6229 parser__ReduceAction706__action(self
, p0
);
6232 /* method parser#ReduceAction707#action for (self: ReduceAction707, Parser) */
6233 void parser__ReduceAction707__action(val
* self
, val
* p0
) {
6234 val
* var_p
/* var p: Parser */;
6235 val
* var
/* : null */;
6236 val
* var_node_list
/* var node_list: nullable Object */;
6237 val
* var1
/* : nullable Object */;
6238 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6239 val
* var2
/* : nullable Object */;
6240 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6241 val
* var3
/* : nullable Object */;
6242 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6243 val
* var4
/* : nullable Object */;
6244 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6245 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
6246 short int var5
/* : Bool */;
6249 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
6250 short int var6
/* : Bool */;
6253 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6254 short int var9
/* : Bool */;
6257 val
* var12
/* : AAssertExpr */;
6258 val
* var13
/* : null */;
6259 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
6260 long var14
/* : Int */;
6261 long var15
/* : Int */;
6264 var_node_list
= var
;
6265 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6266 var_nodearraylist4
= var1
;
6267 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6268 var_nodearraylist3
= var2
;
6269 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6270 var_nodearraylist2
= var3
;
6271 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6272 var_nodearraylist1
= var4
;
6273 var_tkwassertnode2
= var_nodearraylist1
;
6274 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
6275 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
6276 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
6277 if(var_tkwassertnode2
== NULL
) {
6280 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
6283 var5
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
6287 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6288 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26360);
6291 var_pexprnode4
= var_nodearraylist2
;
6292 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
6293 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
6294 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
6295 if(var_pexprnode4
== NULL
) {
6298 if(cltype7
>= var_pexprnode4
->type
->table_size
) {
6301 var6
= var_pexprnode4
->type
->type_table
[cltype7
] == idtype8
;
6305 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6306 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26362);
6309 var_pexprnode5
= var_nodearraylist4
;
6310 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6311 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
6312 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
6313 if(var_pexprnode5
== NULL
) {
6316 if(cltype10
>= var_pexprnode5
->type
->table_size
) {
6319 var9
= var_pexprnode5
->type
->type_table
[cltype10
] == idtype11
;
6323 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6324 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26364);
6327 var12
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
6329 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var12
, var_tkwassertnode2
, var13
, var_pexprnode4
, var_pexprnode5
) /* init_aassertexpr on <var12:AAssertExpr>*/;
6330 var_pexprnode1
= var12
;
6331 var_node_list
= var_pexprnode1
;
6332 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction707> */
6333 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
6334 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
6337 /* method parser#ReduceAction707#action for (self: Object, Parser) */
6338 void VIRTUAL_parser__ReduceAction707__action(val
* self
, val
* p0
) {
6339 parser__ReduceAction707__action(self
, p0
);
6342 /* method parser#ReduceAction708#action for (self: ReduceAction708, Parser) */
6343 void parser__ReduceAction708__action(val
* self
, val
* p0
) {
6344 val
* var_p
/* var p: Parser */;
6345 val
* var
/* : null */;
6346 val
* var_node_list
/* var node_list: nullable Object */;
6347 val
* var1
/* : nullable Object */;
6348 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6349 val
* var2
/* : nullable Object */;
6350 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6351 val
* var3
/* : nullable Object */;
6352 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6353 val
* var4
/* : nullable Object */;
6354 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6355 val
* var5
/* : nullable Object */;
6356 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6357 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
6358 short int var6
/* : Bool */;
6361 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6362 short int var7
/* : Bool */;
6365 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
6366 short int var10
/* : Bool */;
6369 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6370 short int var13
/* : Bool */;
6373 val
* var16
/* : AAssertExpr */;
6374 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
6375 long var17
/* : Int */;
6376 long var18
/* : Int */;
6379 var_node_list
= var
;
6380 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6381 var_nodearraylist5
= var1
;
6382 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6383 var_nodearraylist4
= var2
;
6384 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6385 var_nodearraylist3
= var3
;
6386 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6387 var_nodearraylist2
= var4
;
6388 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6389 var_nodearraylist1
= var5
;
6390 var_tkwassertnode2
= var_nodearraylist1
;
6391 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
6392 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
6393 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
6394 if(var_tkwassertnode2
== NULL
) {
6397 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
6400 var6
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
6404 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6405 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26386);
6408 var_tidnode3
= var_nodearraylist2
;
6409 /* <var_tidnode3:nullable Object> isa nullable TId */
6410 cltype8
= type_nullable_parser_nodes__TId
.color
;
6411 idtype9
= type_nullable_parser_nodes__TId
.id
;
6412 if(var_tidnode3
== NULL
) {
6415 if(cltype8
>= var_tidnode3
->type
->table_size
) {
6418 var7
= var_tidnode3
->type
->type_table
[cltype8
] == idtype9
;
6422 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6423 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26388);
6426 var_pexprnode4
= var_nodearraylist3
;
6427 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
6428 cltype11
= type_nullable_parser_nodes__AExpr
.color
;
6429 idtype12
= type_nullable_parser_nodes__AExpr
.id
;
6430 if(var_pexprnode4
== NULL
) {
6433 if(cltype11
>= var_pexprnode4
->type
->table_size
) {
6436 var10
= var_pexprnode4
->type
->type_table
[cltype11
] == idtype12
;
6440 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6441 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26390);
6444 var_pexprnode5
= var_nodearraylist5
;
6445 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6446 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
6447 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
6448 if(var_pexprnode5
== NULL
) {
6451 if(cltype14
>= var_pexprnode5
->type
->table_size
) {
6454 var13
= var_pexprnode5
->type
->type_table
[cltype14
] == idtype15
;
6458 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6459 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26392);
6462 var16
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
6463 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var16
, var_tkwassertnode2
, var_tidnode3
, var_pexprnode4
, var_pexprnode5
) /* init_aassertexpr on <var16:AAssertExpr>*/;
6464 var_pexprnode1
= var16
;
6465 var_node_list
= var_pexprnode1
;
6466 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction708> */
6467 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
6468 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
6471 /* method parser#ReduceAction708#action for (self: Object, Parser) */
6472 void VIRTUAL_parser__ReduceAction708__action(val
* self
, val
* p0
) {
6473 parser__ReduceAction708__action(self
, p0
);
6476 /* method parser#ReduceAction709#action for (self: ReduceAction709, Parser) */
6477 void parser__ReduceAction709__action(val
* self
, val
* p0
) {
6478 val
* var_p
/* var p: Parser */;
6479 val
* var
/* : null */;
6480 val
* var_node_list
/* var node_list: nullable Object */;
6481 val
* var1
/* : nullable Object */;
6482 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6483 val
* var2
/* : nullable Object */;
6484 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6485 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
6486 short int var3
/* : Bool */;
6489 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
6490 short int var4
/* : Bool */;
6493 val
* var7
/* : AAssertExpr */;
6494 val
* var8
/* : null */;
6495 val
* var9
/* : null */;
6496 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
6497 long var10
/* : Int */;
6498 long var11
/* : Int */;
6501 var_node_list
= var
;
6502 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6503 var_nodearraylist2
= var1
;
6504 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6505 var_nodearraylist1
= var2
;
6506 var_tkwassertnode2
= var_nodearraylist1
;
6507 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
6508 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
6509 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
6510 if(var_tkwassertnode2
== NULL
) {
6513 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
6516 var3
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
6520 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6521 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26411);
6524 var_pexprnode4
= var_nodearraylist2
;
6525 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
6526 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
6527 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
6528 if(var_pexprnode4
== NULL
) {
6531 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
6534 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
6538 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6539 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26413);
6542 var7
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
6545 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var7
, var_tkwassertnode2
, var8
, var_pexprnode4
, var9
) /* init_aassertexpr on <var7:AAssertExpr>*/;
6546 var_pexprnode1
= var7
;
6547 var_node_list
= var_pexprnode1
;
6548 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction709> */
6549 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
6550 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
6553 /* method parser#ReduceAction709#action for (self: Object, Parser) */
6554 void VIRTUAL_parser__ReduceAction709__action(val
* self
, val
* p0
) {
6555 parser__ReduceAction709__action(self
, p0
);
6558 /* method parser#ReduceAction710#action for (self: ReduceAction710, Parser) */
6559 void parser__ReduceAction710__action(val
* self
, val
* p0
) {
6560 val
* var_p
/* var p: Parser */;
6561 val
* var
/* : null */;
6562 val
* var_node_list
/* var node_list: nullable Object */;
6563 val
* var1
/* : nullable Object */;
6564 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6565 val
* var2
/* : nullable Object */;
6566 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6567 val
* var3
/* : nullable Object */;
6568 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6569 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
6570 short int var4
/* : Bool */;
6573 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6574 short int var5
/* : Bool */;
6577 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
6578 short int var8
/* : Bool */;
6581 val
* var11
/* : AAssertExpr */;
6582 val
* var12
/* : null */;
6583 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
6584 long var13
/* : Int */;
6585 long var14
/* : Int */;
6588 var_node_list
= var
;
6589 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6590 var_nodearraylist3
= var1
;
6591 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6592 var_nodearraylist2
= var2
;
6593 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6594 var_nodearraylist1
= var3
;
6595 var_tkwassertnode2
= var_nodearraylist1
;
6596 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
6597 cltype
= type_nullable_parser_nodes__TKwassert
.color
;
6598 idtype
= type_nullable_parser_nodes__TKwassert
.id
;
6599 if(var_tkwassertnode2
== NULL
) {
6602 if(cltype
>= var_tkwassertnode2
->type
->table_size
) {
6605 var4
= var_tkwassertnode2
->type
->type_table
[cltype
] == idtype
;
6609 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6610 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26433);
6613 var_tidnode3
= var_nodearraylist2
;
6614 /* <var_tidnode3:nullable Object> isa nullable TId */
6615 cltype6
= type_nullable_parser_nodes__TId
.color
;
6616 idtype7
= type_nullable_parser_nodes__TId
.id
;
6617 if(var_tidnode3
== NULL
) {
6620 if(cltype6
>= var_tidnode3
->type
->table_size
) {
6623 var5
= var_tidnode3
->type
->type_table
[cltype6
] == idtype7
;
6627 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6628 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26435);
6631 var_pexprnode4
= var_nodearraylist3
;
6632 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
6633 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
6634 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
6635 if(var_pexprnode4
== NULL
) {
6638 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
6641 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
6645 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6646 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26437);
6649 var11
= NEW_parser_nodes__AAssertExpr(&type_parser_nodes__AAssertExpr
);
6651 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AAssertExpr__init_aassertexpr
]))(var11
, var_tkwassertnode2
, var_tidnode3
, var_pexprnode4
, var12
) /* init_aassertexpr on <var11:AAssertExpr>*/;
6652 var_pexprnode1
= var11
;
6653 var_node_list
= var_pexprnode1
;
6654 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction710> */
6655 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
6656 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
6659 /* method parser#ReduceAction710#action for (self: Object, Parser) */
6660 void VIRTUAL_parser__ReduceAction710__action(val
* self
, val
* p0
) {
6661 parser__ReduceAction710__action(self
, p0
);
6664 /* method parser#ReduceAction711#action for (self: ReduceAction711, Parser) */
6665 void parser__ReduceAction711__action(val
* self
, val
* p0
) {
6666 val
* var_p
/* var p: Parser */;
6667 val
* var
/* : null */;
6668 val
* var_node_list
/* var node_list: nullable Object */;
6669 val
* var1
/* : nullable Object */;
6670 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6671 val
* var2
/* : nullable Object */;
6672 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6673 val
* var_tidnode1
/* var tidnode1: nullable Object */;
6674 long var3
/* : Int */;
6675 long var4
/* : Int */;
6678 var_node_list
= var
;
6679 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6680 var_nodearraylist2
= var1
;
6681 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6682 var_nodearraylist1
= var2
;
6683 var_tidnode1
= var_nodearraylist1
;
6684 var_node_list
= var_tidnode1
;
6685 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction711> */
6686 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
6687 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
6690 /* method parser#ReduceAction711#action for (self: Object, Parser) */
6691 void VIRTUAL_parser__ReduceAction711__action(val
* self
, val
* p0
) {
6692 parser__ReduceAction711__action(self
, p0
);
6695 /* method parser#ReduceAction714#action for (self: ReduceAction714, Parser) */
6696 void parser__ReduceAction714__action(val
* self
, val
* p0
) {
6697 val
* var_p
/* var p: Parser */;
6698 val
* var
/* : null */;
6699 val
* var_node_list
/* var node_list: nullable Object */;
6700 val
* var1
/* : nullable Object */;
6701 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
6702 val
* var2
/* : nullable Object */;
6703 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
6704 val
* var3
/* : nullable Object */;
6705 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
6706 val
* var4
/* : nullable Object */;
6707 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
6708 val
* var5
/* : nullable Object */;
6709 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6710 val
* var6
/* : nullable Object */;
6711 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6712 val
* var7
/* : nullable Object */;
6713 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6714 val
* var8
/* : nullable Object */;
6715 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6716 val
* var9
/* : nullable Object */;
6717 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6718 val
* var10
/* : nullable Object */;
6719 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6720 val
* var11
/* : nullable Object */;
6721 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6722 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
6723 short int var12
/* : Bool */;
6726 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
6727 short int var13
/* : Bool */;
6730 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
6731 short int var16
/* : Bool */;
6734 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6735 short int var19
/* : Bool */;
6738 val
* var_tkwelsenode6
/* var tkwelsenode6: nullable Object */;
6739 short int var22
/* : Bool */;
6742 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
6743 short int var25
/* : Bool */;
6746 val
* var28
/* : AIfexprExpr */;
6747 val
* var_pexprnode1
/* var pexprnode1: nullable AIfexprExpr */;
6748 long var29
/* : Int */;
6749 long var30
/* : Int */;
6752 var_node_list
= var
;
6753 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6754 var_nodearraylist11
= var1
;
6755 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6756 var_nodearraylist10
= var2
;
6757 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6758 var_nodearraylist9
= var3
;
6759 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6760 var_nodearraylist8
= var4
;
6761 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6762 var_nodearraylist7
= var5
;
6763 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6764 var_nodearraylist6
= var6
;
6765 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6766 var_nodearraylist5
= var7
;
6767 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6768 var_nodearraylist4
= var8
;
6769 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6770 var_nodearraylist3
= var9
;
6771 var10
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6772 var_nodearraylist2
= var10
;
6773 var11
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6774 var_nodearraylist1
= var11
;
6775 var_tkwifnode2
= var_nodearraylist1
;
6776 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
6777 cltype
= type_nullable_parser_nodes__TKwif
.color
;
6778 idtype
= type_nullable_parser_nodes__TKwif
.id
;
6779 if(var_tkwifnode2
== NULL
) {
6782 if(cltype
>= var_tkwifnode2
->type
->table_size
) {
6785 var12
= var_tkwifnode2
->type
->type_table
[cltype
] == idtype
;
6789 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6790 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26477);
6793 var_pexprnode3
= var_nodearraylist3
;
6794 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
6795 cltype14
= type_nullable_parser_nodes__AExpr
.color
;
6796 idtype15
= type_nullable_parser_nodes__AExpr
.id
;
6797 if(var_pexprnode3
== NULL
) {
6800 if(cltype14
>= var_pexprnode3
->type
->table_size
) {
6803 var13
= var_pexprnode3
->type
->type_table
[cltype14
] == idtype15
;
6807 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6808 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26479);
6811 var_tkwthennode4
= var_nodearraylist5
;
6812 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
6813 cltype17
= type_nullable_parser_nodes__TKwthen
.color
;
6814 idtype18
= type_nullable_parser_nodes__TKwthen
.id
;
6815 if(var_tkwthennode4
== NULL
) {
6818 if(cltype17
>= var_tkwthennode4
->type
->table_size
) {
6821 var16
= var_tkwthennode4
->type
->type_table
[cltype17
] == idtype18
;
6825 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6826 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26481);
6829 var_pexprnode5
= var_nodearraylist7
;
6830 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6831 cltype20
= type_nullable_parser_nodes__AExpr
.color
;
6832 idtype21
= type_nullable_parser_nodes__AExpr
.id
;
6833 if(var_pexprnode5
== NULL
) {
6836 if(cltype20
>= var_pexprnode5
->type
->table_size
) {
6839 var19
= var_pexprnode5
->type
->type_table
[cltype20
] == idtype21
;
6843 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6844 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26483);
6847 var_tkwelsenode6
= var_nodearraylist9
;
6848 /* <var_tkwelsenode6:nullable Object> isa nullable TKwelse */
6849 cltype23
= type_nullable_parser_nodes__TKwelse
.color
;
6850 idtype24
= type_nullable_parser_nodes__TKwelse
.id
;
6851 if(var_tkwelsenode6
== NULL
) {
6854 if(cltype23
>= var_tkwelsenode6
->type
->table_size
) {
6857 var22
= var_tkwelsenode6
->type
->type_table
[cltype23
] == idtype24
;
6861 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6862 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26485);
6865 var_pexprnode7
= var_nodearraylist11
;
6866 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
6867 cltype26
= type_nullable_parser_nodes__AExpr
.color
;
6868 idtype27
= type_nullable_parser_nodes__AExpr
.id
;
6869 if(var_pexprnode7
== NULL
) {
6872 if(cltype26
>= var_pexprnode7
->type
->table_size
) {
6875 var25
= var_pexprnode7
->type
->type_table
[cltype26
] == idtype27
;
6879 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6880 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26487);
6883 var28
= NEW_parser_nodes__AIfexprExpr(&type_parser_nodes__AIfexprExpr
);
6884 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var28
->class->vft
[COLOR_parser_prod__AIfexprExpr__init_aifexprexpr
]))(var28
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, var_pexprnode5
, var_tkwelsenode6
, var_pexprnode7
) /* init_aifexprexpr on <var28:AIfexprExpr>*/;
6885 var_pexprnode1
= var28
;
6886 var_node_list
= var_pexprnode1
;
6887 var29
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction714> */
6888 var30
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var29
) /* go_to on <var_p:Parser>*/;
6889 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var30
, var_node_list
) /* push on <var_p:Parser>*/;
6892 /* method parser#ReduceAction714#action for (self: Object, Parser) */
6893 void VIRTUAL_parser__ReduceAction714__action(val
* self
, val
* p0
) {
6894 parser__ReduceAction714__action(self
, p0
);
6897 /* method parser#ReduceAction716#action for (self: ReduceAction716, Parser) */
6898 void parser__ReduceAction716__action(val
* self
, val
* p0
) {
6899 val
* var_p
/* var p: Parser */;
6900 val
* var
/* : null */;
6901 val
* var_node_list
/* var node_list: nullable Object */;
6902 val
* var1
/* : nullable Object */;
6903 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6904 val
* var2
/* : nullable Object */;
6905 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6906 val
* var3
/* : nullable Object */;
6907 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6908 val
* var4
/* : nullable Object */;
6909 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6910 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6911 short int var5
/* : Bool */;
6914 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
6915 short int var6
/* : Bool */;
6918 val
* var9
/* : AOrExpr */;
6919 val
* var_pexprnode1
/* var pexprnode1: nullable AOrExpr */;
6920 long var10
/* : Int */;
6921 long var11
/* : Int */;
6924 var_node_list
= var
;
6925 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6926 var_nodearraylist4
= var1
;
6927 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6928 var_nodearraylist3
= var2
;
6929 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6930 var_nodearraylist2
= var3
;
6931 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6932 var_nodearraylist1
= var4
;
6933 var_pexprnode2
= var_nodearraylist1
;
6934 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
6935 cltype
= type_nullable_parser_nodes__AExpr
.color
;
6936 idtype
= type_nullable_parser_nodes__AExpr
.id
;
6937 if(var_pexprnode2
== NULL
) {
6940 if(cltype
>= var_pexprnode2
->type
->table_size
) {
6943 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
6947 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6948 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26510);
6951 var_pexprnode3
= var_nodearraylist4
;
6952 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
6953 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
6954 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
6955 if(var_pexprnode3
== NULL
) {
6958 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
6961 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
6965 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6966 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26512);
6969 var9
= NEW_parser_nodes__AOrExpr(&type_parser_nodes__AOrExpr
);
6970 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AOrExpr__init_aorexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aorexpr on <var9:AOrExpr>*/;
6971 var_pexprnode1
= var9
;
6972 var_node_list
= var_pexprnode1
;
6973 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction716> */
6974 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
6975 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
6978 /* method parser#ReduceAction716#action for (self: Object, Parser) */
6979 void VIRTUAL_parser__ReduceAction716__action(val
* self
, val
* p0
) {
6980 parser__ReduceAction716__action(self
, p0
);
6983 /* method parser#ReduceAction717#action for (self: ReduceAction717, Parser) */
6984 void parser__ReduceAction717__action(val
* self
, val
* p0
) {
6985 val
* var_p
/* var p: Parser */;
6986 val
* var
/* : null */;
6987 val
* var_node_list
/* var node_list: nullable Object */;
6988 val
* var1
/* : nullable Object */;
6989 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6990 val
* var2
/* : nullable Object */;
6991 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6992 val
* var3
/* : nullable Object */;
6993 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6994 val
* var4
/* : nullable Object */;
6995 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6996 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
6997 short int var5
/* : Bool */;
7000 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7001 short int var6
/* : Bool */;
7004 val
* var9
/* : AAndExpr */;
7005 val
* var_pexprnode1
/* var pexprnode1: nullable AAndExpr */;
7006 long var10
/* : Int */;
7007 long var11
/* : Int */;
7010 var_node_list
= var
;
7011 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7012 var_nodearraylist4
= var1
;
7013 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7014 var_nodearraylist3
= var2
;
7015 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7016 var_nodearraylist2
= var3
;
7017 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7018 var_nodearraylist1
= var4
;
7019 var_pexprnode2
= var_nodearraylist1
;
7020 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7021 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7022 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7023 if(var_pexprnode2
== NULL
) {
7026 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7029 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7033 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7034 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26531);
7037 var_pexprnode3
= var_nodearraylist4
;
7038 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7039 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7040 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7041 if(var_pexprnode3
== NULL
) {
7044 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7047 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7051 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7052 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26533);
7055 var9
= NEW_parser_nodes__AAndExpr(&type_parser_nodes__AAndExpr
);
7056 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AAndExpr__init_aandexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aandexpr on <var9:AAndExpr>*/;
7057 var_pexprnode1
= var9
;
7058 var_node_list
= var_pexprnode1
;
7059 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction717> */
7060 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7061 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7064 /* method parser#ReduceAction717#action for (self: Object, Parser) */
7065 void VIRTUAL_parser__ReduceAction717__action(val
* self
, val
* p0
) {
7066 parser__ReduceAction717__action(self
, p0
);
7069 /* method parser#ReduceAction718#action for (self: ReduceAction718, Parser) */
7070 void parser__ReduceAction718__action(val
* self
, val
* p0
) {
7071 val
* var_p
/* var p: Parser */;
7072 val
* var
/* : null */;
7073 val
* var_node_list
/* var node_list: nullable Object */;
7074 val
* var1
/* : nullable Object */;
7075 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7076 val
* var2
/* : nullable Object */;
7077 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7078 val
* var3
/* : nullable Object */;
7079 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7080 val
* var4
/* : nullable Object */;
7081 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7082 val
* var5
/* : nullable Object */;
7083 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7084 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7085 short int var6
/* : Bool */;
7088 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7089 short int var7
/* : Bool */;
7092 val
* var10
/* : AOrElseExpr */;
7093 val
* var_pexprnode1
/* var pexprnode1: nullable AOrElseExpr */;
7094 long var11
/* : Int */;
7095 long var12
/* : Int */;
7098 var_node_list
= var
;
7099 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7100 var_nodearraylist5
= var1
;
7101 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7102 var_nodearraylist4
= var2
;
7103 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7104 var_nodearraylist3
= var3
;
7105 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7106 var_nodearraylist2
= var4
;
7107 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7108 var_nodearraylist1
= var5
;
7109 var_pexprnode2
= var_nodearraylist1
;
7110 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7111 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7112 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7113 if(var_pexprnode2
== NULL
) {
7116 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7119 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7123 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7124 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26553);
7127 var_pexprnode3
= var_nodearraylist5
;
7128 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7129 cltype8
= type_nullable_parser_nodes__AExpr
.color
;
7130 idtype9
= type_nullable_parser_nodes__AExpr
.id
;
7131 if(var_pexprnode3
== NULL
) {
7134 if(cltype8
>= var_pexprnode3
->type
->table_size
) {
7137 var7
= var_pexprnode3
->type
->type_table
[cltype8
] == idtype9
;
7141 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7142 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26555);
7145 var10
= NEW_parser_nodes__AOrElseExpr(&type_parser_nodes__AOrElseExpr
);
7146 ((void (*)(val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AOrElseExpr__init_aorelseexpr
]))(var10
, var_pexprnode2
, var_pexprnode3
) /* init_aorelseexpr on <var10:AOrElseExpr>*/;
7147 var_pexprnode1
= var10
;
7148 var_node_list
= var_pexprnode1
;
7149 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction718> */
7150 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
7151 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
7154 /* method parser#ReduceAction718#action for (self: Object, Parser) */
7155 void VIRTUAL_parser__ReduceAction718__action(val
* self
, val
* p0
) {
7156 parser__ReduceAction718__action(self
, p0
);
7159 /* method parser#ReduceAction719#action for (self: ReduceAction719, Parser) */
7160 void parser__ReduceAction719__action(val
* self
, val
* p0
) {
7161 val
* var_p
/* var p: Parser */;
7162 val
* var
/* : null */;
7163 val
* var_node_list
/* var node_list: nullable Object */;
7164 val
* var1
/* : nullable Object */;
7165 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7166 val
* var2
/* : nullable Object */;
7167 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7168 val
* var3
/* : nullable Object */;
7169 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7170 val
* var4
/* : nullable Object */;
7171 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7172 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7173 short int var5
/* : Bool */;
7176 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7177 short int var6
/* : Bool */;
7180 val
* var9
/* : AImpliesExpr */;
7181 val
* var_pexprnode1
/* var pexprnode1: nullable AImpliesExpr */;
7182 long var10
/* : Int */;
7183 long var11
/* : Int */;
7186 var_node_list
= var
;
7187 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7188 var_nodearraylist4
= var1
;
7189 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7190 var_nodearraylist3
= var2
;
7191 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7192 var_nodearraylist2
= var3
;
7193 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7194 var_nodearraylist1
= var4
;
7195 var_pexprnode2
= var_nodearraylist1
;
7196 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7197 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7198 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7199 if(var_pexprnode2
== NULL
) {
7202 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7205 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7209 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7210 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26574);
7213 var_pexprnode3
= var_nodearraylist4
;
7214 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7215 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7216 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7217 if(var_pexprnode3
== NULL
) {
7220 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7223 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7227 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7228 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26576);
7231 var9
= NEW_parser_nodes__AImpliesExpr(&type_parser_nodes__AImpliesExpr
);
7232 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AImpliesExpr__init_aimpliesexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aimpliesexpr on <var9:AImpliesExpr>*/;
7233 var_pexprnode1
= var9
;
7234 var_node_list
= var_pexprnode1
;
7235 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction719> */
7236 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7237 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7240 /* method parser#ReduceAction719#action for (self: Object, Parser) */
7241 void VIRTUAL_parser__ReduceAction719__action(val
* self
, val
* p0
) {
7242 parser__ReduceAction719__action(self
, p0
);
7245 /* method parser#ReduceAction721#action for (self: ReduceAction721, Parser) */
7246 void parser__ReduceAction721__action(val
* self
, val
* p0
) {
7247 val
* var_p
/* var p: Parser */;
7248 val
* var
/* : null */;
7249 val
* var_node_list
/* var node_list: nullable Object */;
7250 val
* var1
/* : nullable Object */;
7251 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7252 val
* var2
/* : nullable Object */;
7253 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7254 val
* var3
/* : nullable Object */;
7255 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7256 val
* var_tkwnotnode2
/* var tkwnotnode2: nullable Object */;
7257 short int var4
/* : Bool */;
7260 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7261 short int var5
/* : Bool */;
7264 val
* var8
/* : ANotExpr */;
7265 val
* var_pexprnode1
/* var pexprnode1: nullable ANotExpr */;
7266 long var9
/* : Int */;
7267 long var10
/* : Int */;
7270 var_node_list
= var
;
7271 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7272 var_nodearraylist3
= var1
;
7273 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7274 var_nodearraylist2
= var2
;
7275 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7276 var_nodearraylist1
= var3
;
7277 var_tkwnotnode2
= var_nodearraylist1
;
7278 /* <var_tkwnotnode2:nullable Object> isa nullable TKwnot */
7279 cltype
= type_nullable_parser_nodes__TKwnot
.color
;
7280 idtype
= type_nullable_parser_nodes__TKwnot
.id
;
7281 if(var_tkwnotnode2
== NULL
) {
7284 if(cltype
>= var_tkwnotnode2
->type
->table_size
) {
7287 var4
= var_tkwnotnode2
->type
->type_table
[cltype
] == idtype
;
7291 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7292 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26594);
7295 var_pexprnode3
= var_nodearraylist3
;
7296 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7297 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
7298 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
7299 if(var_pexprnode3
== NULL
) {
7302 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
7305 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
7309 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7310 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26596);
7313 var8
= NEW_parser_nodes__ANotExpr(&type_parser_nodes__ANotExpr
);
7314 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__ANotExpr__init_anotexpr
]))(var8
, var_tkwnotnode2
, var_pexprnode3
) /* init_anotexpr on <var8:ANotExpr>*/;
7315 var_pexprnode1
= var8
;
7316 var_node_list
= var_pexprnode1
;
7317 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction721> */
7318 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7319 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7322 /* method parser#ReduceAction721#action for (self: Object, Parser) */
7323 void VIRTUAL_parser__ReduceAction721__action(val
* self
, val
* p0
) {
7324 parser__ReduceAction721__action(self
, p0
);
7327 /* method parser#ReduceAction723#action for (self: ReduceAction723, Parser) */
7328 void parser__ReduceAction723__action(val
* self
, val
* p0
) {
7329 val
* var_p
/* var p: Parser */;
7330 val
* var
/* : null */;
7331 val
* var_node_list
/* var node_list: nullable Object */;
7332 val
* var1
/* : nullable Object */;
7333 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7334 val
* var2
/* : nullable Object */;
7335 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7336 val
* var3
/* : nullable Object */;
7337 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7338 val
* var4
/* : nullable Object */;
7339 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7340 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7341 short int var5
/* : Bool */;
7344 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7345 short int var6
/* : Bool */;
7348 val
* var9
/* : AEqExpr */;
7349 val
* var_pexprnode1
/* var pexprnode1: nullable AEqExpr */;
7350 long var10
/* : Int */;
7351 long var11
/* : Int */;
7354 var_node_list
= var
;
7355 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7356 var_nodearraylist4
= var1
;
7357 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7358 var_nodearraylist3
= var2
;
7359 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7360 var_nodearraylist2
= var3
;
7361 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7362 var_nodearraylist1
= var4
;
7363 var_pexprnode2
= var_nodearraylist1
;
7364 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7365 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7366 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7367 if(var_pexprnode2
== NULL
) {
7370 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7373 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7377 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7378 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26615);
7381 var_pexprnode3
= var_nodearraylist4
;
7382 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7383 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7384 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7385 if(var_pexprnode3
== NULL
) {
7388 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7391 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7395 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7396 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26617);
7399 var9
= NEW_parser_nodes__AEqExpr(&type_parser_nodes__AEqExpr
);
7400 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AEqExpr__init_aeqexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aeqexpr on <var9:AEqExpr>*/;
7401 var_pexprnode1
= var9
;
7402 var_node_list
= var_pexprnode1
;
7403 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction723> */
7404 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7405 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7408 /* method parser#ReduceAction723#action for (self: Object, Parser) */
7409 void VIRTUAL_parser__ReduceAction723__action(val
* self
, val
* p0
) {
7410 parser__ReduceAction723__action(self
, p0
);
7413 /* method parser#ReduceAction724#action for (self: ReduceAction724, Parser) */
7414 void parser__ReduceAction724__action(val
* self
, val
* p0
) {
7415 val
* var_p
/* var p: Parser */;
7416 val
* var
/* : null */;
7417 val
* var_node_list
/* var node_list: nullable Object */;
7418 val
* var1
/* : nullable Object */;
7419 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7420 val
* var2
/* : nullable Object */;
7421 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7422 val
* var3
/* : nullable Object */;
7423 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7424 val
* var4
/* : nullable Object */;
7425 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7426 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7427 short int var5
/* : Bool */;
7430 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7431 short int var6
/* : Bool */;
7434 val
* var9
/* : ANeExpr */;
7435 val
* var_pexprnode1
/* var pexprnode1: nullable ANeExpr */;
7436 long var10
/* : Int */;
7437 long var11
/* : Int */;
7440 var_node_list
= var
;
7441 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7442 var_nodearraylist4
= var1
;
7443 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7444 var_nodearraylist3
= var2
;
7445 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7446 var_nodearraylist2
= var3
;
7447 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7448 var_nodearraylist1
= var4
;
7449 var_pexprnode2
= var_nodearraylist1
;
7450 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7451 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7452 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7453 if(var_pexprnode2
== NULL
) {
7456 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7459 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7463 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7464 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26636);
7467 var_pexprnode3
= var_nodearraylist4
;
7468 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7469 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7470 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7471 if(var_pexprnode3
== NULL
) {
7474 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7477 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7481 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7482 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26638);
7485 var9
= NEW_parser_nodes__ANeExpr(&type_parser_nodes__ANeExpr
);
7486 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ANeExpr__init_aneexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aneexpr on <var9:ANeExpr>*/;
7487 var_pexprnode1
= var9
;
7488 var_node_list
= var_pexprnode1
;
7489 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction724> */
7490 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7491 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7494 /* method parser#ReduceAction724#action for (self: Object, Parser) */
7495 void VIRTUAL_parser__ReduceAction724__action(val
* self
, val
* p0
) {
7496 parser__ReduceAction724__action(self
, p0
);
7499 /* method parser#ReduceAction725#action for (self: ReduceAction725, Parser) */
7500 void parser__ReduceAction725__action(val
* self
, val
* p0
) {
7501 val
* var_p
/* var p: Parser */;
7502 val
* var
/* : null */;
7503 val
* var_node_list
/* var node_list: nullable Object */;
7504 val
* var1
/* : nullable Object */;
7505 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7506 val
* var2
/* : nullable Object */;
7507 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7508 val
* var3
/* : nullable Object */;
7509 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7510 val
* var4
/* : nullable Object */;
7511 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7512 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7513 short int var5
/* : Bool */;
7516 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7517 short int var6
/* : Bool */;
7520 val
* var9
/* : ALtExpr */;
7521 val
* var_pexprnode1
/* var pexprnode1: nullable ALtExpr */;
7522 long var10
/* : Int */;
7523 long var11
/* : Int */;
7526 var_node_list
= var
;
7527 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7528 var_nodearraylist4
= var1
;
7529 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7530 var_nodearraylist3
= var2
;
7531 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7532 var_nodearraylist2
= var3
;
7533 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7534 var_nodearraylist1
= var4
;
7535 var_pexprnode2
= var_nodearraylist1
;
7536 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7537 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7538 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7539 if(var_pexprnode2
== NULL
) {
7542 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7545 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7549 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7550 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26657);
7553 var_pexprnode3
= var_nodearraylist4
;
7554 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7555 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7556 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7557 if(var_pexprnode3
== NULL
) {
7560 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7563 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7567 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7568 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26659);
7571 var9
= NEW_parser_nodes__ALtExpr(&type_parser_nodes__ALtExpr
);
7572 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ALtExpr__init_altexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_altexpr on <var9:ALtExpr>*/;
7573 var_pexprnode1
= var9
;
7574 var_node_list
= var_pexprnode1
;
7575 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction725> */
7576 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7577 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7580 /* method parser#ReduceAction725#action for (self: Object, Parser) */
7581 void VIRTUAL_parser__ReduceAction725__action(val
* self
, val
* p0
) {
7582 parser__ReduceAction725__action(self
, p0
);
7585 /* method parser#ReduceAction726#action for (self: ReduceAction726, Parser) */
7586 void parser__ReduceAction726__action(val
* self
, val
* p0
) {
7587 val
* var_p
/* var p: Parser */;
7588 val
* var
/* : null */;
7589 val
* var_node_list
/* var node_list: nullable Object */;
7590 val
* var1
/* : nullable Object */;
7591 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7592 val
* var2
/* : nullable Object */;
7593 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7594 val
* var3
/* : nullable Object */;
7595 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7596 val
* var4
/* : nullable Object */;
7597 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7598 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7599 short int var5
/* : Bool */;
7602 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7603 short int var6
/* : Bool */;
7606 val
* var9
/* : ALeExpr */;
7607 val
* var_pexprnode1
/* var pexprnode1: nullable ALeExpr */;
7608 long var10
/* : Int */;
7609 long var11
/* : Int */;
7612 var_node_list
= var
;
7613 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7614 var_nodearraylist4
= var1
;
7615 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7616 var_nodearraylist3
= var2
;
7617 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7618 var_nodearraylist2
= var3
;
7619 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7620 var_nodearraylist1
= var4
;
7621 var_pexprnode2
= var_nodearraylist1
;
7622 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7623 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7624 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7625 if(var_pexprnode2
== NULL
) {
7628 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7631 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7635 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7636 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26678);
7639 var_pexprnode3
= var_nodearraylist4
;
7640 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7641 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7642 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7643 if(var_pexprnode3
== NULL
) {
7646 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7649 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7653 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7654 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26680);
7657 var9
= NEW_parser_nodes__ALeExpr(&type_parser_nodes__ALeExpr
);
7658 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ALeExpr__init_aleexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aleexpr on <var9:ALeExpr>*/;
7659 var_pexprnode1
= var9
;
7660 var_node_list
= var_pexprnode1
;
7661 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction726> */
7662 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7663 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7666 /* method parser#ReduceAction726#action for (self: Object, Parser) */
7667 void VIRTUAL_parser__ReduceAction726__action(val
* self
, val
* p0
) {
7668 parser__ReduceAction726__action(self
, p0
);
7671 /* method parser#ReduceAction727#action for (self: ReduceAction727, Parser) */
7672 void parser__ReduceAction727__action(val
* self
, val
* p0
) {
7673 val
* var_p
/* var p: Parser */;
7674 val
* var
/* : null */;
7675 val
* var_node_list
/* var node_list: nullable Object */;
7676 val
* var1
/* : nullable Object */;
7677 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7678 val
* var2
/* : nullable Object */;
7679 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7680 val
* var3
/* : nullable Object */;
7681 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7682 val
* var4
/* : nullable Object */;
7683 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7684 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7685 short int var5
/* : Bool */;
7688 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7689 short int var6
/* : Bool */;
7692 val
* var9
/* : ALlExpr */;
7693 val
* var_pexprnode1
/* var pexprnode1: nullable ALlExpr */;
7694 long var10
/* : Int */;
7695 long var11
/* : Int */;
7698 var_node_list
= var
;
7699 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7700 var_nodearraylist4
= var1
;
7701 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7702 var_nodearraylist3
= var2
;
7703 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7704 var_nodearraylist2
= var3
;
7705 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7706 var_nodearraylist1
= var4
;
7707 var_pexprnode2
= var_nodearraylist1
;
7708 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7709 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7710 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7711 if(var_pexprnode2
== NULL
) {
7714 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7717 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7721 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7722 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26699);
7725 var_pexprnode3
= var_nodearraylist4
;
7726 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7727 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7728 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7729 if(var_pexprnode3
== NULL
) {
7732 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7735 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7739 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7740 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26701);
7743 var9
= NEW_parser_nodes__ALlExpr(&type_parser_nodes__ALlExpr
);
7744 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ALlExpr__init_allexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_allexpr on <var9:ALlExpr>*/;
7745 var_pexprnode1
= var9
;
7746 var_node_list
= var_pexprnode1
;
7747 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction727> */
7748 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7749 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7752 /* method parser#ReduceAction727#action for (self: Object, Parser) */
7753 void VIRTUAL_parser__ReduceAction727__action(val
* self
, val
* p0
) {
7754 parser__ReduceAction727__action(self
, p0
);
7757 /* method parser#ReduceAction728#action for (self: ReduceAction728, Parser) */
7758 void parser__ReduceAction728__action(val
* self
, val
* p0
) {
7759 val
* var_p
/* var p: Parser */;
7760 val
* var
/* : null */;
7761 val
* var_node_list
/* var node_list: nullable Object */;
7762 val
* var1
/* : nullable Object */;
7763 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7764 val
* var2
/* : nullable Object */;
7765 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7766 val
* var3
/* : nullable Object */;
7767 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7768 val
* var4
/* : nullable Object */;
7769 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7770 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7771 short int var5
/* : Bool */;
7774 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7775 short int var6
/* : Bool */;
7778 val
* var9
/* : AGtExpr */;
7779 val
* var_pexprnode1
/* var pexprnode1: nullable AGtExpr */;
7780 long var10
/* : Int */;
7781 long var11
/* : Int */;
7784 var_node_list
= var
;
7785 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7786 var_nodearraylist4
= var1
;
7787 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7788 var_nodearraylist3
= var2
;
7789 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7790 var_nodearraylist2
= var3
;
7791 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7792 var_nodearraylist1
= var4
;
7793 var_pexprnode2
= var_nodearraylist1
;
7794 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7795 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7796 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7797 if(var_pexprnode2
== NULL
) {
7800 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7803 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7807 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7808 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26720);
7811 var_pexprnode3
= var_nodearraylist4
;
7812 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7813 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7814 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7815 if(var_pexprnode3
== NULL
) {
7818 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7821 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7825 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7826 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26722);
7829 var9
= NEW_parser_nodes__AGtExpr(&type_parser_nodes__AGtExpr
);
7830 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AGtExpr__init_agtexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_agtexpr on <var9:AGtExpr>*/;
7831 var_pexprnode1
= var9
;
7832 var_node_list
= var_pexprnode1
;
7833 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction728> */
7834 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7835 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7838 /* method parser#ReduceAction728#action for (self: Object, Parser) */
7839 void VIRTUAL_parser__ReduceAction728__action(val
* self
, val
* p0
) {
7840 parser__ReduceAction728__action(self
, p0
);
7843 /* method parser#ReduceAction729#action for (self: ReduceAction729, Parser) */
7844 void parser__ReduceAction729__action(val
* self
, val
* p0
) {
7845 val
* var_p
/* var p: Parser */;
7846 val
* var
/* : null */;
7847 val
* var_node_list
/* var node_list: nullable Object */;
7848 val
* var1
/* : nullable Object */;
7849 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7850 val
* var2
/* : nullable Object */;
7851 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7852 val
* var3
/* : nullable Object */;
7853 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7854 val
* var4
/* : nullable Object */;
7855 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7856 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7857 short int var5
/* : Bool */;
7860 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7861 short int var6
/* : Bool */;
7864 val
* var9
/* : AGeExpr */;
7865 val
* var_pexprnode1
/* var pexprnode1: nullable AGeExpr */;
7866 long var10
/* : Int */;
7867 long var11
/* : Int */;
7870 var_node_list
= var
;
7871 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7872 var_nodearraylist4
= var1
;
7873 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7874 var_nodearraylist3
= var2
;
7875 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7876 var_nodearraylist2
= var3
;
7877 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7878 var_nodearraylist1
= var4
;
7879 var_pexprnode2
= var_nodearraylist1
;
7880 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7881 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7882 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7883 if(var_pexprnode2
== NULL
) {
7886 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7889 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7893 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7894 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26741);
7897 var_pexprnode3
= var_nodearraylist4
;
7898 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7899 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7900 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7901 if(var_pexprnode3
== NULL
) {
7904 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7907 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7911 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7912 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26743);
7915 var9
= NEW_parser_nodes__AGeExpr(&type_parser_nodes__AGeExpr
);
7916 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AGeExpr__init_ageexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_ageexpr on <var9:AGeExpr>*/;
7917 var_pexprnode1
= var9
;
7918 var_node_list
= var_pexprnode1
;
7919 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction729> */
7920 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
7921 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
7924 /* method parser#ReduceAction729#action for (self: Object, Parser) */
7925 void VIRTUAL_parser__ReduceAction729__action(val
* self
, val
* p0
) {
7926 parser__ReduceAction729__action(self
, p0
);
7929 /* method parser#ReduceAction730#action for (self: ReduceAction730, Parser) */
7930 void parser__ReduceAction730__action(val
* self
, val
* p0
) {
7931 val
* var_p
/* var p: Parser */;
7932 val
* var
/* : null */;
7933 val
* var_node_list
/* var node_list: nullable Object */;
7934 val
* var1
/* : nullable Object */;
7935 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7936 val
* var2
/* : nullable Object */;
7937 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7938 val
* var3
/* : nullable Object */;
7939 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7940 val
* var4
/* : nullable Object */;
7941 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7942 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7943 short int var5
/* : Bool */;
7946 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7947 short int var6
/* : Bool */;
7950 val
* var9
/* : AGgExpr */;
7951 val
* var_pexprnode1
/* var pexprnode1: nullable AGgExpr */;
7952 long var10
/* : Int */;
7953 long var11
/* : Int */;
7956 var_node_list
= var
;
7957 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7958 var_nodearraylist4
= var1
;
7959 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7960 var_nodearraylist3
= var2
;
7961 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7962 var_nodearraylist2
= var3
;
7963 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7964 var_nodearraylist1
= var4
;
7965 var_pexprnode2
= var_nodearraylist1
;
7966 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7967 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7968 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7969 if(var_pexprnode2
== NULL
) {
7972 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7975 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7979 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7980 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26762);
7983 var_pexprnode3
= var_nodearraylist4
;
7984 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7985 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
7986 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
7987 if(var_pexprnode3
== NULL
) {
7990 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
7993 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
7997 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7998 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26764);
8001 var9
= NEW_parser_nodes__AGgExpr(&type_parser_nodes__AGgExpr
);
8002 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AGgExpr__init_aggexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aggexpr on <var9:AGgExpr>*/;
8003 var_pexprnode1
= var9
;
8004 var_node_list
= var_pexprnode1
;
8005 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction730> */
8006 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8007 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8010 /* method parser#ReduceAction730#action for (self: Object, Parser) */
8011 void VIRTUAL_parser__ReduceAction730__action(val
* self
, val
* p0
) {
8012 parser__ReduceAction730__action(self
, p0
);
8015 /* method parser#ReduceAction731#action for (self: ReduceAction731, Parser) */
8016 void parser__ReduceAction731__action(val
* self
, val
* p0
) {
8017 val
* var_p
/* var p: Parser */;
8018 val
* var
/* : null */;
8019 val
* var_node_list
/* var node_list: nullable Object */;
8020 val
* var1
/* : nullable Object */;
8021 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8022 val
* var2
/* : nullable Object */;
8023 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8024 val
* var3
/* : nullable Object */;
8025 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8026 val
* var4
/* : nullable Object */;
8027 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8028 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8029 short int var5
/* : Bool */;
8032 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8033 short int var6
/* : Bool */;
8036 val
* var9
/* : AStarshipExpr */;
8037 val
* var_pexprnode1
/* var pexprnode1: nullable AStarshipExpr */;
8038 long var10
/* : Int */;
8039 long var11
/* : Int */;
8042 var_node_list
= var
;
8043 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8044 var_nodearraylist4
= var1
;
8045 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8046 var_nodearraylist3
= var2
;
8047 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8048 var_nodearraylist2
= var3
;
8049 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8050 var_nodearraylist1
= var4
;
8051 var_pexprnode2
= var_nodearraylist1
;
8052 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8053 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8054 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8055 if(var_pexprnode2
== NULL
) {
8058 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8061 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8065 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8066 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26783);
8069 var_pexprnode3
= var_nodearraylist4
;
8070 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8071 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
8072 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
8073 if(var_pexprnode3
== NULL
) {
8076 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
8079 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
8083 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8084 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26785);
8087 var9
= NEW_parser_nodes__AStarshipExpr(&type_parser_nodes__AStarshipExpr
);
8088 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AStarshipExpr__init_astarshipexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_astarshipexpr on <var9:AStarshipExpr>*/;
8089 var_pexprnode1
= var9
;
8090 var_node_list
= var_pexprnode1
;
8091 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction731> */
8092 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8093 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8096 /* method parser#ReduceAction731#action for (self: Object, Parser) */
8097 void VIRTUAL_parser__ReduceAction731__action(val
* self
, val
* p0
) {
8098 parser__ReduceAction731__action(self
, p0
);
8101 /* method parser#ReduceAction732#action for (self: ReduceAction732, Parser) */
8102 void parser__ReduceAction732__action(val
* self
, val
* p0
) {
8103 val
* var_p
/* var p: Parser */;
8104 val
* var
/* : null */;
8105 val
* var_node_list
/* var node_list: nullable Object */;
8106 val
* var1
/* : nullable Object */;
8107 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8108 val
* var2
/* : nullable Object */;
8109 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8110 val
* var3
/* : nullable Object */;
8111 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8112 val
* var4
/* : nullable Object */;
8113 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8114 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8115 short int var5
/* : Bool */;
8118 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
8119 short int var6
/* : Bool */;
8122 val
* var9
/* : AIsaExpr */;
8123 val
* var_pexprnode1
/* var pexprnode1: nullable AIsaExpr */;
8124 long var10
/* : Int */;
8125 long var11
/* : Int */;
8128 var_node_list
= var
;
8129 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8130 var_nodearraylist4
= var1
;
8131 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8132 var_nodearraylist3
= var2
;
8133 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8134 var_nodearraylist2
= var3
;
8135 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8136 var_nodearraylist1
= var4
;
8137 var_pexprnode2
= var_nodearraylist1
;
8138 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8139 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8140 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8141 if(var_pexprnode2
== NULL
) {
8144 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8147 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8151 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8152 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26804);
8155 var_ptypenode3
= var_nodearraylist4
;
8156 /* <var_ptypenode3:nullable Object> isa nullable AType */
8157 cltype7
= type_nullable_parser_nodes__AType
.color
;
8158 idtype8
= type_nullable_parser_nodes__AType
.id
;
8159 if(var_ptypenode3
== NULL
) {
8162 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
8165 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
8169 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8170 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26806);
8173 var9
= NEW_parser_nodes__AIsaExpr(&type_parser_nodes__AIsaExpr
);
8174 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AIsaExpr__init_aisaexpr
]))(var9
, var_pexprnode2
, var_ptypenode3
) /* init_aisaexpr on <var9:AIsaExpr>*/;
8175 var_pexprnode1
= var9
;
8176 var_node_list
= var_pexprnode1
;
8177 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction732> */
8178 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8179 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8182 /* method parser#ReduceAction732#action for (self: Object, Parser) */
8183 void VIRTUAL_parser__ReduceAction732__action(val
* self
, val
* p0
) {
8184 parser__ReduceAction732__action(self
, p0
);
8187 /* method parser#ReduceAction734#action for (self: ReduceAction734, Parser) */
8188 void parser__ReduceAction734__action(val
* self
, val
* p0
) {
8189 val
* var_p
/* var p: Parser */;
8190 val
* var
/* : null */;
8191 val
* var_node_list
/* var node_list: nullable Object */;
8192 val
* var1
/* : nullable Object */;
8193 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8194 val
* var2
/* : nullable Object */;
8195 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8196 val
* var3
/* : nullable Object */;
8197 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8198 val
* var4
/* : nullable Object */;
8199 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8200 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8201 short int var5
/* : Bool */;
8204 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8205 short int var6
/* : Bool */;
8208 val
* var9
/* : APlusExpr */;
8209 val
* var_pexprnode1
/* var pexprnode1: nullable APlusExpr */;
8210 long var10
/* : Int */;
8211 long var11
/* : Int */;
8214 var_node_list
= var
;
8215 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8216 var_nodearraylist4
= var1
;
8217 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8218 var_nodearraylist3
= var2
;
8219 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8220 var_nodearraylist2
= var3
;
8221 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8222 var_nodearraylist1
= var4
;
8223 var_pexprnode2
= var_nodearraylist1
;
8224 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8225 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8226 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8227 if(var_pexprnode2
== NULL
) {
8230 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8233 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8237 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8238 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26825);
8241 var_pexprnode3
= var_nodearraylist4
;
8242 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8243 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
8244 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
8245 if(var_pexprnode3
== NULL
) {
8248 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
8251 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
8255 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8256 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26827);
8259 var9
= NEW_parser_nodes__APlusExpr(&type_parser_nodes__APlusExpr
);
8260 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__APlusExpr__init_aplusexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aplusexpr on <var9:APlusExpr>*/;
8261 var_pexprnode1
= var9
;
8262 var_node_list
= var_pexprnode1
;
8263 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction734> */
8264 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8265 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8268 /* method parser#ReduceAction734#action for (self: Object, Parser) */
8269 void VIRTUAL_parser__ReduceAction734__action(val
* self
, val
* p0
) {
8270 parser__ReduceAction734__action(self
, p0
);
8273 /* method parser#ReduceAction735#action for (self: ReduceAction735, Parser) */
8274 void parser__ReduceAction735__action(val
* self
, val
* p0
) {
8275 val
* var_p
/* var p: Parser */;
8276 val
* var
/* : null */;
8277 val
* var_node_list
/* var node_list: nullable Object */;
8278 val
* var1
/* : nullable Object */;
8279 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8280 val
* var2
/* : nullable Object */;
8281 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8282 val
* var3
/* : nullable Object */;
8283 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8284 val
* var4
/* : nullable Object */;
8285 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8286 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8287 short int var5
/* : Bool */;
8290 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8291 short int var6
/* : Bool */;
8294 val
* var9
/* : AMinusExpr */;
8295 val
* var_pexprnode1
/* var pexprnode1: nullable AMinusExpr */;
8296 long var10
/* : Int */;
8297 long var11
/* : Int */;
8300 var_node_list
= var
;
8301 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8302 var_nodearraylist4
= var1
;
8303 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8304 var_nodearraylist3
= var2
;
8305 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8306 var_nodearraylist2
= var3
;
8307 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8308 var_nodearraylist1
= var4
;
8309 var_pexprnode2
= var_nodearraylist1
;
8310 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8311 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8312 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8313 if(var_pexprnode2
== NULL
) {
8316 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8319 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8323 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8324 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26846);
8327 var_pexprnode3
= var_nodearraylist4
;
8328 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8329 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
8330 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
8331 if(var_pexprnode3
== NULL
) {
8334 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
8337 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
8341 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8342 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26848);
8345 var9
= NEW_parser_nodes__AMinusExpr(&type_parser_nodes__AMinusExpr
);
8346 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AMinusExpr__init_aminusexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aminusexpr on <var9:AMinusExpr>*/;
8347 var_pexprnode1
= var9
;
8348 var_node_list
= var_pexprnode1
;
8349 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction735> */
8350 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8351 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8354 /* method parser#ReduceAction735#action for (self: Object, Parser) */
8355 void VIRTUAL_parser__ReduceAction735__action(val
* self
, val
* p0
) {
8356 parser__ReduceAction735__action(self
, p0
);
8359 /* method parser#ReduceAction737#action for (self: ReduceAction737, Parser) */
8360 void parser__ReduceAction737__action(val
* self
, val
* p0
) {
8361 val
* var_p
/* var p: Parser */;
8362 val
* var
/* : null */;
8363 val
* var_node_list
/* var node_list: nullable Object */;
8364 val
* var1
/* : nullable Object */;
8365 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8366 val
* var2
/* : nullable Object */;
8367 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8368 val
* var3
/* : nullable Object */;
8369 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8370 val
* var4
/* : nullable Object */;
8371 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8372 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8373 short int var5
/* : Bool */;
8376 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8377 short int var6
/* : Bool */;
8380 val
* var9
/* : AStarExpr */;
8381 val
* var_pexprnode1
/* var pexprnode1: nullable AStarExpr */;
8382 long var10
/* : Int */;
8383 long var11
/* : Int */;
8386 var_node_list
= var
;
8387 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8388 var_nodearraylist4
= var1
;
8389 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8390 var_nodearraylist3
= var2
;
8391 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8392 var_nodearraylist2
= var3
;
8393 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8394 var_nodearraylist1
= var4
;
8395 var_pexprnode2
= var_nodearraylist1
;
8396 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8397 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8398 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8399 if(var_pexprnode2
== NULL
) {
8402 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8405 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8409 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8410 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26867);
8413 var_pexprnode3
= var_nodearraylist4
;
8414 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8415 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
8416 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
8417 if(var_pexprnode3
== NULL
) {
8420 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
8423 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
8427 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8428 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26869);
8431 var9
= NEW_parser_nodes__AStarExpr(&type_parser_nodes__AStarExpr
);
8432 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AStarExpr__init_astarexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_astarexpr on <var9:AStarExpr>*/;
8433 var_pexprnode1
= var9
;
8434 var_node_list
= var_pexprnode1
;
8435 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction737> */
8436 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8437 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8440 /* method parser#ReduceAction737#action for (self: Object, Parser) */
8441 void VIRTUAL_parser__ReduceAction737__action(val
* self
, val
* p0
) {
8442 parser__ReduceAction737__action(self
, p0
);
8445 /* method parser#ReduceAction738#action for (self: ReduceAction738, Parser) */
8446 void parser__ReduceAction738__action(val
* self
, val
* p0
) {
8447 val
* var_p
/* var p: Parser */;
8448 val
* var
/* : null */;
8449 val
* var_node_list
/* var node_list: nullable Object */;
8450 val
* var1
/* : nullable Object */;
8451 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8452 val
* var2
/* : nullable Object */;
8453 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8454 val
* var3
/* : nullable Object */;
8455 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8456 val
* var4
/* : nullable Object */;
8457 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8458 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8459 short int var5
/* : Bool */;
8462 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8463 short int var6
/* : Bool */;
8466 val
* var9
/* : ASlashExpr */;
8467 val
* var_pexprnode1
/* var pexprnode1: nullable ASlashExpr */;
8468 long var10
/* : Int */;
8469 long var11
/* : Int */;
8472 var_node_list
= var
;
8473 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8474 var_nodearraylist4
= var1
;
8475 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8476 var_nodearraylist3
= var2
;
8477 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8478 var_nodearraylist2
= var3
;
8479 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8480 var_nodearraylist1
= var4
;
8481 var_pexprnode2
= var_nodearraylist1
;
8482 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8483 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8484 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8485 if(var_pexprnode2
== NULL
) {
8488 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8491 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8495 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8496 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26888);
8499 var_pexprnode3
= var_nodearraylist4
;
8500 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8501 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
8502 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
8503 if(var_pexprnode3
== NULL
) {
8506 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
8509 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
8513 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8514 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26890);
8517 var9
= NEW_parser_nodes__ASlashExpr(&type_parser_nodes__ASlashExpr
);
8518 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ASlashExpr__init_aslashexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_aslashexpr on <var9:ASlashExpr>*/;
8519 var_pexprnode1
= var9
;
8520 var_node_list
= var_pexprnode1
;
8521 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction738> */
8522 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8523 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8526 /* method parser#ReduceAction738#action for (self: Object, Parser) */
8527 void VIRTUAL_parser__ReduceAction738__action(val
* self
, val
* p0
) {
8528 parser__ReduceAction738__action(self
, p0
);
8531 /* method parser#ReduceAction739#action for (self: ReduceAction739, Parser) */
8532 void parser__ReduceAction739__action(val
* self
, val
* p0
) {
8533 val
* var_p
/* var p: Parser */;
8534 val
* var
/* : null */;
8535 val
* var_node_list
/* var node_list: nullable Object */;
8536 val
* var1
/* : nullable Object */;
8537 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8538 val
* var2
/* : nullable Object */;
8539 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8540 val
* var3
/* : nullable Object */;
8541 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8542 val
* var4
/* : nullable Object */;
8543 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8544 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8545 short int var5
/* : Bool */;
8548 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8549 short int var6
/* : Bool */;
8552 val
* var9
/* : APercentExpr */;
8553 val
* var_pexprnode1
/* var pexprnode1: nullable APercentExpr */;
8554 long var10
/* : Int */;
8555 long var11
/* : Int */;
8558 var_node_list
= var
;
8559 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8560 var_nodearraylist4
= var1
;
8561 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8562 var_nodearraylist3
= var2
;
8563 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8564 var_nodearraylist2
= var3
;
8565 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8566 var_nodearraylist1
= var4
;
8567 var_pexprnode2
= var_nodearraylist1
;
8568 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8569 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8570 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8571 if(var_pexprnode2
== NULL
) {
8574 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8577 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8581 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8582 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26909);
8585 var_pexprnode3
= var_nodearraylist4
;
8586 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8587 cltype7
= type_nullable_parser_nodes__AExpr
.color
;
8588 idtype8
= type_nullable_parser_nodes__AExpr
.id
;
8589 if(var_pexprnode3
== NULL
) {
8592 if(cltype7
>= var_pexprnode3
->type
->table_size
) {
8595 var6
= var_pexprnode3
->type
->type_table
[cltype7
] == idtype8
;
8599 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8600 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26911);
8603 var9
= NEW_parser_nodes__APercentExpr(&type_parser_nodes__APercentExpr
);
8604 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__APercentExpr__init_apercentexpr
]))(var9
, var_pexprnode2
, var_pexprnode3
) /* init_apercentexpr on <var9:APercentExpr>*/;
8605 var_pexprnode1
= var9
;
8606 var_node_list
= var_pexprnode1
;
8607 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction739> */
8608 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
8609 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
8612 /* method parser#ReduceAction739#action for (self: Object, Parser) */
8613 void VIRTUAL_parser__ReduceAction739__action(val
* self
, val
* p0
) {
8614 parser__ReduceAction739__action(self
, p0
);
8617 /* method parser#ReduceAction741#action for (self: ReduceAction741, Parser) */
8618 void parser__ReduceAction741__action(val
* self
, val
* p0
) {
8619 val
* var_p
/* var p: Parser */;
8620 val
* var
/* : null */;
8621 val
* var_node_list
/* var node_list: nullable Object */;
8622 val
* var1
/* : nullable Object */;
8623 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8624 val
* var2
/* : nullable Object */;
8625 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8626 val
* var3
/* : nullable Object */;
8627 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8628 val
* var_tminusnode2
/* var tminusnode2: nullable Object */;
8629 short int var4
/* : Bool */;
8632 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8633 short int var5
/* : Bool */;
8636 val
* var8
/* : AUminusExpr */;
8637 val
* var_pexprnode1
/* var pexprnode1: nullable AUminusExpr */;
8638 long var9
/* : Int */;
8639 long var10
/* : Int */;
8642 var_node_list
= var
;
8643 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8644 var_nodearraylist3
= var1
;
8645 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8646 var_nodearraylist2
= var2
;
8647 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8648 var_nodearraylist1
= var3
;
8649 var_tminusnode2
= var_nodearraylist1
;
8650 /* <var_tminusnode2:nullable Object> isa nullable TMinus */
8651 cltype
= type_nullable_parser_nodes__TMinus
.color
;
8652 idtype
= type_nullable_parser_nodes__TMinus
.id
;
8653 if(var_tminusnode2
== NULL
) {
8656 if(cltype
>= var_tminusnode2
->type
->table_size
) {
8659 var4
= var_tminusnode2
->type
->type_table
[cltype
] == idtype
;
8663 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8664 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26929);
8667 var_pexprnode3
= var_nodearraylist3
;
8668 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8669 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
8670 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
8671 if(var_pexprnode3
== NULL
) {
8674 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
8677 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
8681 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8682 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26931);
8685 var8
= NEW_parser_nodes__AUminusExpr(&type_parser_nodes__AUminusExpr
);
8686 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AUminusExpr__init_auminusexpr
]))(var8
, var_tminusnode2
, var_pexprnode3
) /* init_auminusexpr on <var8:AUminusExpr>*/;
8687 var_pexprnode1
= var8
;
8688 var_node_list
= var_pexprnode1
;
8689 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction741> */
8690 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8691 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8694 /* method parser#ReduceAction741#action for (self: Object, Parser) */
8695 void VIRTUAL_parser__ReduceAction741__action(val
* self
, val
* p0
) {
8696 parser__ReduceAction741__action(self
, p0
);
8699 /* method parser#ReduceAction742#action for (self: ReduceAction742, Parser) */
8700 void parser__ReduceAction742__action(val
* self
, val
* p0
) {
8701 val
* var_p
/* var p: Parser */;
8702 val
* var
/* : null */;
8703 val
* var_node_list
/* var node_list: nullable Object */;
8704 val
* var1
/* : nullable Object */;
8705 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8706 val
* var2
/* : nullable Object */;
8707 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8708 val
* var3
/* : nullable Object */;
8709 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8710 val
* var_tkwoncenode2
/* var tkwoncenode2: nullable Object */;
8711 short int var4
/* : Bool */;
8714 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8715 short int var5
/* : Bool */;
8718 val
* var8
/* : AOnceExpr */;
8719 val
* var_pexprnode1
/* var pexprnode1: nullable AOnceExpr */;
8720 long var9
/* : Int */;
8721 long var10
/* : Int */;
8724 var_node_list
= var
;
8725 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8726 var_nodearraylist3
= var1
;
8727 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8728 var_nodearraylist2
= var2
;
8729 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8730 var_nodearraylist1
= var3
;
8731 var_tkwoncenode2
= var_nodearraylist1
;
8732 /* <var_tkwoncenode2:nullable Object> isa nullable TKwonce */
8733 cltype
= type_nullable_parser_nodes__TKwonce
.color
;
8734 idtype
= type_nullable_parser_nodes__TKwonce
.id
;
8735 if(var_tkwoncenode2
== NULL
) {
8738 if(cltype
>= var_tkwoncenode2
->type
->table_size
) {
8741 var4
= var_tkwoncenode2
->type
->type_table
[cltype
] == idtype
;
8745 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8746 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26949);
8749 var_pexprnode3
= var_nodearraylist3
;
8750 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8751 cltype6
= type_nullable_parser_nodes__AExpr
.color
;
8752 idtype7
= type_nullable_parser_nodes__AExpr
.id
;
8753 if(var_pexprnode3
== NULL
) {
8756 if(cltype6
>= var_pexprnode3
->type
->table_size
) {
8759 var5
= var_pexprnode3
->type
->type_table
[cltype6
] == idtype7
;
8763 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8764 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26951);
8767 var8
= NEW_parser_nodes__AOnceExpr(&type_parser_nodes__AOnceExpr
);
8768 ((void (*)(val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AOnceExpr__init_aonceexpr
]))(var8
, var_tkwoncenode2
, var_pexprnode3
) /* init_aonceexpr on <var8:AOnceExpr>*/;
8769 var_pexprnode1
= var8
;
8770 var_node_list
= var_pexprnode1
;
8771 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction742> */
8772 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8773 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8776 /* method parser#ReduceAction742#action for (self: Object, Parser) */
8777 void VIRTUAL_parser__ReduceAction742__action(val
* self
, val
* p0
) {
8778 parser__ReduceAction742__action(self
, p0
);
8781 /* method parser#ReduceAction744#action for (self: ReduceAction744, Parser) */
8782 void parser__ReduceAction744__action(val
* self
, val
* p0
) {
8783 val
* var_p
/* var p: Parser */;
8784 val
* var
/* : null */;
8785 val
* var_node_list
/* var node_list: nullable Object */;
8786 val
* var1
/* : nullable Object */;
8787 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8788 val
* var2
/* : nullable Object */;
8789 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8790 val
* var3
/* : nullable Object */;
8791 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8792 val
* var4
/* : nullable Object */;
8793 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8794 val
* var_tkwnewnode2
/* var tkwnewnode2: nullable Object */;
8795 short int var5
/* : Bool */;
8798 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
8799 short int var6
/* : Bool */;
8802 val
* var_pexprsnode5
/* var pexprsnode5: nullable Object */;
8803 short int var9
/* : Bool */;
8806 val
* var12
/* : ANewExpr */;
8807 val
* var13
/* : null */;
8808 val
* var_pexprnode1
/* var pexprnode1: nullable ANewExpr */;
8809 long var14
/* : Int */;
8810 long var15
/* : Int */;
8813 var_node_list
= var
;
8814 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8815 var_nodearraylist4
= var1
;
8816 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8817 var_nodearraylist3
= var2
;
8818 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8819 var_nodearraylist2
= var3
;
8820 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8821 var_nodearraylist1
= var4
;
8822 var_tkwnewnode2
= var_nodearraylist1
;
8823 /* <var_tkwnewnode2:nullable Object> isa nullable TKwnew */
8824 cltype
= type_nullable_parser_nodes__TKwnew
.color
;
8825 idtype
= type_nullable_parser_nodes__TKwnew
.id
;
8826 if(var_tkwnewnode2
== NULL
) {
8829 if(cltype
>= var_tkwnewnode2
->type
->table_size
) {
8832 var5
= var_tkwnewnode2
->type
->type_table
[cltype
] == idtype
;
8836 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8837 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26970);
8840 var_ptypenode3
= var_nodearraylist3
;
8841 /* <var_ptypenode3:nullable Object> isa nullable AType */
8842 cltype7
= type_nullable_parser_nodes__AType
.color
;
8843 idtype8
= type_nullable_parser_nodes__AType
.id
;
8844 if(var_ptypenode3
== NULL
) {
8847 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
8850 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
8854 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8855 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26972);
8858 var_pexprsnode5
= var_nodearraylist4
;
8859 /* <var_pexprsnode5:nullable Object> isa nullable AExprs */
8860 cltype10
= type_nullable_parser_nodes__AExprs
.color
;
8861 idtype11
= type_nullable_parser_nodes__AExprs
.id
;
8862 if(var_pexprsnode5
== NULL
) {
8865 if(cltype10
>= var_pexprsnode5
->type
->table_size
) {
8868 var9
= var_pexprsnode5
->type
->type_table
[cltype10
] == idtype11
;
8872 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8873 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26974);
8876 var12
= NEW_parser_nodes__ANewExpr(&type_parser_nodes__ANewExpr
);
8878 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__ANewExpr__init_anewexpr
]))(var12
, var_tkwnewnode2
, var_ptypenode3
, var13
, var_pexprsnode5
) /* init_anewexpr on <var12:ANewExpr>*/;
8879 var_pexprnode1
= var12
;
8880 var_node_list
= var_pexprnode1
;
8881 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction744> */
8882 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
8883 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
8886 /* method parser#ReduceAction744#action for (self: Object, Parser) */
8887 void VIRTUAL_parser__ReduceAction744__action(val
* self
, val
* p0
) {
8888 parser__ReduceAction744__action(self
, p0
);
8891 /* method parser#ReduceAction745#action for (self: ReduceAction745, Parser) */
8892 void parser__ReduceAction745__action(val
* self
, val
* p0
) {
8893 val
* var_p
/* var p: Parser */;
8894 val
* var
/* : null */;
8895 val
* var_node_list
/* var node_list: nullable Object */;
8896 val
* var1
/* : nullable Object */;
8897 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
8898 val
* var2
/* : nullable Object */;
8899 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8900 val
* var3
/* : nullable Object */;
8901 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8902 val
* var4
/* : nullable Object */;
8903 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8904 val
* var5
/* : nullable Object */;
8905 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8906 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
8907 short int var6
/* : Bool */;
8910 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8911 short int var7
/* : Bool */;
8914 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
8915 short int var10
/* : Bool */;
8918 val
* var13
/* : AIssetAttrExpr */;
8919 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
8920 long var14
/* : Int */;
8921 long var15
/* : Int */;
8924 var_node_list
= var
;
8925 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8926 var_nodearraylist5
= var1
;
8927 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8928 var_nodearraylist4
= var2
;
8929 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8930 var_nodearraylist3
= var3
;
8931 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8932 var_nodearraylist2
= var4
;
8933 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8934 var_nodearraylist1
= var5
;
8935 var_tkwissetnode2
= var_nodearraylist1
;
8936 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
8937 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
8938 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
8939 if(var_tkwissetnode2
== NULL
) {
8942 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
8945 var6
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
8949 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8950 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26996);
8953 var_pexprnode3
= var_nodearraylist2
;
8954 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8955 cltype8
= type_nullable_parser_nodes__AExpr
.color
;
8956 idtype9
= type_nullable_parser_nodes__AExpr
.id
;
8957 if(var_pexprnode3
== NULL
) {
8960 if(cltype8
>= var_pexprnode3
->type
->table_size
) {
8963 var7
= var_pexprnode3
->type
->type_table
[cltype8
] == idtype9
;
8967 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8968 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 26998);
8971 var_tattridnode4
= var_nodearraylist5
;
8972 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
8973 cltype11
= type_nullable_parser_nodes__TAttrid
.color
;
8974 idtype12
= type_nullable_parser_nodes__TAttrid
.id
;
8975 if(var_tattridnode4
== NULL
) {
8978 if(cltype11
>= var_tattridnode4
->type
->table_size
) {
8981 var10
= var_tattridnode4
->type
->type_table
[cltype11
] == idtype12
;
8985 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8986 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27000);
8989 var13
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
8990 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var13
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var13:AIssetAttrExpr>*/;
8991 var_pexprnode1
= var13
;
8992 var_node_list
= var_pexprnode1
;
8993 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction745> */
8994 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
8995 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
8998 /* method parser#ReduceAction745#action for (self: Object, Parser) */
8999 void VIRTUAL_parser__ReduceAction745__action(val
* self
, val
* p0
) {
9000 parser__ReduceAction745__action(self
, p0
);
9003 /* method parser#ReduceAction746#action for (self: ReduceAction746, Parser) */
9004 void parser__ReduceAction746__action(val
* self
, val
* p0
) {
9005 val
* var_p
/* var p: Parser */;
9006 val
* var
/* : null */;
9007 val
* var_node_list
/* var node_list: nullable Object */;
9008 val
* var1
/* : nullable Object */;
9009 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9010 val
* var2
/* : nullable Object */;
9011 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9012 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
9013 short int var3
/* : Bool */;
9016 val
* var4
/* : AImplicitSelfExpr */;
9017 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
9018 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
9019 short int var5
/* : Bool */;
9022 val
* var8
/* : AIssetAttrExpr */;
9023 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
9024 long var9
/* : Int */;
9025 long var10
/* : Int */;
9028 var_node_list
= var
;
9029 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9030 var_nodearraylist2
= var1
;
9031 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9032 var_nodearraylist1
= var2
;
9033 var_tkwissetnode2
= var_nodearraylist1
;
9034 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
9035 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
9036 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
9037 if(var_tkwissetnode2
== NULL
) {
9040 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
9043 var3
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
9047 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9048 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27018);
9051 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9052 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
9053 var_pexprnode3
= var4
;
9054 var_tattridnode4
= var_nodearraylist2
;
9055 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
9056 cltype6
= type_nullable_parser_nodes__TAttrid
.color
;
9057 idtype7
= type_nullable_parser_nodes__TAttrid
.id
;
9058 if(var_tattridnode4
== NULL
) {
9061 if(cltype6
>= var_tattridnode4
->type
->table_size
) {
9064 var5
= var_tattridnode4
->type
->type_table
[cltype6
] == idtype7
;
9068 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9069 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27021);
9072 var8
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
9073 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var8
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var8:AIssetAttrExpr>*/;
9074 var_pexprnode1
= var8
;
9075 var_node_list
= var_pexprnode1
;
9076 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction746> */
9077 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
9078 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
9081 /* method parser#ReduceAction746#action for (self: Object, Parser) */
9082 void VIRTUAL_parser__ReduceAction746__action(val
* self
, val
* p0
) {
9083 parser__ReduceAction746__action(self
, p0
);
9086 /* method parser#ReduceAction747#action for (self: ReduceAction747, Parser) */
9087 void parser__ReduceAction747__action(val
* self
, val
* p0
) {
9088 val
* var_p
/* var p: Parser */;
9089 val
* var
/* : null */;
9090 val
* var_node_list
/* var node_list: nullable Object */;
9091 val
* var1
/* : nullable Object */;
9092 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9093 val
* var2
/* : nullable Object */;
9094 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9095 val
* var3
/* : nullable Object */;
9096 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9097 val
* var4
/* : nullable Object */;
9098 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9099 val
* var5
/* : nullable Object */;
9100 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9101 val
* var6
/* : nullable Object */;
9102 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9103 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
9104 short int var7
/* : Bool */;
9107 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9108 short int var8
/* : Bool */;
9111 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
9112 short int var11
/* : Bool */;
9115 val
* var14
/* : AIssetAttrExpr */;
9116 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
9117 long var15
/* : Int */;
9118 long var16
/* : Int */;
9121 var_node_list
= var
;
9122 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9123 var_nodearraylist6
= var1
;
9124 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9125 var_nodearraylist5
= var2
;
9126 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9127 var_nodearraylist4
= var3
;
9128 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9129 var_nodearraylist3
= var4
;
9130 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9131 var_nodearraylist2
= var5
;
9132 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9133 var_nodearraylist1
= var6
;
9134 var_tkwissetnode2
= var_nodearraylist1
;
9135 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
9136 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
9137 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
9138 if(var_tkwissetnode2
== NULL
) {
9141 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
9144 var7
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
9148 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9149 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27043);
9152 var_pexprnode3
= var_nodearraylist2
;
9153 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9154 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
9155 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
9156 if(var_pexprnode3
== NULL
) {
9159 if(cltype9
>= var_pexprnode3
->type
->table_size
) {
9162 var8
= var_pexprnode3
->type
->type_table
[cltype9
] == idtype10
;
9166 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9167 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27045);
9170 var_tattridnode4
= var_nodearraylist6
;
9171 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
9172 cltype12
= type_nullable_parser_nodes__TAttrid
.color
;
9173 idtype13
= type_nullable_parser_nodes__TAttrid
.id
;
9174 if(var_tattridnode4
== NULL
) {
9177 if(cltype12
>= var_tattridnode4
->type
->table_size
) {
9180 var11
= var_tattridnode4
->type
->type_table
[cltype12
] == idtype13
;
9184 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9185 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27047);
9188 var14
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
9189 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var14
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var14:AIssetAttrExpr>*/;
9190 var_pexprnode1
= var14
;
9191 var_node_list
= var_pexprnode1
;
9192 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction747> */
9193 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
9194 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
9197 /* method parser#ReduceAction747#action for (self: Object, Parser) */
9198 void VIRTUAL_parser__ReduceAction747__action(val
* self
, val
* p0
) {
9199 parser__ReduceAction747__action(self
, p0
);
9202 /* method parser#ReduceAction748#action for (self: ReduceAction748, Parser) */
9203 void parser__ReduceAction748__action(val
* self
, val
* p0
) {
9204 val
* var_p
/* var p: Parser */;
9205 val
* var
/* : null */;
9206 val
* var_node_list
/* var node_list: nullable Object */;
9207 val
* var1
/* : nullable Object */;
9208 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9209 val
* var2
/* : nullable Object */;
9210 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9211 val
* var3
/* : nullable Object */;
9212 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9213 val
* var4
/* : nullable Object */;
9214 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9215 val
* var5
/* : nullable Object */;
9216 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9217 val
* var6
/* : nullable Object */;
9218 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9219 val
* var7
/* : nullable Object */;
9220 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9221 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
9222 short int var8
/* : Bool */;
9225 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
9226 short int var9
/* : Bool */;
9229 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
9230 short int var12
/* : Bool */;
9233 val
* var15
/* : AIssetAttrExpr */;
9234 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
9235 long var16
/* : Int */;
9236 long var17
/* : Int */;
9239 var_node_list
= var
;
9240 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9241 var_nodearraylist7
= var1
;
9242 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9243 var_nodearraylist6
= var2
;
9244 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9245 var_nodearraylist5
= var3
;
9246 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9247 var_nodearraylist4
= var4
;
9248 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9249 var_nodearraylist3
= var5
;
9250 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9251 var_nodearraylist2
= var6
;
9252 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9253 var_nodearraylist1
= var7
;
9254 var_tkwissetnode2
= var_nodearraylist1
;
9255 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
9256 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
9257 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
9258 if(var_tkwissetnode2
== NULL
) {
9261 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
9264 var8
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
9268 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9269 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27070);
9272 var_pexprnode3
= var_nodearraylist2
;
9273 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
9274 cltype10
= type_nullable_parser_nodes__AExpr
.color
;
9275 idtype11
= type_nullable_parser_nodes__AExpr
.id
;
9276 if(var_pexprnode3
== NULL
) {
9279 if(cltype10
>= var_pexprnode3
->type
->table_size
) {
9282 var9
= var_pexprnode3
->type
->type_table
[cltype10
] == idtype11
;
9286 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9287 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27072);
9290 var_tattridnode4
= var_nodearraylist7
;
9291 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
9292 cltype13
= type_nullable_parser_nodes__TAttrid
.color
;
9293 idtype14
= type_nullable_parser_nodes__TAttrid
.id
;
9294 if(var_tattridnode4
== NULL
) {
9297 if(cltype13
>= var_tattridnode4
->type
->table_size
) {
9300 var12
= var_tattridnode4
->type
->type_table
[cltype13
] == idtype14
;
9304 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9305 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27074);
9308 var15
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
9309 ((void (*)(val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var15
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var15:AIssetAttrExpr>*/;
9310 var_pexprnode1
= var15
;
9311 var_node_list
= var_pexprnode1
;
9312 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction748> */
9313 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
9314 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
9317 /* method parser#ReduceAction748#action for (self: Object, Parser) */
9318 void VIRTUAL_parser__ReduceAction748__action(val
* self
, val
* p0
) {
9319 parser__ReduceAction748__action(self
, p0
);
9322 /* method parser#ReduceAction750#action for (self: ReduceAction750, Parser) */
9323 void parser__ReduceAction750__action(val
* self
, val
* p0
) {
9324 val
* var_p
/* var p: Parser */;
9325 val
* var
/* : null */;
9326 val
* var_node_list
/* var node_list: nullable Object */;
9327 val
* var1
/* : nullable Object */;
9328 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9329 val
* var2
/* : nullable Object */;
9330 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9331 val
* var3
/* : nullable Object */;
9332 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9333 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
9334 short int var4
/* : Bool */;
9337 val
* var5
/* : AImplicitSelfExpr */;
9338 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
9339 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
9340 short int var6
/* : Bool */;
9343 val
* var9
/* : AIssetAttrExpr */;
9344 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
9345 long var10
/* : Int */;
9346 long var11
/* : Int */;
9349 var_node_list
= var
;
9350 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9351 var_nodearraylist3
= var1
;
9352 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9353 var_nodearraylist2
= var2
;
9354 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9355 var_nodearraylist1
= var3
;
9356 var_tkwissetnode2
= var_nodearraylist1
;
9357 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
9358 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
9359 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
9360 if(var_tkwissetnode2
== NULL
) {
9363 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
9366 var4
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
9370 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9371 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27093);
9374 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9375 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
9376 var_pexprnode3
= var5
;
9377 var_tattridnode4
= var_nodearraylist3
;
9378 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
9379 cltype7
= type_nullable_parser_nodes__TAttrid
.color
;
9380 idtype8
= type_nullable_parser_nodes__TAttrid
.id
;
9381 if(var_tattridnode4
== NULL
) {
9384 if(cltype7
>= var_tattridnode4
->type
->table_size
) {
9387 var6
= var_tattridnode4
->type
->type_table
[cltype7
] == idtype8
;
9391 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9392 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27096);
9395 var9
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
9396 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var9
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var9:AIssetAttrExpr>*/;
9397 var_pexprnode1
= var9
;
9398 var_node_list
= var_pexprnode1
;
9399 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction750> */
9400 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
9401 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
9404 /* method parser#ReduceAction750#action for (self: Object, Parser) */
9405 void VIRTUAL_parser__ReduceAction750__action(val
* self
, val
* p0
) {
9406 parser__ReduceAction750__action(self
, p0
);
9409 /* method parser#ReduceAction751#action for (self: ReduceAction751, Parser) */
9410 void parser__ReduceAction751__action(val
* self
, val
* p0
) {
9411 val
* var_p
/* var p: Parser */;
9412 val
* var
/* : null */;
9413 val
* var_node_list
/* var node_list: nullable Object */;
9414 val
* var1
/* : nullable Object */;
9415 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9416 val
* var2
/* : nullable Object */;
9417 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9418 val
* var3
/* : nullable Object */;
9419 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9420 val
* var4
/* : nullable Object */;
9421 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9422 val
* var_tkwissetnode2
/* var tkwissetnode2: nullable Object */;
9423 short int var5
/* : Bool */;
9426 val
* var6
/* : AImplicitSelfExpr */;
9427 val
* var_pexprnode3
/* var pexprnode3: nullable AImplicitSelfExpr */;
9428 val
* var_tattridnode4
/* var tattridnode4: nullable Object */;
9429 short int var7
/* : Bool */;
9432 val
* var10
/* : AIssetAttrExpr */;
9433 val
* var_pexprnode1
/* var pexprnode1: nullable AIssetAttrExpr */;
9434 long var11
/* : Int */;
9435 long var12
/* : Int */;
9438 var_node_list
= var
;
9439 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9440 var_nodearraylist4
= var1
;
9441 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9442 var_nodearraylist3
= var2
;
9443 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9444 var_nodearraylist2
= var3
;
9445 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9446 var_nodearraylist1
= var4
;
9447 var_tkwissetnode2
= var_nodearraylist1
;
9448 /* <var_tkwissetnode2:nullable Object> isa nullable TKwisset */
9449 cltype
= type_nullable_parser_nodes__TKwisset
.color
;
9450 idtype
= type_nullable_parser_nodes__TKwisset
.id
;
9451 if(var_tkwissetnode2
== NULL
) {
9454 if(cltype
>= var_tkwissetnode2
->type
->table_size
) {
9457 var5
= var_tkwissetnode2
->type
->type_table
[cltype
] == idtype
;
9461 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9462 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27116);
9465 var6
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9466 ((void (*)(val
*))(var6
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var6
) /* init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/;
9467 var_pexprnode3
= var6
;
9468 var_tattridnode4
= var_nodearraylist4
;
9469 /* <var_tattridnode4:nullable Object> isa nullable TAttrid */
9470 cltype8
= type_nullable_parser_nodes__TAttrid
.color
;
9471 idtype9
= type_nullable_parser_nodes__TAttrid
.id
;
9472 if(var_tattridnode4
== NULL
) {
9475 if(cltype8
>= var_tattridnode4
->type
->table_size
) {
9478 var7
= var_tattridnode4
->type
->type_table
[cltype8
] == idtype9
;
9482 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9483 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27119);
9486 var10
= NEW_parser_nodes__AIssetAttrExpr(&type_parser_nodes__AIssetAttrExpr
);
9487 ((void (*)(val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AIssetAttrExpr__init_aissetattrexpr
]))(var10
, var_tkwissetnode2
, var_pexprnode3
, var_tattridnode4
) /* init_aissetattrexpr on <var10:AIssetAttrExpr>*/;
9488 var_pexprnode1
= var10
;
9489 var_node_list
= var_pexprnode1
;
9490 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction751> */
9491 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
9492 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
9495 /* method parser#ReduceAction751#action for (self: Object, Parser) */
9496 void VIRTUAL_parser__ReduceAction751__action(val
* self
, val
* p0
) {
9497 parser__ReduceAction751__action(self
, p0
);
9500 /* method parser#ReduceAction753#action for (self: ReduceAction753, Parser) */
9501 void parser__ReduceAction753__action(val
* self
, val
* p0
) {
9502 val
* var_p
/* var p: Parser */;
9503 val
* var
/* : null */;
9504 val
* var_node_list
/* var node_list: nullable Object */;
9505 val
* var1
/* : nullable Object */;
9506 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9507 val
* var2
/* : nullable Object */;
9508 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9509 val
* var3
/* : nullable Object */;
9510 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9511 val
* var4
/* : nullable Object */;
9512 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9513 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9514 short int var5
/* : Bool */;
9517 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
9518 short int var6
/* : Bool */;
9521 val
* var9
/* : AAttrExpr */;
9522 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
9523 long var10
/* : Int */;
9524 long var11
/* : Int */;
9527 var_node_list
= var
;
9528 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9529 var_nodearraylist4
= var1
;
9530 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9531 var_nodearraylist3
= var2
;
9532 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9533 var_nodearraylist2
= var3
;
9534 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9535 var_nodearraylist1
= var4
;
9536 var_pexprnode2
= var_nodearraylist1
;
9537 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9538 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9539 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9540 if(var_pexprnode2
== NULL
) {
9543 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9546 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9550 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9551 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27139);
9554 var_tattridnode3
= var_nodearraylist4
;
9555 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
9556 cltype7
= type_nullable_parser_nodes__TAttrid
.color
;
9557 idtype8
= type_nullable_parser_nodes__TAttrid
.id
;
9558 if(var_tattridnode3
== NULL
) {
9561 if(cltype7
>= var_tattridnode3
->type
->table_size
) {
9564 var6
= var_tattridnode3
->type
->type_table
[cltype7
] == idtype8
;
9568 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9569 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27141);
9572 var9
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
9573 ((void (*)(val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var9
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var9:AAttrExpr>*/;
9574 var_pexprnode1
= var9
;
9575 var_node_list
= var_pexprnode1
;
9576 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction753> */
9577 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
9578 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
9581 /* method parser#ReduceAction753#action for (self: Object, Parser) */
9582 void VIRTUAL_parser__ReduceAction753__action(val
* self
, val
* p0
) {
9583 parser__ReduceAction753__action(self
, p0
);
9586 /* method parser#ReduceAction754#action for (self: ReduceAction754, Parser) */
9587 void parser__ReduceAction754__action(val
* self
, val
* p0
) {
9588 val
* var_p
/* var p: Parser */;
9589 val
* var
/* : null */;
9590 val
* var_node_list
/* var node_list: nullable Object */;
9591 val
* var1
/* : nullable Object */;
9592 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9593 val
* var2
/* : AImplicitSelfExpr */;
9594 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9595 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
9596 short int var3
/* : Bool */;
9599 val
* var4
/* : AAttrExpr */;
9600 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
9601 long var5
/* : Int */;
9602 long var6
/* : Int */;
9605 var_node_list
= var
;
9606 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9607 var_nodearraylist1
= var1
;
9608 var2
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9609 ((void (*)(val
*))(var2
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var2
) /* init_aimplicitselfexpr on <var2:AImplicitSelfExpr>*/;
9610 var_pexprnode2
= var2
;
9611 var_tattridnode3
= var_nodearraylist1
;
9612 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
9613 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
9614 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
9615 if(var_tattridnode3
== NULL
) {
9618 if(cltype
>= var_tattridnode3
->type
->table_size
) {
9621 var3
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
9625 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9626 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27158);
9629 var4
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
9630 ((void (*)(val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var4
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var4:AAttrExpr>*/;
9631 var_pexprnode1
= var4
;
9632 var_node_list
= var_pexprnode1
;
9633 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction754> */
9634 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
9635 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
9638 /* method parser#ReduceAction754#action for (self: Object, Parser) */
9639 void VIRTUAL_parser__ReduceAction754__action(val
* self
, val
* p0
) {
9640 parser__ReduceAction754__action(self
, p0
);
9643 /* method parser#ReduceAction755#action for (self: ReduceAction755, Parser) */
9644 void parser__ReduceAction755__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_nodearraylist5
/* var nodearraylist5: nullable Object */;
9650 val
* var2
/* : nullable Object */;
9651 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9652 val
* var3
/* : nullable Object */;
9653 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9654 val
* var4
/* : nullable Object */;
9655 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9656 val
* var5
/* : nullable Object */;
9657 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9658 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9659 short int var6
/* : Bool */;
9662 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
9663 short int var7
/* : Bool */;
9666 val
* var10
/* : AAttrExpr */;
9667 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
9668 long var11
/* : Int */;
9669 long var12
/* : Int */;
9672 var_node_list
= var
;
9673 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9674 var_nodearraylist5
= var1
;
9675 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9676 var_nodearraylist4
= var2
;
9677 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9678 var_nodearraylist3
= var3
;
9679 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9680 var_nodearraylist2
= var4
;
9681 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9682 var_nodearraylist1
= var5
;
9683 var_pexprnode2
= var_nodearraylist1
;
9684 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9685 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9686 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9687 if(var_pexprnode2
== NULL
) {
9690 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9693 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9697 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9698 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27178);
9701 var_tattridnode3
= var_nodearraylist5
;
9702 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
9703 cltype8
= type_nullable_parser_nodes__TAttrid
.color
;
9704 idtype9
= type_nullable_parser_nodes__TAttrid
.id
;
9705 if(var_tattridnode3
== NULL
) {
9708 if(cltype8
>= var_tattridnode3
->type
->table_size
) {
9711 var7
= var_tattridnode3
->type
->type_table
[cltype8
] == idtype9
;
9715 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9716 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27180);
9719 var10
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
9720 ((void (*)(val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var10
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var10:AAttrExpr>*/;
9721 var_pexprnode1
= var10
;
9722 var_node_list
= var_pexprnode1
;
9723 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction755> */
9724 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
9725 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
9728 /* method parser#ReduceAction755#action for (self: Object, Parser) */
9729 void VIRTUAL_parser__ReduceAction755__action(val
* self
, val
* p0
) {
9730 parser__ReduceAction755__action(self
, p0
);
9733 /* method parser#ReduceAction756#action for (self: ReduceAction756, Parser) */
9734 void parser__ReduceAction756__action(val
* self
, val
* p0
) {
9735 val
* var_p
/* var p: Parser */;
9736 val
* var
/* : null */;
9737 val
* var_node_list
/* var node_list: nullable Object */;
9738 val
* var1
/* : nullable Object */;
9739 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9740 val
* var2
/* : nullable Object */;
9741 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9742 val
* var3
/* : nullable Object */;
9743 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9744 val
* var4
/* : nullable Object */;
9745 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9746 val
* var5
/* : nullable Object */;
9747 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9748 val
* var6
/* : nullable Object */;
9749 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9750 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9751 short int var7
/* : Bool */;
9754 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
9755 short int var8
/* : Bool */;
9758 val
* var11
/* : AAttrExpr */;
9759 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
9760 long var12
/* : Int */;
9761 long var13
/* : Int */;
9764 var_node_list
= var
;
9765 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9766 var_nodearraylist6
= var1
;
9767 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9768 var_nodearraylist5
= var2
;
9769 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9770 var_nodearraylist4
= var3
;
9771 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9772 var_nodearraylist3
= var4
;
9773 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9774 var_nodearraylist2
= var5
;
9775 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9776 var_nodearraylist1
= var6
;
9777 var_pexprnode2
= var_nodearraylist1
;
9778 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9779 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9780 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9781 if(var_pexprnode2
== NULL
) {
9784 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9787 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9791 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9792 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27201);
9795 var_tattridnode3
= var_nodearraylist6
;
9796 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
9797 cltype9
= type_nullable_parser_nodes__TAttrid
.color
;
9798 idtype10
= type_nullable_parser_nodes__TAttrid
.id
;
9799 if(var_tattridnode3
== NULL
) {
9802 if(cltype9
>= var_tattridnode3
->type
->table_size
) {
9805 var8
= var_tattridnode3
->type
->type_table
[cltype9
] == idtype10
;
9809 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9810 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27203);
9813 var11
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
9814 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var11
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var11:AAttrExpr>*/;
9815 var_pexprnode1
= var11
;
9816 var_node_list
= var_pexprnode1
;
9817 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction756> */
9818 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
9819 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
9822 /* method parser#ReduceAction756#action for (self: Object, Parser) */
9823 void VIRTUAL_parser__ReduceAction756__action(val
* self
, val
* p0
) {
9824 parser__ReduceAction756__action(self
, p0
);
9827 /* method parser#ReduceAction758#action for (self: ReduceAction758, Parser) */
9828 void parser__ReduceAction758__action(val
* self
, val
* p0
) {
9829 val
* var_p
/* var p: Parser */;
9830 val
* var
/* : null */;
9831 val
* var_node_list
/* var node_list: nullable Object */;
9832 val
* var1
/* : nullable Object */;
9833 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9834 val
* var2
/* : nullable Object */;
9835 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9836 val
* var3
/* : AImplicitSelfExpr */;
9837 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9838 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
9839 short int var4
/* : Bool */;
9842 val
* var5
/* : AAttrExpr */;
9843 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
9844 long var6
/* : Int */;
9845 long var7
/* : Int */;
9848 var_node_list
= var
;
9849 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9850 var_nodearraylist2
= var1
;
9851 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9852 var_nodearraylist1
= var2
;
9853 var3
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9854 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var3
) /* init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/;
9855 var_pexprnode2
= var3
;
9856 var_tattridnode3
= var_nodearraylist2
;
9857 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
9858 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
9859 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
9860 if(var_tattridnode3
== NULL
) {
9863 if(cltype
>= var_tattridnode3
->type
->table_size
) {
9866 var4
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
9870 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9871 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27221);
9874 var5
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
9875 ((void (*)(val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var5
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var5:AAttrExpr>*/;
9876 var_pexprnode1
= var5
;
9877 var_node_list
= var_pexprnode1
;
9878 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction758> */
9879 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
9880 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
9883 /* method parser#ReduceAction758#action for (self: Object, Parser) */
9884 void VIRTUAL_parser__ReduceAction758__action(val
* self
, val
* p0
) {
9885 parser__ReduceAction758__action(self
, p0
);
9888 /* method parser#ReduceAction759#action for (self: ReduceAction759, Parser) */
9889 void parser__ReduceAction759__action(val
* self
, val
* p0
) {
9890 val
* var_p
/* var p: Parser */;
9891 val
* var
/* : null */;
9892 val
* var_node_list
/* var node_list: nullable Object */;
9893 val
* var1
/* : nullable Object */;
9894 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9895 val
* var2
/* : nullable Object */;
9896 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9897 val
* var3
/* : nullable Object */;
9898 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9899 val
* var4
/* : AImplicitSelfExpr */;
9900 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9901 val
* var_tattridnode3
/* var tattridnode3: nullable Object */;
9902 short int var5
/* : Bool */;
9905 val
* var6
/* : AAttrExpr */;
9906 val
* var_pexprnode1
/* var pexprnode1: nullable AAttrExpr */;
9907 long var7
/* : Int */;
9908 long var8
/* : Int */;
9911 var_node_list
= var
;
9912 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9913 var_nodearraylist3
= var1
;
9914 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9915 var_nodearraylist2
= var2
;
9916 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9917 var_nodearraylist1
= var3
;
9918 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9919 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
9920 var_pexprnode2
= var4
;
9921 var_tattridnode3
= var_nodearraylist3
;
9922 /* <var_tattridnode3:nullable Object> isa nullable TAttrid */
9923 cltype
= type_nullable_parser_nodes__TAttrid
.color
;
9924 idtype
= type_nullable_parser_nodes__TAttrid
.id
;
9925 if(var_tattridnode3
== NULL
) {
9928 if(cltype
>= var_tattridnode3
->type
->table_size
) {
9931 var5
= var_tattridnode3
->type
->type_table
[cltype
] == idtype
;
9935 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9936 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 27240);
9939 var6
= NEW_parser_nodes__AAttrExpr(&type_parser_nodes__AAttrExpr
);
9940 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AAttrExpr__init_aattrexpr
]))(var6
, var_pexprnode2
, var_tattridnode3
) /* init_aattrexpr on <var6:AAttrExpr>*/;
9941 var_pexprnode1
= var6
;
9942 var_node_list
= var_pexprnode1
;
9943 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction759> */
9944 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
9945 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
9948 /* method parser#ReduceAction759#action for (self: Object, Parser) */
9949 void VIRTUAL_parser__ReduceAction759__action(val
* self
, val
* p0
) {
9950 parser__ReduceAction759__action(self
, p0
);