1 #include "parser.sep.0.h"
2 /* method parser#ReduceAction504#action for (self: ReduceAction504, Parser) */
3 void parser__ReduceAction504__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_nodearraylist8
/* var nodearraylist8: nullable Object */;
9 val
* var2
/* : nullable Object */;
10 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
11 val
* var3
/* : nullable Object */;
12 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
13 val
* var4
/* : nullable Object */;
14 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
15 val
* var5
/* : nullable Object */;
16 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
17 val
* var6
/* : nullable Object */;
18 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
19 val
* var7
/* : nullable Object */;
20 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
21 val
* var8
/* : nullable Object */;
22 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
23 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
24 short int var9
/* : Bool */;
27 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
28 short int var10
/* : Bool */;
31 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
32 short int var13
/* : Bool */;
35 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
36 short int var16
/* : Bool */;
39 val
* var_pmethidnode6
/* var pmethidnode6: nullable Object */;
40 short int var19
/* : Bool */;
43 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
44 short int var22
/* : Bool */;
47 val
* var_tstringnode8
/* var tstringnode8: nullable Object */;
48 short int var25
/* : Bool */;
51 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
52 short int var28
/* : Bool */;
55 val
* var31
/* : AExternInitPropdef */;
56 val
* var32
/* : null */;
57 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
58 long var33
/* : Int */;
59 long var34
/* : Int */;
63 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
64 var_nodearraylist8
= var1
;
65 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
66 var_nodearraylist7
= var2
;
67 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
68 var_nodearraylist6
= var3
;
69 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
70 var_nodearraylist5
= var4
;
71 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
72 var_nodearraylist4
= var5
;
73 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
74 var_nodearraylist3
= var6
;
75 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
76 var_nodearraylist2
= var7
;
77 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
78 var_nodearraylist1
= var8
;
79 var_pdocnode2
= var_nodearraylist1
;
80 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
81 cltype
= type_nullable_parser_nodes__ADoc
.color
;
82 idtype
= type_nullable_parser_nodes__ADoc
.id
;
83 if(var_pdocnode2
== NULL
) {
86 if(cltype
>= var_pdocnode2
->type
->table_size
) {
89 var9
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
93 fprintf(stderr
, "Runtime error: %s", "Assert failed");
94 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22118);
97 var_tkwredefnode3
= var_nodearraylist2
;
98 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
99 cltype11
= type_nullable_parser_nodes__TKwredef
.color
;
100 idtype12
= type_nullable_parser_nodes__TKwredef
.id
;
101 if(var_tkwredefnode3
== NULL
) {
104 if(cltype11
>= var_tkwredefnode3
->type
->table_size
) {
107 var10
= var_tkwredefnode3
->type
->type_table
[cltype11
] == idtype12
;
111 fprintf(stderr
, "Runtime error: %s", "Assert failed");
112 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22120);
115 var_pvisibilitynode4
= var_nodearraylist3
;
116 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
117 cltype14
= type_nullable_parser_nodes__AVisibility
.color
;
118 idtype15
= type_nullable_parser_nodes__AVisibility
.id
;
119 if(var_pvisibilitynode4
== NULL
) {
122 if(cltype14
>= var_pvisibilitynode4
->type
->table_size
) {
125 var13
= var_pvisibilitynode4
->type
->type_table
[cltype14
] == idtype15
;
129 fprintf(stderr
, "Runtime error: %s", "Assert failed");
130 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22122);
133 var_tkwnewnode5
= var_nodearraylist4
;
134 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
135 cltype17
= type_nullable_parser_nodes__TKwnew
.color
;
136 idtype18
= type_nullable_parser_nodes__TKwnew
.id
;
137 if(var_tkwnewnode5
== NULL
) {
140 if(cltype17
>= var_tkwnewnode5
->type
->table_size
) {
143 var16
= var_tkwnewnode5
->type
->type_table
[cltype17
] == idtype18
;
147 fprintf(stderr
, "Runtime error: %s", "Assert failed");
148 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22124);
151 var_pmethidnode6
= var_nodearraylist5
;
152 /* <var_pmethidnode6:nullable Object> isa nullable AMethid */
153 cltype20
= type_nullable_parser_nodes__AMethid
.color
;
154 idtype21
= type_nullable_parser_nodes__AMethid
.id
;
155 if(var_pmethidnode6
== NULL
) {
158 if(cltype20
>= var_pmethidnode6
->type
->table_size
) {
161 var19
= var_pmethidnode6
->type
->type_table
[cltype20
] == idtype21
;
165 fprintf(stderr
, "Runtime error: %s", "Assert failed");
166 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22126);
169 var_psignaturenode7
= var_nodearraylist6
;
170 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
171 cltype23
= type_nullable_parser_nodes__ASignature
.color
;
172 idtype24
= type_nullable_parser_nodes__ASignature
.id
;
173 if(var_psignaturenode7
== NULL
) {
176 if(cltype23
>= var_psignaturenode7
->type
->table_size
) {
179 var22
= var_psignaturenode7
->type
->type_table
[cltype23
] == idtype24
;
183 fprintf(stderr
, "Runtime error: %s", "Assert failed");
184 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22128);
187 var_tstringnode8
= var_nodearraylist7
;
188 /* <var_tstringnode8:nullable Object> isa nullable TString */
189 cltype26
= type_nullable_parser_nodes__TString
.color
;
190 idtype27
= type_nullable_parser_nodes__TString
.id
;
191 if(var_tstringnode8
== NULL
) {
194 if(cltype26
>= var_tstringnode8
->type
->table_size
) {
197 var25
= var_tstringnode8
->type
->type_table
[cltype26
] == idtype27
;
201 fprintf(stderr
, "Runtime error: %s", "Assert failed");
202 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22130);
205 var_pexterncodeblocknode10
= var_nodearraylist8
;
206 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
207 cltype29
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
208 idtype30
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
209 if(var_pexterncodeblocknode10
== NULL
) {
212 if(cltype29
>= var_pexterncodeblocknode10
->type
->table_size
) {
215 var28
= var_pexterncodeblocknode10
->type
->type_table
[cltype29
] == idtype30
;
219 fprintf(stderr
, "Runtime error: %s", "Assert failed");
220 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22132);
223 var31
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
225 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var31
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var31
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwnewnode5
, var_pmethidnode6
, var_psignaturenode7
, var_tstringnode8
, var32
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var31:AExternInitPropdef>*/;
226 CHECK_NEW_parser_nodes__AExternInitPropdef(var31
);
227 var_ppropdefnode1
= var31
;
228 var_node_list
= var_ppropdefnode1
;
229 var33
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction504> */
230 var34
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var33
) /* go_to on <var_p:Parser>*/;
231 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var34
, var_node_list
) /* push on <var_p:Parser>*/;
234 /* method parser#ReduceAction504#action for (self: Object, Parser) */
235 void VIRTUAL_parser__ReduceAction504__action(val
* self
, val
* p0
) {
236 parser__ReduceAction504__action(self
, p0
);
239 /* method parser#ReduceAction505#action for (self: ReduceAction505, Parser) */
240 void parser__ReduceAction505__action(val
* self
, val
* p0
) {
241 val
* var_p
/* var p: Parser */;
242 val
* var
/* : null */;
243 val
* var_node_list
/* var node_list: nullable Object */;
244 val
* var1
/* : nullable Object */;
245 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
246 val
* var2
/* : nullable Object */;
247 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
248 val
* var3
/* : nullable Object */;
249 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
250 val
* var4
/* : nullable Object */;
251 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
252 val
* var5
/* : nullable Object */;
253 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
254 val
* var6
/* : nullable Object */;
255 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
256 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
257 short int var7
/* : Bool */;
260 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
261 short int var8
/* : Bool */;
264 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
265 short int var11
/* : Bool */;
268 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
269 short int var14
/* : Bool */;
272 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
273 short int var17
/* : Bool */;
276 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
277 short int var20
/* : Bool */;
280 val
* var23
/* : AExternInitPropdef */;
281 val
* var24
/* : null */;
282 val
* var25
/* : null */;
283 val
* var26
/* : null */;
284 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
285 long var27
/* : Int */;
286 long var28
/* : Int */;
290 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
291 var_nodearraylist6
= var1
;
292 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
293 var_nodearraylist5
= var2
;
294 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
295 var_nodearraylist4
= var3
;
296 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
297 var_nodearraylist3
= var4
;
298 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
299 var_nodearraylist2
= var5
;
300 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
301 var_nodearraylist1
= var6
;
302 var_pdocnode2
= var_nodearraylist1
;
303 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
304 cltype
= type_nullable_parser_nodes__ADoc
.color
;
305 idtype
= type_nullable_parser_nodes__ADoc
.id
;
306 if(var_pdocnode2
== NULL
) {
309 if(cltype
>= var_pdocnode2
->type
->table_size
) {
312 var7
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
316 fprintf(stderr
, "Runtime error: %s", "Assert failed");
317 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22160);
320 var_pvisibilitynode4
= var_nodearraylist2
;
321 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
322 cltype9
= type_nullable_parser_nodes__AVisibility
.color
;
323 idtype10
= type_nullable_parser_nodes__AVisibility
.id
;
324 if(var_pvisibilitynode4
== NULL
) {
327 if(cltype9
>= var_pvisibilitynode4
->type
->table_size
) {
330 var8
= var_pvisibilitynode4
->type
->type_table
[cltype9
] == idtype10
;
334 fprintf(stderr
, "Runtime error: %s", "Assert failed");
335 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22162);
338 var_tkwnewnode5
= var_nodearraylist3
;
339 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
340 cltype12
= type_nullable_parser_nodes__TKwnew
.color
;
341 idtype13
= type_nullable_parser_nodes__TKwnew
.id
;
342 if(var_tkwnewnode5
== NULL
) {
345 if(cltype12
>= var_tkwnewnode5
->type
->table_size
) {
348 var11
= var_tkwnewnode5
->type
->type_table
[cltype12
] == idtype13
;
352 fprintf(stderr
, "Runtime error: %s", "Assert failed");
353 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22164);
356 var_psignaturenode7
= var_nodearraylist4
;
357 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
358 cltype15
= type_nullable_parser_nodes__ASignature
.color
;
359 idtype16
= type_nullable_parser_nodes__ASignature
.id
;
360 if(var_psignaturenode7
== NULL
) {
363 if(cltype15
>= var_psignaturenode7
->type
->table_size
) {
366 var14
= var_psignaturenode7
->type
->type_table
[cltype15
] == idtype16
;
370 fprintf(stderr
, "Runtime error: %s", "Assert failed");
371 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22166);
374 var_pexterncallsnode9
= var_nodearraylist5
;
375 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
376 cltype18
= type_nullable_parser_nodes__AExternCalls
.color
;
377 idtype19
= type_nullable_parser_nodes__AExternCalls
.id
;
378 if(var_pexterncallsnode9
== NULL
) {
381 if(cltype18
>= var_pexterncallsnode9
->type
->table_size
) {
384 var17
= var_pexterncallsnode9
->type
->type_table
[cltype18
] == idtype19
;
388 fprintf(stderr
, "Runtime error: %s", "Assert failed");
389 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22168);
392 var_pexterncodeblocknode10
= var_nodearraylist6
;
393 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
394 cltype21
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
395 idtype22
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
396 if(var_pexterncodeblocknode10
== NULL
) {
399 if(cltype21
>= var_pexterncodeblocknode10
->type
->table_size
) {
402 var20
= var_pexterncodeblocknode10
->type
->type_table
[cltype21
] == idtype22
;
406 fprintf(stderr
, "Runtime error: %s", "Assert failed");
407 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22170);
410 var23
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
414 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var23
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var23
, var_pdocnode2
, var24
, var_pvisibilitynode4
, var_tkwnewnode5
, var25
, var_psignaturenode7
, var26
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var23:AExternInitPropdef>*/;
415 CHECK_NEW_parser_nodes__AExternInitPropdef(var23
);
416 var_ppropdefnode1
= var23
;
417 var_node_list
= var_ppropdefnode1
;
418 var27
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction505> */
419 var28
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var27
) /* go_to on <var_p:Parser>*/;
420 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var28
, var_node_list
) /* push on <var_p:Parser>*/;
423 /* method parser#ReduceAction505#action for (self: Object, Parser) */
424 void VIRTUAL_parser__ReduceAction505__action(val
* self
, val
* p0
) {
425 parser__ReduceAction505__action(self
, p0
);
428 /* method parser#ReduceAction506#action for (self: ReduceAction506, Parser) */
429 void parser__ReduceAction506__action(val
* self
, val
* p0
) {
430 val
* var_p
/* var p: Parser */;
431 val
* var
/* : null */;
432 val
* var_node_list
/* var node_list: nullable Object */;
433 val
* var1
/* : nullable Object */;
434 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
435 val
* var2
/* : nullable Object */;
436 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
437 val
* var3
/* : nullable Object */;
438 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
439 val
* var4
/* : nullable Object */;
440 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
441 val
* var5
/* : nullable Object */;
442 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
443 val
* var6
/* : nullable Object */;
444 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
445 val
* var7
/* : nullable Object */;
446 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
447 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
448 short int var8
/* : Bool */;
451 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
452 short int var9
/* : Bool */;
455 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
456 short int var12
/* : Bool */;
459 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
460 short int var15
/* : Bool */;
463 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
464 short int var18
/* : Bool */;
467 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
468 short int var21
/* : Bool */;
471 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
472 short int var24
/* : Bool */;
475 val
* var27
/* : AExternInitPropdef */;
476 val
* var28
/* : null */;
477 val
* var29
/* : null */;
478 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
479 long var30
/* : Int */;
480 long var31
/* : Int */;
484 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
485 var_nodearraylist7
= var1
;
486 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
487 var_nodearraylist6
= var2
;
488 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
489 var_nodearraylist5
= var3
;
490 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
491 var_nodearraylist4
= var4
;
492 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
493 var_nodearraylist3
= var5
;
494 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
495 var_nodearraylist2
= var6
;
496 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
497 var_nodearraylist1
= var7
;
498 var_pdocnode2
= var_nodearraylist1
;
499 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
500 cltype
= type_nullable_parser_nodes__ADoc
.color
;
501 idtype
= type_nullable_parser_nodes__ADoc
.id
;
502 if(var_pdocnode2
== NULL
) {
505 if(cltype
>= var_pdocnode2
->type
->table_size
) {
508 var8
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
512 fprintf(stderr
, "Runtime error: %s", "Assert failed");
513 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22199);
516 var_tkwredefnode3
= var_nodearraylist2
;
517 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
518 cltype10
= type_nullable_parser_nodes__TKwredef
.color
;
519 idtype11
= type_nullable_parser_nodes__TKwredef
.id
;
520 if(var_tkwredefnode3
== NULL
) {
523 if(cltype10
>= var_tkwredefnode3
->type
->table_size
) {
526 var9
= var_tkwredefnode3
->type
->type_table
[cltype10
] == idtype11
;
530 fprintf(stderr
, "Runtime error: %s", "Assert failed");
531 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22201);
534 var_pvisibilitynode4
= var_nodearraylist3
;
535 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
536 cltype13
= type_nullable_parser_nodes__AVisibility
.color
;
537 idtype14
= type_nullable_parser_nodes__AVisibility
.id
;
538 if(var_pvisibilitynode4
== NULL
) {
541 if(cltype13
>= var_pvisibilitynode4
->type
->table_size
) {
544 var12
= var_pvisibilitynode4
->type
->type_table
[cltype13
] == idtype14
;
548 fprintf(stderr
, "Runtime error: %s", "Assert failed");
549 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22203);
552 var_tkwnewnode5
= var_nodearraylist4
;
553 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
554 cltype16
= type_nullable_parser_nodes__TKwnew
.color
;
555 idtype17
= type_nullable_parser_nodes__TKwnew
.id
;
556 if(var_tkwnewnode5
== NULL
) {
559 if(cltype16
>= var_tkwnewnode5
->type
->table_size
) {
562 var15
= var_tkwnewnode5
->type
->type_table
[cltype16
] == idtype17
;
566 fprintf(stderr
, "Runtime error: %s", "Assert failed");
567 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22205);
570 var_psignaturenode7
= var_nodearraylist5
;
571 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
572 cltype19
= type_nullable_parser_nodes__ASignature
.color
;
573 idtype20
= type_nullable_parser_nodes__ASignature
.id
;
574 if(var_psignaturenode7
== NULL
) {
577 if(cltype19
>= var_psignaturenode7
->type
->table_size
) {
580 var18
= var_psignaturenode7
->type
->type_table
[cltype19
] == idtype20
;
584 fprintf(stderr
, "Runtime error: %s", "Assert failed");
585 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22207);
588 var_pexterncallsnode9
= var_nodearraylist6
;
589 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
590 cltype22
= type_nullable_parser_nodes__AExternCalls
.color
;
591 idtype23
= type_nullable_parser_nodes__AExternCalls
.id
;
592 if(var_pexterncallsnode9
== NULL
) {
595 if(cltype22
>= var_pexterncallsnode9
->type
->table_size
) {
598 var21
= var_pexterncallsnode9
->type
->type_table
[cltype22
] == idtype23
;
602 fprintf(stderr
, "Runtime error: %s", "Assert failed");
603 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22209);
606 var_pexterncodeblocknode10
= var_nodearraylist7
;
607 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
608 cltype25
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
609 idtype26
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
610 if(var_pexterncodeblocknode10
== NULL
) {
613 if(cltype25
>= var_pexterncodeblocknode10
->type
->table_size
) {
616 var24
= var_pexterncodeblocknode10
->type
->type_table
[cltype25
] == idtype26
;
620 fprintf(stderr
, "Runtime error: %s", "Assert failed");
621 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22211);
624 var27
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
627 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var27
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var27
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwnewnode5
, var28
, var_psignaturenode7
, var29
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var27:AExternInitPropdef>*/;
628 CHECK_NEW_parser_nodes__AExternInitPropdef(var27
);
629 var_ppropdefnode1
= var27
;
630 var_node_list
= var_ppropdefnode1
;
631 var30
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction506> */
632 var31
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var30
) /* go_to on <var_p:Parser>*/;
633 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var31
, var_node_list
) /* push on <var_p:Parser>*/;
636 /* method parser#ReduceAction506#action for (self: Object, Parser) */
637 void VIRTUAL_parser__ReduceAction506__action(val
* self
, val
* p0
) {
638 parser__ReduceAction506__action(self
, p0
);
641 /* method parser#ReduceAction507#action for (self: ReduceAction507, Parser) */
642 void parser__ReduceAction507__action(val
* self
, val
* p0
) {
643 val
* var_p
/* var p: Parser */;
644 val
* var
/* : null */;
645 val
* var_node_list
/* var node_list: nullable Object */;
646 val
* var1
/* : nullable Object */;
647 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
648 val
* var2
/* : nullable Object */;
649 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
650 val
* var3
/* : nullable Object */;
651 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
652 val
* var4
/* : nullable Object */;
653 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
654 val
* var5
/* : nullable Object */;
655 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
656 val
* var6
/* : nullable Object */;
657 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
658 val
* var7
/* : nullable Object */;
659 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
660 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
661 short int var8
/* : Bool */;
664 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
665 short int var9
/* : Bool */;
668 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
669 short int var12
/* : Bool */;
672 val
* var_pmethidnode6
/* var pmethidnode6: nullable Object */;
673 short int var15
/* : Bool */;
676 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
677 short int var18
/* : Bool */;
680 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
681 short int var21
/* : Bool */;
684 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
685 short int var24
/* : Bool */;
688 val
* var27
/* : AExternInitPropdef */;
689 val
* var28
/* : null */;
690 val
* var29
/* : null */;
691 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
692 long var30
/* : Int */;
693 long var31
/* : Int */;
697 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
698 var_nodearraylist7
= var1
;
699 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
700 var_nodearraylist6
= var2
;
701 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
702 var_nodearraylist5
= var3
;
703 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
704 var_nodearraylist4
= var4
;
705 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
706 var_nodearraylist3
= var5
;
707 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
708 var_nodearraylist2
= var6
;
709 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
710 var_nodearraylist1
= var7
;
711 var_pdocnode2
= var_nodearraylist1
;
712 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
713 cltype
= type_nullable_parser_nodes__ADoc
.color
;
714 idtype
= type_nullable_parser_nodes__ADoc
.id
;
715 if(var_pdocnode2
== NULL
) {
718 if(cltype
>= var_pdocnode2
->type
->table_size
) {
721 var8
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
725 fprintf(stderr
, "Runtime error: %s", "Assert failed");
726 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22240);
729 var_pvisibilitynode4
= var_nodearraylist2
;
730 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
731 cltype10
= type_nullable_parser_nodes__AVisibility
.color
;
732 idtype11
= type_nullable_parser_nodes__AVisibility
.id
;
733 if(var_pvisibilitynode4
== NULL
) {
736 if(cltype10
>= var_pvisibilitynode4
->type
->table_size
) {
739 var9
= var_pvisibilitynode4
->type
->type_table
[cltype10
] == idtype11
;
743 fprintf(stderr
, "Runtime error: %s", "Assert failed");
744 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22242);
747 var_tkwnewnode5
= var_nodearraylist3
;
748 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
749 cltype13
= type_nullable_parser_nodes__TKwnew
.color
;
750 idtype14
= type_nullable_parser_nodes__TKwnew
.id
;
751 if(var_tkwnewnode5
== NULL
) {
754 if(cltype13
>= var_tkwnewnode5
->type
->table_size
) {
757 var12
= var_tkwnewnode5
->type
->type_table
[cltype13
] == idtype14
;
761 fprintf(stderr
, "Runtime error: %s", "Assert failed");
762 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22244);
765 var_pmethidnode6
= var_nodearraylist4
;
766 /* <var_pmethidnode6:nullable Object> isa nullable AMethid */
767 cltype16
= type_nullable_parser_nodes__AMethid
.color
;
768 idtype17
= type_nullable_parser_nodes__AMethid
.id
;
769 if(var_pmethidnode6
== NULL
) {
772 if(cltype16
>= var_pmethidnode6
->type
->table_size
) {
775 var15
= var_pmethidnode6
->type
->type_table
[cltype16
] == idtype17
;
779 fprintf(stderr
, "Runtime error: %s", "Assert failed");
780 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22246);
783 var_psignaturenode7
= var_nodearraylist5
;
784 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
785 cltype19
= type_nullable_parser_nodes__ASignature
.color
;
786 idtype20
= type_nullable_parser_nodes__ASignature
.id
;
787 if(var_psignaturenode7
== NULL
) {
790 if(cltype19
>= var_psignaturenode7
->type
->table_size
) {
793 var18
= var_psignaturenode7
->type
->type_table
[cltype19
] == idtype20
;
797 fprintf(stderr
, "Runtime error: %s", "Assert failed");
798 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22248);
801 var_pexterncallsnode9
= var_nodearraylist6
;
802 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
803 cltype22
= type_nullable_parser_nodes__AExternCalls
.color
;
804 idtype23
= type_nullable_parser_nodes__AExternCalls
.id
;
805 if(var_pexterncallsnode9
== NULL
) {
808 if(cltype22
>= var_pexterncallsnode9
->type
->table_size
) {
811 var21
= var_pexterncallsnode9
->type
->type_table
[cltype22
] == idtype23
;
815 fprintf(stderr
, "Runtime error: %s", "Assert failed");
816 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22250);
819 var_pexterncodeblocknode10
= var_nodearraylist7
;
820 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
821 cltype25
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
822 idtype26
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
823 if(var_pexterncodeblocknode10
== NULL
) {
826 if(cltype25
>= var_pexterncodeblocknode10
->type
->table_size
) {
829 var24
= var_pexterncodeblocknode10
->type
->type_table
[cltype25
] == idtype26
;
833 fprintf(stderr
, "Runtime error: %s", "Assert failed");
834 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22252);
837 var27
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
840 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var27
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var27
, var_pdocnode2
, var28
, var_pvisibilitynode4
, var_tkwnewnode5
, var_pmethidnode6
, var_psignaturenode7
, var29
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var27:AExternInitPropdef>*/;
841 CHECK_NEW_parser_nodes__AExternInitPropdef(var27
);
842 var_ppropdefnode1
= var27
;
843 var_node_list
= var_ppropdefnode1
;
844 var30
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction507> */
845 var31
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var30
) /* go_to on <var_p:Parser>*/;
846 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var31
, var_node_list
) /* push on <var_p:Parser>*/;
849 /* method parser#ReduceAction507#action for (self: Object, Parser) */
850 void VIRTUAL_parser__ReduceAction507__action(val
* self
, val
* p0
) {
851 parser__ReduceAction507__action(self
, p0
);
854 /* method parser#ReduceAction508#action for (self: ReduceAction508, Parser) */
855 void parser__ReduceAction508__action(val
* self
, val
* p0
) {
856 val
* var_p
/* var p: Parser */;
857 val
* var
/* : null */;
858 val
* var_node_list
/* var node_list: nullable Object */;
859 val
* var1
/* : nullable Object */;
860 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
861 val
* var2
/* : nullable Object */;
862 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
863 val
* var3
/* : nullable Object */;
864 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
865 val
* var4
/* : nullable Object */;
866 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
867 val
* var5
/* : nullable Object */;
868 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
869 val
* var6
/* : nullable Object */;
870 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
871 val
* var7
/* : nullable Object */;
872 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
873 val
* var8
/* : nullable Object */;
874 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
875 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
876 short int var9
/* : Bool */;
879 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
880 short int var10
/* : Bool */;
883 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
884 short int var13
/* : Bool */;
887 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
888 short int var16
/* : Bool */;
891 val
* var_pmethidnode6
/* var pmethidnode6: nullable Object */;
892 short int var19
/* : Bool */;
895 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
896 short int var22
/* : Bool */;
899 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
900 short int var25
/* : Bool */;
903 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
904 short int var28
/* : Bool */;
907 val
* var31
/* : AExternInitPropdef */;
908 val
* var32
/* : null */;
909 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
910 long var33
/* : Int */;
911 long var34
/* : Int */;
915 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
916 var_nodearraylist8
= var1
;
917 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
918 var_nodearraylist7
= var2
;
919 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
920 var_nodearraylist6
= var3
;
921 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
922 var_nodearraylist5
= var4
;
923 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
924 var_nodearraylist4
= var5
;
925 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
926 var_nodearraylist3
= var6
;
927 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
928 var_nodearraylist2
= var7
;
929 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
930 var_nodearraylist1
= var8
;
931 var_pdocnode2
= var_nodearraylist1
;
932 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
933 cltype
= type_nullable_parser_nodes__ADoc
.color
;
934 idtype
= type_nullable_parser_nodes__ADoc
.id
;
935 if(var_pdocnode2
== NULL
) {
938 if(cltype
>= var_pdocnode2
->type
->table_size
) {
941 var9
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
945 fprintf(stderr
, "Runtime error: %s", "Assert failed");
946 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22282);
949 var_tkwredefnode3
= var_nodearraylist2
;
950 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
951 cltype11
= type_nullable_parser_nodes__TKwredef
.color
;
952 idtype12
= type_nullable_parser_nodes__TKwredef
.id
;
953 if(var_tkwredefnode3
== NULL
) {
956 if(cltype11
>= var_tkwredefnode3
->type
->table_size
) {
959 var10
= var_tkwredefnode3
->type
->type_table
[cltype11
] == idtype12
;
963 fprintf(stderr
, "Runtime error: %s", "Assert failed");
964 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22284);
967 var_pvisibilitynode4
= var_nodearraylist3
;
968 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
969 cltype14
= type_nullable_parser_nodes__AVisibility
.color
;
970 idtype15
= type_nullable_parser_nodes__AVisibility
.id
;
971 if(var_pvisibilitynode4
== NULL
) {
974 if(cltype14
>= var_pvisibilitynode4
->type
->table_size
) {
977 var13
= var_pvisibilitynode4
->type
->type_table
[cltype14
] == idtype15
;
981 fprintf(stderr
, "Runtime error: %s", "Assert failed");
982 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22286);
985 var_tkwnewnode5
= var_nodearraylist4
;
986 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
987 cltype17
= type_nullable_parser_nodes__TKwnew
.color
;
988 idtype18
= type_nullable_parser_nodes__TKwnew
.id
;
989 if(var_tkwnewnode5
== NULL
) {
992 if(cltype17
>= var_tkwnewnode5
->type
->table_size
) {
995 var16
= var_tkwnewnode5
->type
->type_table
[cltype17
] == idtype18
;
999 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1000 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22288);
1003 var_pmethidnode6
= var_nodearraylist5
;
1004 /* <var_pmethidnode6:nullable Object> isa nullable AMethid */
1005 cltype20
= type_nullable_parser_nodes__AMethid
.color
;
1006 idtype21
= type_nullable_parser_nodes__AMethid
.id
;
1007 if(var_pmethidnode6
== NULL
) {
1010 if(cltype20
>= var_pmethidnode6
->type
->table_size
) {
1013 var19
= var_pmethidnode6
->type
->type_table
[cltype20
] == idtype21
;
1017 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1018 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22290);
1021 var_psignaturenode7
= var_nodearraylist6
;
1022 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
1023 cltype23
= type_nullable_parser_nodes__ASignature
.color
;
1024 idtype24
= type_nullable_parser_nodes__ASignature
.id
;
1025 if(var_psignaturenode7
== NULL
) {
1028 if(cltype23
>= var_psignaturenode7
->type
->table_size
) {
1031 var22
= var_psignaturenode7
->type
->type_table
[cltype23
] == idtype24
;
1035 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1036 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22292);
1039 var_pexterncallsnode9
= var_nodearraylist7
;
1040 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
1041 cltype26
= type_nullable_parser_nodes__AExternCalls
.color
;
1042 idtype27
= type_nullable_parser_nodes__AExternCalls
.id
;
1043 if(var_pexterncallsnode9
== NULL
) {
1046 if(cltype26
>= var_pexterncallsnode9
->type
->table_size
) {
1049 var25
= var_pexterncallsnode9
->type
->type_table
[cltype26
] == idtype27
;
1053 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1054 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22294);
1057 var_pexterncodeblocknode10
= var_nodearraylist8
;
1058 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
1059 cltype29
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
1060 idtype30
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
1061 if(var_pexterncodeblocknode10
== NULL
) {
1064 if(cltype29
>= var_pexterncodeblocknode10
->type
->table_size
) {
1067 var28
= var_pexterncodeblocknode10
->type
->type_table
[cltype29
] == idtype30
;
1071 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1072 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22296);
1075 var31
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
1077 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var31
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var31
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwnewnode5
, var_pmethidnode6
, var_psignaturenode7
, var32
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var31:AExternInitPropdef>*/;
1078 CHECK_NEW_parser_nodes__AExternInitPropdef(var31
);
1079 var_ppropdefnode1
= var31
;
1080 var_node_list
= var_ppropdefnode1
;
1081 var33
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction508> */
1082 var34
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var33
) /* go_to on <var_p:Parser>*/;
1083 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var34
, var_node_list
) /* push on <var_p:Parser>*/;
1086 /* method parser#ReduceAction508#action for (self: Object, Parser) */
1087 void VIRTUAL_parser__ReduceAction508__action(val
* self
, val
* p0
) {
1088 parser__ReduceAction508__action(self
, p0
);
1091 /* method parser#ReduceAction509#action for (self: ReduceAction509, Parser) */
1092 void parser__ReduceAction509__action(val
* self
, val
* p0
) {
1093 val
* var_p
/* var p: Parser */;
1094 val
* var
/* : null */;
1095 val
* var_node_list
/* var node_list: nullable Object */;
1096 val
* var1
/* : nullable Object */;
1097 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1098 val
* var2
/* : nullable Object */;
1099 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1100 val
* var3
/* : nullable Object */;
1101 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1102 val
* var4
/* : nullable Object */;
1103 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1104 val
* var5
/* : nullable Object */;
1105 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1106 val
* var6
/* : nullable Object */;
1107 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1108 val
* var7
/* : nullable Object */;
1109 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1110 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
1111 short int var8
/* : Bool */;
1114 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
1115 short int var9
/* : Bool */;
1118 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
1119 short int var12
/* : Bool */;
1122 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
1123 short int var15
/* : Bool */;
1126 val
* var_tstringnode8
/* var tstringnode8: nullable Object */;
1127 short int var18
/* : Bool */;
1130 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
1131 short int var21
/* : Bool */;
1134 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
1135 short int var24
/* : Bool */;
1138 val
* var27
/* : AExternInitPropdef */;
1139 val
* var28
/* : null */;
1140 val
* var29
/* : null */;
1141 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
1142 long var30
/* : Int */;
1143 long var31
/* : Int */;
1146 var_node_list
= var
;
1147 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1148 var_nodearraylist7
= var1
;
1149 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1150 var_nodearraylist6
= var2
;
1151 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1152 var_nodearraylist5
= var3
;
1153 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1154 var_nodearraylist4
= var4
;
1155 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1156 var_nodearraylist3
= var5
;
1157 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1158 var_nodearraylist2
= var6
;
1159 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1160 var_nodearraylist1
= var7
;
1161 var_pdocnode2
= var_nodearraylist1
;
1162 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
1163 cltype
= type_nullable_parser_nodes__ADoc
.color
;
1164 idtype
= type_nullable_parser_nodes__ADoc
.id
;
1165 if(var_pdocnode2
== NULL
) {
1168 if(cltype
>= var_pdocnode2
->type
->table_size
) {
1171 var8
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
1175 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1176 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22325);
1179 var_pvisibilitynode4
= var_nodearraylist2
;
1180 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
1181 cltype10
= type_nullable_parser_nodes__AVisibility
.color
;
1182 idtype11
= type_nullable_parser_nodes__AVisibility
.id
;
1183 if(var_pvisibilitynode4
== NULL
) {
1186 if(cltype10
>= var_pvisibilitynode4
->type
->table_size
) {
1189 var9
= var_pvisibilitynode4
->type
->type_table
[cltype10
] == idtype11
;
1193 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1194 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22327);
1197 var_tkwnewnode5
= var_nodearraylist3
;
1198 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
1199 cltype13
= type_nullable_parser_nodes__TKwnew
.color
;
1200 idtype14
= type_nullable_parser_nodes__TKwnew
.id
;
1201 if(var_tkwnewnode5
== NULL
) {
1204 if(cltype13
>= var_tkwnewnode5
->type
->table_size
) {
1207 var12
= var_tkwnewnode5
->type
->type_table
[cltype13
] == idtype14
;
1211 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1212 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22329);
1215 var_psignaturenode7
= var_nodearraylist4
;
1216 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
1217 cltype16
= type_nullable_parser_nodes__ASignature
.color
;
1218 idtype17
= type_nullable_parser_nodes__ASignature
.id
;
1219 if(var_psignaturenode7
== NULL
) {
1222 if(cltype16
>= var_psignaturenode7
->type
->table_size
) {
1225 var15
= var_psignaturenode7
->type
->type_table
[cltype16
] == idtype17
;
1229 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1230 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22331);
1233 var_tstringnode8
= var_nodearraylist5
;
1234 /* <var_tstringnode8:nullable Object> isa nullable TString */
1235 cltype19
= type_nullable_parser_nodes__TString
.color
;
1236 idtype20
= type_nullable_parser_nodes__TString
.id
;
1237 if(var_tstringnode8
== NULL
) {
1240 if(cltype19
>= var_tstringnode8
->type
->table_size
) {
1243 var18
= var_tstringnode8
->type
->type_table
[cltype19
] == idtype20
;
1247 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1248 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22333);
1251 var_pexterncallsnode9
= var_nodearraylist6
;
1252 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
1253 cltype22
= type_nullable_parser_nodes__AExternCalls
.color
;
1254 idtype23
= type_nullable_parser_nodes__AExternCalls
.id
;
1255 if(var_pexterncallsnode9
== NULL
) {
1258 if(cltype22
>= var_pexterncallsnode9
->type
->table_size
) {
1261 var21
= var_pexterncallsnode9
->type
->type_table
[cltype22
] == idtype23
;
1265 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1266 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22335);
1269 var_pexterncodeblocknode10
= var_nodearraylist7
;
1270 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
1271 cltype25
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
1272 idtype26
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
1273 if(var_pexterncodeblocknode10
== NULL
) {
1276 if(cltype25
>= var_pexterncodeblocknode10
->type
->table_size
) {
1279 var24
= var_pexterncodeblocknode10
->type
->type_table
[cltype25
] == idtype26
;
1283 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1284 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22337);
1287 var27
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
1290 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var27
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var27
, var_pdocnode2
, var28
, var_pvisibilitynode4
, var_tkwnewnode5
, var29
, var_psignaturenode7
, var_tstringnode8
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var27:AExternInitPropdef>*/;
1291 CHECK_NEW_parser_nodes__AExternInitPropdef(var27
);
1292 var_ppropdefnode1
= var27
;
1293 var_node_list
= var_ppropdefnode1
;
1294 var30
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction509> */
1295 var31
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var30
) /* go_to on <var_p:Parser>*/;
1296 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var31
, var_node_list
) /* push on <var_p:Parser>*/;
1299 /* method parser#ReduceAction509#action for (self: Object, Parser) */
1300 void VIRTUAL_parser__ReduceAction509__action(val
* self
, val
* p0
) {
1301 parser__ReduceAction509__action(self
, p0
);
1304 /* method parser#ReduceAction510#action for (self: ReduceAction510, Parser) */
1305 void parser__ReduceAction510__action(val
* self
, val
* p0
) {
1306 val
* var_p
/* var p: Parser */;
1307 val
* var
/* : null */;
1308 val
* var_node_list
/* var node_list: nullable Object */;
1309 val
* var1
/* : nullable Object */;
1310 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
1311 val
* var2
/* : nullable Object */;
1312 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1313 val
* var3
/* : nullable Object */;
1314 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1315 val
* var4
/* : nullable Object */;
1316 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1317 val
* var5
/* : nullable Object */;
1318 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1319 val
* var6
/* : nullable Object */;
1320 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1321 val
* var7
/* : nullable Object */;
1322 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1323 val
* var8
/* : nullable Object */;
1324 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1325 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
1326 short int var9
/* : Bool */;
1329 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
1330 short int var10
/* : Bool */;
1333 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
1334 short int var13
/* : Bool */;
1337 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
1338 short int var16
/* : Bool */;
1341 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
1342 short int var19
/* : Bool */;
1345 val
* var_tstringnode8
/* var tstringnode8: nullable Object */;
1346 short int var22
/* : Bool */;
1349 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
1350 short int var25
/* : Bool */;
1353 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
1354 short int var28
/* : Bool */;
1357 val
* var31
/* : AExternInitPropdef */;
1358 val
* var32
/* : null */;
1359 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
1360 long var33
/* : Int */;
1361 long var34
/* : Int */;
1364 var_node_list
= var
;
1365 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1366 var_nodearraylist8
= var1
;
1367 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1368 var_nodearraylist7
= var2
;
1369 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1370 var_nodearraylist6
= var3
;
1371 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1372 var_nodearraylist5
= var4
;
1373 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1374 var_nodearraylist4
= var5
;
1375 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1376 var_nodearraylist3
= var6
;
1377 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1378 var_nodearraylist2
= var7
;
1379 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1380 var_nodearraylist1
= var8
;
1381 var_pdocnode2
= var_nodearraylist1
;
1382 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
1383 cltype
= type_nullable_parser_nodes__ADoc
.color
;
1384 idtype
= type_nullable_parser_nodes__ADoc
.id
;
1385 if(var_pdocnode2
== NULL
) {
1388 if(cltype
>= var_pdocnode2
->type
->table_size
) {
1391 var9
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
1395 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1396 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22367);
1399 var_tkwredefnode3
= var_nodearraylist2
;
1400 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
1401 cltype11
= type_nullable_parser_nodes__TKwredef
.color
;
1402 idtype12
= type_nullable_parser_nodes__TKwredef
.id
;
1403 if(var_tkwredefnode3
== NULL
) {
1406 if(cltype11
>= var_tkwredefnode3
->type
->table_size
) {
1409 var10
= var_tkwredefnode3
->type
->type_table
[cltype11
] == idtype12
;
1413 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1414 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22369);
1417 var_pvisibilitynode4
= var_nodearraylist3
;
1418 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
1419 cltype14
= type_nullable_parser_nodes__AVisibility
.color
;
1420 idtype15
= type_nullable_parser_nodes__AVisibility
.id
;
1421 if(var_pvisibilitynode4
== NULL
) {
1424 if(cltype14
>= var_pvisibilitynode4
->type
->table_size
) {
1427 var13
= var_pvisibilitynode4
->type
->type_table
[cltype14
] == idtype15
;
1431 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1432 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22371);
1435 var_tkwnewnode5
= var_nodearraylist4
;
1436 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
1437 cltype17
= type_nullable_parser_nodes__TKwnew
.color
;
1438 idtype18
= type_nullable_parser_nodes__TKwnew
.id
;
1439 if(var_tkwnewnode5
== NULL
) {
1442 if(cltype17
>= var_tkwnewnode5
->type
->table_size
) {
1445 var16
= var_tkwnewnode5
->type
->type_table
[cltype17
] == idtype18
;
1449 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1450 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22373);
1453 var_psignaturenode7
= var_nodearraylist5
;
1454 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
1455 cltype20
= type_nullable_parser_nodes__ASignature
.color
;
1456 idtype21
= type_nullable_parser_nodes__ASignature
.id
;
1457 if(var_psignaturenode7
== NULL
) {
1460 if(cltype20
>= var_psignaturenode7
->type
->table_size
) {
1463 var19
= var_psignaturenode7
->type
->type_table
[cltype20
] == idtype21
;
1467 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1468 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22375);
1471 var_tstringnode8
= var_nodearraylist6
;
1472 /* <var_tstringnode8:nullable Object> isa nullable TString */
1473 cltype23
= type_nullable_parser_nodes__TString
.color
;
1474 idtype24
= type_nullable_parser_nodes__TString
.id
;
1475 if(var_tstringnode8
== NULL
) {
1478 if(cltype23
>= var_tstringnode8
->type
->table_size
) {
1481 var22
= var_tstringnode8
->type
->type_table
[cltype23
] == idtype24
;
1485 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1486 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22377);
1489 var_pexterncallsnode9
= var_nodearraylist7
;
1490 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
1491 cltype26
= type_nullable_parser_nodes__AExternCalls
.color
;
1492 idtype27
= type_nullable_parser_nodes__AExternCalls
.id
;
1493 if(var_pexterncallsnode9
== NULL
) {
1496 if(cltype26
>= var_pexterncallsnode9
->type
->table_size
) {
1499 var25
= var_pexterncallsnode9
->type
->type_table
[cltype26
] == idtype27
;
1503 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1504 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22379);
1507 var_pexterncodeblocknode10
= var_nodearraylist8
;
1508 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
1509 cltype29
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
1510 idtype30
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
1511 if(var_pexterncodeblocknode10
== NULL
) {
1514 if(cltype29
>= var_pexterncodeblocknode10
->type
->table_size
) {
1517 var28
= var_pexterncodeblocknode10
->type
->type_table
[cltype29
] == idtype30
;
1521 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1522 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22381);
1525 var31
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
1527 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var31
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var31
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwnewnode5
, var32
, var_psignaturenode7
, var_tstringnode8
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var31:AExternInitPropdef>*/;
1528 CHECK_NEW_parser_nodes__AExternInitPropdef(var31
);
1529 var_ppropdefnode1
= var31
;
1530 var_node_list
= var_ppropdefnode1
;
1531 var33
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction510> */
1532 var34
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var33
) /* go_to on <var_p:Parser>*/;
1533 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var34
, var_node_list
) /* push on <var_p:Parser>*/;
1536 /* method parser#ReduceAction510#action for (self: Object, Parser) */
1537 void VIRTUAL_parser__ReduceAction510__action(val
* self
, val
* p0
) {
1538 parser__ReduceAction510__action(self
, p0
);
1541 /* method parser#ReduceAction511#action for (self: ReduceAction511, Parser) */
1542 void parser__ReduceAction511__action(val
* self
, val
* p0
) {
1543 val
* var_p
/* var p: Parser */;
1544 val
* var
/* : null */;
1545 val
* var_node_list
/* var node_list: nullable Object */;
1546 val
* var1
/* : nullable Object */;
1547 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
1548 val
* var2
/* : nullable Object */;
1549 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1550 val
* var3
/* : nullable Object */;
1551 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1552 val
* var4
/* : nullable Object */;
1553 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1554 val
* var5
/* : nullable Object */;
1555 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1556 val
* var6
/* : nullable Object */;
1557 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1558 val
* var7
/* : nullable Object */;
1559 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1560 val
* var8
/* : nullable Object */;
1561 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1562 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
1563 short int var9
/* : Bool */;
1566 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
1567 short int var10
/* : Bool */;
1570 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
1571 short int var13
/* : Bool */;
1574 val
* var_pmethidnode6
/* var pmethidnode6: nullable Object */;
1575 short int var16
/* : Bool */;
1578 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
1579 short int var19
/* : Bool */;
1582 val
* var_tstringnode8
/* var tstringnode8: nullable Object */;
1583 short int var22
/* : Bool */;
1586 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
1587 short int var25
/* : Bool */;
1590 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
1591 short int var28
/* : Bool */;
1594 val
* var31
/* : AExternInitPropdef */;
1595 val
* var32
/* : null */;
1596 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
1597 long var33
/* : Int */;
1598 long var34
/* : Int */;
1601 var_node_list
= var
;
1602 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1603 var_nodearraylist8
= var1
;
1604 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1605 var_nodearraylist7
= var2
;
1606 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1607 var_nodearraylist6
= var3
;
1608 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1609 var_nodearraylist5
= var4
;
1610 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1611 var_nodearraylist4
= var5
;
1612 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1613 var_nodearraylist3
= var6
;
1614 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1615 var_nodearraylist2
= var7
;
1616 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1617 var_nodearraylist1
= var8
;
1618 var_pdocnode2
= var_nodearraylist1
;
1619 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
1620 cltype
= type_nullable_parser_nodes__ADoc
.color
;
1621 idtype
= type_nullable_parser_nodes__ADoc
.id
;
1622 if(var_pdocnode2
== NULL
) {
1625 if(cltype
>= var_pdocnode2
->type
->table_size
) {
1628 var9
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
1632 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1633 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22411);
1636 var_pvisibilitynode4
= var_nodearraylist2
;
1637 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
1638 cltype11
= type_nullable_parser_nodes__AVisibility
.color
;
1639 idtype12
= type_nullable_parser_nodes__AVisibility
.id
;
1640 if(var_pvisibilitynode4
== NULL
) {
1643 if(cltype11
>= var_pvisibilitynode4
->type
->table_size
) {
1646 var10
= var_pvisibilitynode4
->type
->type_table
[cltype11
] == idtype12
;
1650 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1651 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22413);
1654 var_tkwnewnode5
= var_nodearraylist3
;
1655 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
1656 cltype14
= type_nullable_parser_nodes__TKwnew
.color
;
1657 idtype15
= type_nullable_parser_nodes__TKwnew
.id
;
1658 if(var_tkwnewnode5
== NULL
) {
1661 if(cltype14
>= var_tkwnewnode5
->type
->table_size
) {
1664 var13
= var_tkwnewnode5
->type
->type_table
[cltype14
] == idtype15
;
1668 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1669 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22415);
1672 var_pmethidnode6
= var_nodearraylist4
;
1673 /* <var_pmethidnode6:nullable Object> isa nullable AMethid */
1674 cltype17
= type_nullable_parser_nodes__AMethid
.color
;
1675 idtype18
= type_nullable_parser_nodes__AMethid
.id
;
1676 if(var_pmethidnode6
== NULL
) {
1679 if(cltype17
>= var_pmethidnode6
->type
->table_size
) {
1682 var16
= var_pmethidnode6
->type
->type_table
[cltype17
] == idtype18
;
1686 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1687 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22417);
1690 var_psignaturenode7
= var_nodearraylist5
;
1691 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
1692 cltype20
= type_nullable_parser_nodes__ASignature
.color
;
1693 idtype21
= type_nullable_parser_nodes__ASignature
.id
;
1694 if(var_psignaturenode7
== NULL
) {
1697 if(cltype20
>= var_psignaturenode7
->type
->table_size
) {
1700 var19
= var_psignaturenode7
->type
->type_table
[cltype20
] == idtype21
;
1704 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1705 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22419);
1708 var_tstringnode8
= var_nodearraylist6
;
1709 /* <var_tstringnode8:nullable Object> isa nullable TString */
1710 cltype23
= type_nullable_parser_nodes__TString
.color
;
1711 idtype24
= type_nullable_parser_nodes__TString
.id
;
1712 if(var_tstringnode8
== NULL
) {
1715 if(cltype23
>= var_tstringnode8
->type
->table_size
) {
1718 var22
= var_tstringnode8
->type
->type_table
[cltype23
] == idtype24
;
1722 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1723 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22421);
1726 var_pexterncallsnode9
= var_nodearraylist7
;
1727 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
1728 cltype26
= type_nullable_parser_nodes__AExternCalls
.color
;
1729 idtype27
= type_nullable_parser_nodes__AExternCalls
.id
;
1730 if(var_pexterncallsnode9
== NULL
) {
1733 if(cltype26
>= var_pexterncallsnode9
->type
->table_size
) {
1736 var25
= var_pexterncallsnode9
->type
->type_table
[cltype26
] == idtype27
;
1740 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1741 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22423);
1744 var_pexterncodeblocknode10
= var_nodearraylist8
;
1745 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
1746 cltype29
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
1747 idtype30
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
1748 if(var_pexterncodeblocknode10
== NULL
) {
1751 if(cltype29
>= var_pexterncodeblocknode10
->type
->table_size
) {
1754 var28
= var_pexterncodeblocknode10
->type
->type_table
[cltype29
] == idtype30
;
1758 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1759 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22425);
1762 var31
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
1764 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var31
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var31
, var_pdocnode2
, var32
, var_pvisibilitynode4
, var_tkwnewnode5
, var_pmethidnode6
, var_psignaturenode7
, var_tstringnode8
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var31:AExternInitPropdef>*/;
1765 CHECK_NEW_parser_nodes__AExternInitPropdef(var31
);
1766 var_ppropdefnode1
= var31
;
1767 var_node_list
= var_ppropdefnode1
;
1768 var33
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction511> */
1769 var34
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var33
) /* go_to on <var_p:Parser>*/;
1770 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var34
, var_node_list
) /* push on <var_p:Parser>*/;
1773 /* method parser#ReduceAction511#action for (self: Object, Parser) */
1774 void VIRTUAL_parser__ReduceAction511__action(val
* self
, val
* p0
) {
1775 parser__ReduceAction511__action(self
, p0
);
1778 /* method parser#ReduceAction512#action for (self: ReduceAction512, Parser) */
1779 void parser__ReduceAction512__action(val
* self
, val
* p0
) {
1780 val
* var_p
/* var p: Parser */;
1781 val
* var
/* : null */;
1782 val
* var_node_list
/* var node_list: nullable Object */;
1783 val
* var1
/* : nullable Object */;
1784 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
1785 val
* var2
/* : nullable Object */;
1786 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
1787 val
* var3
/* : nullable Object */;
1788 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
1789 val
* var4
/* : nullable Object */;
1790 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1791 val
* var5
/* : nullable Object */;
1792 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1793 val
* var6
/* : nullable Object */;
1794 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1795 val
* var7
/* : nullable Object */;
1796 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1797 val
* var8
/* : nullable Object */;
1798 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1799 val
* var9
/* : nullable Object */;
1800 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1801 val
* var_pdocnode2
/* var pdocnode2: nullable Object */;
1802 short int var10
/* : Bool */;
1805 val
* var_tkwredefnode3
/* var tkwredefnode3: nullable Object */;
1806 short int var11
/* : Bool */;
1809 val
* var_pvisibilitynode4
/* var pvisibilitynode4: nullable Object */;
1810 short int var14
/* : Bool */;
1813 val
* var_tkwnewnode5
/* var tkwnewnode5: nullable Object */;
1814 short int var17
/* : Bool */;
1817 val
* var_pmethidnode6
/* var pmethidnode6: nullable Object */;
1818 short int var20
/* : Bool */;
1821 val
* var_psignaturenode7
/* var psignaturenode7: nullable Object */;
1822 short int var23
/* : Bool */;
1825 val
* var_tstringnode8
/* var tstringnode8: nullable Object */;
1826 short int var26
/* : Bool */;
1829 val
* var_pexterncallsnode9
/* var pexterncallsnode9: nullable Object */;
1830 short int var29
/* : Bool */;
1833 val
* var_pexterncodeblocknode10
/* var pexterncodeblocknode10: nullable Object */;
1834 short int var32
/* : Bool */;
1837 val
* var35
/* : AExternInitPropdef */;
1838 val
* var_ppropdefnode1
/* var ppropdefnode1: nullable AExternInitPropdef */;
1839 long var36
/* : Int */;
1840 long var37
/* : Int */;
1843 var_node_list
= var
;
1844 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1845 var_nodearraylist9
= var1
;
1846 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1847 var_nodearraylist8
= var2
;
1848 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1849 var_nodearraylist7
= var3
;
1850 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1851 var_nodearraylist6
= var4
;
1852 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1853 var_nodearraylist5
= var5
;
1854 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1855 var_nodearraylist4
= var6
;
1856 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1857 var_nodearraylist3
= var7
;
1858 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1859 var_nodearraylist2
= var8
;
1860 var9
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
1861 var_nodearraylist1
= var9
;
1862 var_pdocnode2
= var_nodearraylist1
;
1863 /* <var_pdocnode2:nullable Object> isa nullable ADoc */
1864 cltype
= type_nullable_parser_nodes__ADoc
.color
;
1865 idtype
= type_nullable_parser_nodes__ADoc
.id
;
1866 if(var_pdocnode2
== NULL
) {
1869 if(cltype
>= var_pdocnode2
->type
->table_size
) {
1872 var10
= var_pdocnode2
->type
->type_table
[cltype
] == idtype
;
1876 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1877 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22456);
1880 var_tkwredefnode3
= var_nodearraylist2
;
1881 /* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
1882 cltype12
= type_nullable_parser_nodes__TKwredef
.color
;
1883 idtype13
= type_nullable_parser_nodes__TKwredef
.id
;
1884 if(var_tkwredefnode3
== NULL
) {
1887 if(cltype12
>= var_tkwredefnode3
->type
->table_size
) {
1890 var11
= var_tkwredefnode3
->type
->type_table
[cltype12
] == idtype13
;
1894 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1895 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22458);
1898 var_pvisibilitynode4
= var_nodearraylist3
;
1899 /* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
1900 cltype15
= type_nullable_parser_nodes__AVisibility
.color
;
1901 idtype16
= type_nullable_parser_nodes__AVisibility
.id
;
1902 if(var_pvisibilitynode4
== NULL
) {
1905 if(cltype15
>= var_pvisibilitynode4
->type
->table_size
) {
1908 var14
= var_pvisibilitynode4
->type
->type_table
[cltype15
] == idtype16
;
1912 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1913 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22460);
1916 var_tkwnewnode5
= var_nodearraylist4
;
1917 /* <var_tkwnewnode5:nullable Object> isa nullable TKwnew */
1918 cltype18
= type_nullable_parser_nodes__TKwnew
.color
;
1919 idtype19
= type_nullable_parser_nodes__TKwnew
.id
;
1920 if(var_tkwnewnode5
== NULL
) {
1923 if(cltype18
>= var_tkwnewnode5
->type
->table_size
) {
1926 var17
= var_tkwnewnode5
->type
->type_table
[cltype18
] == idtype19
;
1930 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1931 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22462);
1934 var_pmethidnode6
= var_nodearraylist5
;
1935 /* <var_pmethidnode6:nullable Object> isa nullable AMethid */
1936 cltype21
= type_nullable_parser_nodes__AMethid
.color
;
1937 idtype22
= type_nullable_parser_nodes__AMethid
.id
;
1938 if(var_pmethidnode6
== NULL
) {
1941 if(cltype21
>= var_pmethidnode6
->type
->table_size
) {
1944 var20
= var_pmethidnode6
->type
->type_table
[cltype21
] == idtype22
;
1948 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1949 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22464);
1952 var_psignaturenode7
= var_nodearraylist6
;
1953 /* <var_psignaturenode7:nullable Object> isa nullable ASignature */
1954 cltype24
= type_nullable_parser_nodes__ASignature
.color
;
1955 idtype25
= type_nullable_parser_nodes__ASignature
.id
;
1956 if(var_psignaturenode7
== NULL
) {
1959 if(cltype24
>= var_psignaturenode7
->type
->table_size
) {
1962 var23
= var_psignaturenode7
->type
->type_table
[cltype24
] == idtype25
;
1966 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1967 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22466);
1970 var_tstringnode8
= var_nodearraylist7
;
1971 /* <var_tstringnode8:nullable Object> isa nullable TString */
1972 cltype27
= type_nullable_parser_nodes__TString
.color
;
1973 idtype28
= type_nullable_parser_nodes__TString
.id
;
1974 if(var_tstringnode8
== NULL
) {
1977 if(cltype27
>= var_tstringnode8
->type
->table_size
) {
1980 var26
= var_tstringnode8
->type
->type_table
[cltype27
] == idtype28
;
1984 fprintf(stderr
, "Runtime error: %s", "Assert failed");
1985 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22468);
1988 var_pexterncallsnode9
= var_nodearraylist8
;
1989 /* <var_pexterncallsnode9:nullable Object> isa nullable AExternCalls */
1990 cltype30
= type_nullable_parser_nodes__AExternCalls
.color
;
1991 idtype31
= type_nullable_parser_nodes__AExternCalls
.id
;
1992 if(var_pexterncallsnode9
== NULL
) {
1995 if(cltype30
>= var_pexterncallsnode9
->type
->table_size
) {
1998 var29
= var_pexterncallsnode9
->type
->type_table
[cltype30
] == idtype31
;
2002 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2003 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22470);
2006 var_pexterncodeblocknode10
= var_nodearraylist9
;
2007 /* <var_pexterncodeblocknode10:nullable Object> isa nullable AExternCodeBlock */
2008 cltype33
= type_nullable_parser_nodes__AExternCodeBlock
.color
;
2009 idtype34
= type_nullable_parser_nodes__AExternCodeBlock
.id
;
2010 if(var_pexterncodeblocknode10
== NULL
) {
2013 if(cltype33
>= var_pexterncodeblocknode10
->type
->table_size
) {
2016 var32
= var_pexterncodeblocknode10
->type
->type_table
[cltype33
] == idtype34
;
2020 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2021 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22472);
2024 var35
= NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef
);
2025 ((void (*)(val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*, val
*))(var35
->class->vft
[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef
]))(var35
, var_pdocnode2
, var_tkwredefnode3
, var_pvisibilitynode4
, var_tkwnewnode5
, var_pmethidnode6
, var_psignaturenode7
, var_tstringnode8
, var_pexterncallsnode9
, var_pexterncodeblocknode10
) /* init_aexterninitpropdef on <var35:AExternInitPropdef>*/;
2026 CHECK_NEW_parser_nodes__AExternInitPropdef(var35
);
2027 var_ppropdefnode1
= var35
;
2028 var_node_list
= var_ppropdefnode1
;
2029 var36
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction512> */
2030 var37
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var36
) /* go_to on <var_p:Parser>*/;
2031 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var37
, var_node_list
) /* push on <var_p:Parser>*/;
2034 /* method parser#ReduceAction512#action for (self: Object, Parser) */
2035 void VIRTUAL_parser__ReduceAction512__action(val
* self
, val
* p0
) {
2036 parser__ReduceAction512__action(self
, p0
);
2039 /* method parser#ReduceAction513#action for (self: ReduceAction513, Parser) */
2040 void parser__ReduceAction513__action(val
* self
, val
* p0
) {
2041 val
* var_p
/* var p: Parser */;
2042 val
* var
/* : null */;
2043 val
* var_node_list
/* var node_list: nullable Object */;
2044 val
* var1
/* : nullable Object */;
2045 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2046 val
* var2
/* : nullable Object */;
2047 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2048 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable Object */;
2049 long var3
/* : Int */;
2050 long var4
/* : Int */;
2053 var_node_list
= var
;
2054 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2055 var_nodearraylist2
= var1
;
2056 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2057 var_nodearraylist1
= var2
;
2058 var_pannotationsnode1
= var_nodearraylist2
;
2059 var_node_list
= var_pannotationsnode1
;
2060 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction513> */
2061 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
2062 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
2065 /* method parser#ReduceAction513#action for (self: Object, Parser) */
2066 void VIRTUAL_parser__ReduceAction513__action(val
* self
, val
* p0
) {
2067 parser__ReduceAction513__action(self
, p0
);
2070 /* method parser#ReduceAction514#action for (self: ReduceAction514, Parser) */
2071 void parser__ReduceAction514__action(val
* self
, val
* p0
) {
2072 val
* var_p
/* var p: Parser */;
2073 val
* var
/* : null */;
2074 val
* var_node_list
/* var node_list: nullable Object */;
2075 val
* var1
/* : nullable Object */;
2076 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2077 val
* var2
/* : nullable Object */;
2078 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2079 val
* var3
/* : nullable Object */;
2080 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2081 val
* var4
/* : nullable Object */;
2082 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2083 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable Object */;
2084 long var5
/* : Int */;
2085 long var6
/* : Int */;
2088 var_node_list
= var
;
2089 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2090 var_nodearraylist4
= var1
;
2091 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2092 var_nodearraylist3
= var2
;
2093 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2094 var_nodearraylist2
= var3
;
2095 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2096 var_nodearraylist1
= var4
;
2097 var_pannotationsnode1
= var_nodearraylist3
;
2098 var_node_list
= var_pannotationsnode1
;
2099 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction514> */
2100 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
2101 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
2104 /* method parser#ReduceAction514#action for (self: Object, Parser) */
2105 void VIRTUAL_parser__ReduceAction514__action(val
* self
, val
* p0
) {
2106 parser__ReduceAction514__action(self
, p0
);
2109 /* method parser#ReduceAction516#action for (self: ReduceAction516, Parser) */
2110 void parser__ReduceAction516__action(val
* self
, val
* p0
) {
2111 val
* var_p
/* var p: Parser */;
2112 val
* var
/* : null */;
2113 val
* var_node_list
/* var node_list: nullable Object */;
2114 val
* var1
/* : nullable Object */;
2115 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2116 val
* var2
/* : nullable Object */;
2117 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2118 val
* var3
/* : nullable Object */;
2119 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2120 val
* var_pannotationsnode1
/* var pannotationsnode1: nullable Object */;
2121 long var4
/* : Int */;
2122 long var5
/* : Int */;
2125 var_node_list
= var
;
2126 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2127 var_nodearraylist3
= var1
;
2128 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2129 var_nodearraylist2
= var2
;
2130 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2131 var_nodearraylist1
= var3
;
2132 var_pannotationsnode1
= var_nodearraylist3
;
2133 var_node_list
= var_pannotationsnode1
;
2134 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction516> */
2135 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
2136 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
2139 /* method parser#ReduceAction516#action for (self: Object, Parser) */
2140 void VIRTUAL_parser__ReduceAction516__action(val
* self
, val
* p0
) {
2141 parser__ReduceAction516__action(self
, p0
);
2144 /* method parser#ReduceAction517#action for (self: ReduceAction517, Parser) */
2145 void parser__ReduceAction517__action(val
* self
, val
* p0
) {
2146 val
* var_p
/* var p: Parser */;
2147 val
* var
/* : null */;
2148 val
* var_node_list
/* var node_list: nullable Object */;
2149 val
* var1
/* : nullable Object */;
2150 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2151 val
* var_tkwreadablenode3
/* var tkwreadablenode3: nullable Object */;
2152 short int var2
/* : Bool */;
2155 val
* var3
/* : AReadAble */;
2156 val
* var4
/* : null */;
2157 val
* var_pablenode1
/* var pablenode1: nullable AReadAble */;
2158 long var5
/* : Int */;
2159 long var6
/* : Int */;
2162 var_node_list
= var
;
2163 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2164 var_nodearraylist1
= var1
;
2165 var_tkwreadablenode3
= var_nodearraylist1
;
2166 /* <var_tkwreadablenode3:nullable Object> isa nullable TKwreadable */
2167 cltype
= type_nullable_parser_nodes__TKwreadable
.color
;
2168 idtype
= type_nullable_parser_nodes__TKwreadable
.id
;
2169 if(var_tkwreadablenode3
== NULL
) {
2172 if(cltype
>= var_tkwreadablenode3
->type
->table_size
) {
2175 var2
= var_tkwreadablenode3
->type
->type_table
[cltype
] == idtype
;
2179 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2180 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22534);
2183 var3
= NEW_parser_nodes__AReadAble(&type_parser_nodes__AReadAble
);
2185 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReadAble__init_areadable
]))(var3
, var4
, var_tkwreadablenode3
) /* init_areadable on <var3:AReadAble>*/;
2186 CHECK_NEW_parser_nodes__AReadAble(var3
);
2187 var_pablenode1
= var3
;
2188 var_node_list
= var_pablenode1
;
2189 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction517> */
2190 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
2191 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
2194 /* method parser#ReduceAction517#action for (self: Object, Parser) */
2195 void VIRTUAL_parser__ReduceAction517__action(val
* self
, val
* p0
) {
2196 parser__ReduceAction517__action(self
, p0
);
2199 /* method parser#ReduceAction518#action for (self: ReduceAction518, Parser) */
2200 void parser__ReduceAction518__action(val
* self
, val
* p0
) {
2201 val
* var_p
/* var p: Parser */;
2202 val
* var
/* : null */;
2203 val
* var_node_list
/* var node_list: nullable Object */;
2204 val
* var1
/* : nullable Object */;
2205 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2206 val
* var2
/* : nullable Object */;
2207 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2208 val
* var_tkwredefnode2
/* var tkwredefnode2: nullable Object */;
2209 short int var3
/* : Bool */;
2212 val
* var_tkwreadablenode3
/* var tkwreadablenode3: nullable Object */;
2213 short int var4
/* : Bool */;
2216 val
* var7
/* : AReadAble */;
2217 val
* var_pablenode1
/* var pablenode1: nullable AReadAble */;
2218 long var8
/* : Int */;
2219 long var9
/* : Int */;
2222 var_node_list
= var
;
2223 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2224 var_nodearraylist2
= var1
;
2225 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2226 var_nodearraylist1
= var2
;
2227 var_tkwredefnode2
= var_nodearraylist1
;
2228 /* <var_tkwredefnode2:nullable Object> isa nullable TKwredef */
2229 cltype
= type_nullable_parser_nodes__TKwredef
.color
;
2230 idtype
= type_nullable_parser_nodes__TKwredef
.id
;
2231 if(var_tkwredefnode2
== NULL
) {
2234 if(cltype
>= var_tkwredefnode2
->type
->table_size
) {
2237 var3
= var_tkwredefnode2
->type
->type_table
[cltype
] == idtype
;
2241 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2242 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22551);
2245 var_tkwreadablenode3
= var_nodearraylist2
;
2246 /* <var_tkwreadablenode3:nullable Object> isa nullable TKwreadable */
2247 cltype5
= type_nullable_parser_nodes__TKwreadable
.color
;
2248 idtype6
= type_nullable_parser_nodes__TKwreadable
.id
;
2249 if(var_tkwreadablenode3
== NULL
) {
2252 if(cltype5
>= var_tkwreadablenode3
->type
->table_size
) {
2255 var4
= var_tkwreadablenode3
->type
->type_table
[cltype5
] == idtype6
;
2259 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2260 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22553);
2263 var7
= NEW_parser_nodes__AReadAble(&type_parser_nodes__AReadAble
);
2264 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AReadAble__init_areadable
]))(var7
, var_tkwredefnode2
, var_tkwreadablenode3
) /* init_areadable on <var7:AReadAble>*/;
2265 CHECK_NEW_parser_nodes__AReadAble(var7
);
2266 var_pablenode1
= var7
;
2267 var_node_list
= var_pablenode1
;
2268 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction518> */
2269 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
2270 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
2273 /* method parser#ReduceAction518#action for (self: Object, Parser) */
2274 void VIRTUAL_parser__ReduceAction518__action(val
* self
, val
* p0
) {
2275 parser__ReduceAction518__action(self
, p0
);
2278 /* method parser#ReduceAction519#action for (self: ReduceAction519, Parser) */
2279 void parser__ReduceAction519__action(val
* self
, val
* p0
) {
2280 val
* var_p
/* var p: Parser */;
2281 val
* var
/* : null */;
2282 val
* var_node_list
/* var node_list: nullable Object */;
2283 val
* var1
/* : nullable Object */;
2284 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2285 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
2286 short int var2
/* : Bool */;
2289 val
* var3
/* : AWriteAble */;
2290 val
* var4
/* : null */;
2291 val
* var5
/* : null */;
2292 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
2293 long var6
/* : Int */;
2294 long var7
/* : Int */;
2297 var_node_list
= var
;
2298 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2299 var_nodearraylist1
= var1
;
2300 var_tkwwritablenode4
= var_nodearraylist1
;
2301 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
2302 cltype
= type_nullable_parser_nodes__TKwwritable
.color
;
2303 idtype
= type_nullable_parser_nodes__TKwwritable
.id
;
2304 if(var_tkwwritablenode4
== NULL
) {
2307 if(cltype
>= var_tkwwritablenode4
->type
->table_size
) {
2310 var2
= var_tkwwritablenode4
->type
->type_table
[cltype
] == idtype
;
2314 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2315 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22569);
2318 var3
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
2321 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var3
, var4
, var5
, var_tkwwritablenode4
) /* init_awriteable on <var3:AWriteAble>*/;
2322 CHECK_NEW_parser_nodes__AWriteAble(var3
);
2323 var_pablenode1
= var3
;
2324 var_node_list
= var_pablenode1
;
2325 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction519> */
2326 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
2327 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
2330 /* method parser#ReduceAction519#action for (self: Object, Parser) */
2331 void VIRTUAL_parser__ReduceAction519__action(val
* self
, val
* p0
) {
2332 parser__ReduceAction519__action(self
, p0
);
2335 /* method parser#ReduceAction520#action for (self: ReduceAction520, Parser) */
2336 void parser__ReduceAction520__action(val
* self
, val
* p0
) {
2337 val
* var_p
/* var p: Parser */;
2338 val
* var
/* : null */;
2339 val
* var_node_list
/* var node_list: nullable Object */;
2340 val
* var1
/* : nullable Object */;
2341 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2342 val
* var2
/* : nullable Object */;
2343 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2344 val
* var_tkwredefnode2
/* var tkwredefnode2: nullable Object */;
2345 short int var3
/* : Bool */;
2348 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
2349 short int var4
/* : Bool */;
2352 val
* var7
/* : AWriteAble */;
2353 val
* var8
/* : null */;
2354 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
2355 long var9
/* : Int */;
2356 long var10
/* : Int */;
2359 var_node_list
= var
;
2360 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2361 var_nodearraylist2
= var1
;
2362 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2363 var_nodearraylist1
= var2
;
2364 var_tkwredefnode2
= var_nodearraylist1
;
2365 /* <var_tkwredefnode2:nullable Object> isa nullable TKwredef */
2366 cltype
= type_nullable_parser_nodes__TKwredef
.color
;
2367 idtype
= type_nullable_parser_nodes__TKwredef
.id
;
2368 if(var_tkwredefnode2
== NULL
) {
2371 if(cltype
>= var_tkwredefnode2
->type
->table_size
) {
2374 var3
= var_tkwredefnode2
->type
->type_table
[cltype
] == idtype
;
2378 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2379 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22587);
2382 var_tkwwritablenode4
= var_nodearraylist2
;
2383 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
2384 cltype5
= type_nullable_parser_nodes__TKwwritable
.color
;
2385 idtype6
= type_nullable_parser_nodes__TKwwritable
.id
;
2386 if(var_tkwwritablenode4
== NULL
) {
2389 if(cltype5
>= var_tkwwritablenode4
->type
->table_size
) {
2392 var4
= var_tkwwritablenode4
->type
->type_table
[cltype5
] == idtype6
;
2396 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2397 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22589);
2400 var7
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
2402 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var7
, var_tkwredefnode2
, var8
, var_tkwwritablenode4
) /* init_awriteable on <var7:AWriteAble>*/;
2403 CHECK_NEW_parser_nodes__AWriteAble(var7
);
2404 var_pablenode1
= var7
;
2405 var_node_list
= var_pablenode1
;
2406 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction520> */
2407 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
2408 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
2411 /* method parser#ReduceAction520#action for (self: Object, Parser) */
2412 void VIRTUAL_parser__ReduceAction520__action(val
* self
, val
* p0
) {
2413 parser__ReduceAction520__action(self
, p0
);
2416 /* method parser#ReduceAction521#action for (self: ReduceAction521, Parser) */
2417 void parser__ReduceAction521__action(val
* self
, val
* p0
) {
2418 val
* var_p
/* var p: Parser */;
2419 val
* var
/* : null */;
2420 val
* var_node_list
/* var node_list: nullable Object */;
2421 val
* var1
/* : nullable Object */;
2422 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2423 val
* var2
/* : nullable Object */;
2424 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2425 val
* var_pvisibilitynode3
/* var pvisibilitynode3: nullable Object */;
2426 short int var3
/* : Bool */;
2429 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
2430 short int var4
/* : Bool */;
2433 val
* var7
/* : AWriteAble */;
2434 val
* var8
/* : null */;
2435 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
2436 long var9
/* : Int */;
2437 long var10
/* : Int */;
2440 var_node_list
= var
;
2441 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2442 var_nodearraylist2
= var1
;
2443 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2444 var_nodearraylist1
= var2
;
2445 var_pvisibilitynode3
= var_nodearraylist1
;
2446 /* <var_pvisibilitynode3:nullable Object> isa nullable AVisibility */
2447 cltype
= type_nullable_parser_nodes__AVisibility
.color
;
2448 idtype
= type_nullable_parser_nodes__AVisibility
.id
;
2449 if(var_pvisibilitynode3
== NULL
) {
2452 if(cltype
>= var_pvisibilitynode3
->type
->table_size
) {
2455 var3
= var_pvisibilitynode3
->type
->type_table
[cltype
] == idtype
;
2459 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2460 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22607);
2463 var_tkwwritablenode4
= var_nodearraylist2
;
2464 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
2465 cltype5
= type_nullable_parser_nodes__TKwwritable
.color
;
2466 idtype6
= type_nullable_parser_nodes__TKwwritable
.id
;
2467 if(var_tkwwritablenode4
== NULL
) {
2470 if(cltype5
>= var_tkwwritablenode4
->type
->table_size
) {
2473 var4
= var_tkwwritablenode4
->type
->type_table
[cltype5
] == idtype6
;
2477 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2478 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22609);
2481 var7
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
2483 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var7
, var8
, var_pvisibilitynode3
, var_tkwwritablenode4
) /* init_awriteable on <var7:AWriteAble>*/;
2484 CHECK_NEW_parser_nodes__AWriteAble(var7
);
2485 var_pablenode1
= var7
;
2486 var_node_list
= var_pablenode1
;
2487 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction521> */
2488 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
2489 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
2492 /* method parser#ReduceAction521#action for (self: Object, Parser) */
2493 void VIRTUAL_parser__ReduceAction521__action(val
* self
, val
* p0
) {
2494 parser__ReduceAction521__action(self
, p0
);
2497 /* method parser#ReduceAction522#action for (self: ReduceAction522, Parser) */
2498 void parser__ReduceAction522__action(val
* self
, val
* p0
) {
2499 val
* var_p
/* var p: Parser */;
2500 val
* var
/* : null */;
2501 val
* var_node_list
/* var node_list: nullable Object */;
2502 val
* var1
/* : nullable Object */;
2503 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2504 val
* var2
/* : nullable Object */;
2505 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2506 val
* var3
/* : nullable Object */;
2507 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2508 val
* var_tkwredefnode2
/* var tkwredefnode2: nullable Object */;
2509 short int var4
/* : Bool */;
2512 val
* var_pvisibilitynode3
/* var pvisibilitynode3: nullable Object */;
2513 short int var5
/* : Bool */;
2516 val
* var_tkwwritablenode4
/* var tkwwritablenode4: nullable Object */;
2517 short int var8
/* : Bool */;
2520 val
* var11
/* : AWriteAble */;
2521 val
* var_pablenode1
/* var pablenode1: nullable AWriteAble */;
2522 long var12
/* : Int */;
2523 long var13
/* : Int */;
2526 var_node_list
= var
;
2527 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2528 var_nodearraylist3
= var1
;
2529 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2530 var_nodearraylist2
= var2
;
2531 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2532 var_nodearraylist1
= var3
;
2533 var_tkwredefnode2
= var_nodearraylist1
;
2534 /* <var_tkwredefnode2:nullable Object> isa nullable TKwredef */
2535 cltype
= type_nullable_parser_nodes__TKwredef
.color
;
2536 idtype
= type_nullable_parser_nodes__TKwredef
.id
;
2537 if(var_tkwredefnode2
== NULL
) {
2540 if(cltype
>= var_tkwredefnode2
->type
->table_size
) {
2543 var4
= var_tkwredefnode2
->type
->type_table
[cltype
] == idtype
;
2547 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2548 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22628);
2551 var_pvisibilitynode3
= var_nodearraylist2
;
2552 /* <var_pvisibilitynode3:nullable Object> isa nullable AVisibility */
2553 cltype6
= type_nullable_parser_nodes__AVisibility
.color
;
2554 idtype7
= type_nullable_parser_nodes__AVisibility
.id
;
2555 if(var_pvisibilitynode3
== NULL
) {
2558 if(cltype6
>= var_pvisibilitynode3
->type
->table_size
) {
2561 var5
= var_pvisibilitynode3
->type
->type_table
[cltype6
] == idtype7
;
2565 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2566 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22630);
2569 var_tkwwritablenode4
= var_nodearraylist3
;
2570 /* <var_tkwwritablenode4:nullable Object> isa nullable TKwwritable */
2571 cltype9
= type_nullable_parser_nodes__TKwwritable
.color
;
2572 idtype10
= type_nullable_parser_nodes__TKwwritable
.id
;
2573 if(var_tkwwritablenode4
== NULL
) {
2576 if(cltype9
>= var_tkwwritablenode4
->type
->table_size
) {
2579 var8
= var_tkwwritablenode4
->type
->type_table
[cltype9
] == idtype10
;
2583 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2584 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22632);
2587 var11
= NEW_parser_nodes__AWriteAble(&type_parser_nodes__AWriteAble
);
2588 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AWriteAble__init_awriteable
]))(var11
, var_tkwredefnode2
, var_pvisibilitynode3
, var_tkwwritablenode4
) /* init_awriteable on <var11:AWriteAble>*/;
2589 CHECK_NEW_parser_nodes__AWriteAble(var11
);
2590 var_pablenode1
= var11
;
2591 var_node_list
= var_pablenode1
;
2592 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction522> */
2593 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
2594 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
2597 /* method parser#ReduceAction522#action for (self: Object, Parser) */
2598 void VIRTUAL_parser__ReduceAction522__action(val
* self
, val
* p0
) {
2599 parser__ReduceAction522__action(self
, p0
);
2602 /* method parser#ReduceAction523#action for (self: ReduceAction523, Parser) */
2603 void parser__ReduceAction523__action(val
* self
, val
* p0
) {
2604 val
* var_p
/* var p: Parser */;
2605 val
* var
/* : null */;
2606 val
* var_node_list
/* var node_list: nullable Object */;
2607 val
* var1
/* : APublicVisibility */;
2608 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable APublicVisibility */;
2609 long var2
/* : Int */;
2610 long var3
/* : Int */;
2613 var_node_list
= var
;
2614 var1
= NEW_parser_nodes__APublicVisibility(&type_parser_nodes__APublicVisibility
);
2615 ((void (*)(val
*))(var1
->class->vft
[COLOR_parser_prod__APublicVisibility__init_apublicvisibility
]))(var1
) /* init_apublicvisibility on <var1:APublicVisibility>*/;
2616 CHECK_NEW_parser_nodes__APublicVisibility(var1
);
2617 var_pvisibilitynode1
= var1
;
2618 var_node_list
= var_pvisibilitynode1
;
2619 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction523> */
2620 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
2621 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
2624 /* method parser#ReduceAction523#action for (self: Object, Parser) */
2625 void VIRTUAL_parser__ReduceAction523__action(val
* self
, val
* p0
) {
2626 parser__ReduceAction523__action(self
, p0
);
2629 /* method parser#ReduceAction524#action for (self: ReduceAction524, Parser) */
2630 void parser__ReduceAction524__action(val
* self
, val
* p0
) {
2631 val
* var_p
/* var p: Parser */;
2632 val
* var
/* : null */;
2633 val
* var_node_list
/* var node_list: nullable Object */;
2634 val
* var1
/* : nullable Object */;
2635 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2636 val
* var2
/* : nullable Object */;
2637 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2638 val
* var_tkwprivatenode2
/* var tkwprivatenode2: nullable Object */;
2639 short int var3
/* : Bool */;
2642 val
* var4
/* : APrivateVisibility */;
2643 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable APrivateVisibility */;
2644 long var5
/* : Int */;
2645 long var6
/* : Int */;
2648 var_node_list
= var
;
2649 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2650 var_nodearraylist2
= var1
;
2651 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2652 var_nodearraylist1
= var2
;
2653 var_tkwprivatenode2
= var_nodearraylist1
;
2654 /* <var_tkwprivatenode2:nullable Object> isa nullable TKwprivate */
2655 cltype
= type_nullable_parser_nodes__TKwprivate
.color
;
2656 idtype
= type_nullable_parser_nodes__TKwprivate
.id
;
2657 if(var_tkwprivatenode2
== NULL
) {
2660 if(cltype
>= var_tkwprivatenode2
->type
->table_size
) {
2663 var3
= var_tkwprivatenode2
->type
->type_table
[cltype
] == idtype
;
2667 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2668 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22660);
2671 var4
= NEW_parser_nodes__APrivateVisibility(&type_parser_nodes__APrivateVisibility
);
2672 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__APrivateVisibility__init_aprivatevisibility
]))(var4
, var_tkwprivatenode2
) /* init_aprivatevisibility on <var4:APrivateVisibility>*/;
2673 CHECK_NEW_parser_nodes__APrivateVisibility(var4
);
2674 var_pvisibilitynode1
= var4
;
2675 var_node_list
= var_pvisibilitynode1
;
2676 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction524> */
2677 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
2678 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
2681 /* method parser#ReduceAction524#action for (self: Object, Parser) */
2682 void VIRTUAL_parser__ReduceAction524__action(val
* self
, val
* p0
) {
2683 parser__ReduceAction524__action(self
, p0
);
2686 /* method parser#ReduceAction525#action for (self: ReduceAction525, Parser) */
2687 void parser__ReduceAction525__action(val
* self
, val
* p0
) {
2688 val
* var_p
/* var p: Parser */;
2689 val
* var
/* : null */;
2690 val
* var_node_list
/* var node_list: nullable Object */;
2691 val
* var1
/* : nullable Object */;
2692 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2693 val
* var2
/* : nullable Object */;
2694 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2695 val
* var_tkwprotectednode2
/* var tkwprotectednode2: nullable Object */;
2696 short int var3
/* : Bool */;
2699 val
* var4
/* : AProtectedVisibility */;
2700 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable AProtectedVisibility */;
2701 long var5
/* : Int */;
2702 long var6
/* : Int */;
2705 var_node_list
= var
;
2706 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2707 var_nodearraylist2
= var1
;
2708 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2709 var_nodearraylist1
= var2
;
2710 var_tkwprotectednode2
= var_nodearraylist1
;
2711 /* <var_tkwprotectednode2:nullable Object> isa nullable TKwprotected */
2712 cltype
= type_nullable_parser_nodes__TKwprotected
.color
;
2713 idtype
= type_nullable_parser_nodes__TKwprotected
.id
;
2714 if(var_tkwprotectednode2
== NULL
) {
2717 if(cltype
>= var_tkwprotectednode2
->type
->table_size
) {
2720 var3
= var_tkwprotectednode2
->type
->type_table
[cltype
] == idtype
;
2724 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2725 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22676);
2728 var4
= NEW_parser_nodes__AProtectedVisibility(&type_parser_nodes__AProtectedVisibility
);
2729 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AProtectedVisibility__init_aprotectedvisibility
]))(var4
, var_tkwprotectednode2
) /* init_aprotectedvisibility on <var4:AProtectedVisibility>*/;
2730 CHECK_NEW_parser_nodes__AProtectedVisibility(var4
);
2731 var_pvisibilitynode1
= var4
;
2732 var_node_list
= var_pvisibilitynode1
;
2733 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction525> */
2734 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
2735 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
2738 /* method parser#ReduceAction525#action for (self: Object, Parser) */
2739 void VIRTUAL_parser__ReduceAction525__action(val
* self
, val
* p0
) {
2740 parser__ReduceAction525__action(self
, p0
);
2743 /* method parser#ReduceAction526#action for (self: ReduceAction526, Parser) */
2744 void parser__ReduceAction526__action(val
* self
, val
* p0
) {
2745 val
* var_p
/* var p: Parser */;
2746 val
* var
/* : null */;
2747 val
* var_node_list
/* var node_list: nullable Object */;
2748 val
* var1
/* : nullable Object */;
2749 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2750 val
* var2
/* : nullable Object */;
2751 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2752 val
* var_tkwintrudenode2
/* var tkwintrudenode2: nullable Object */;
2753 short int var3
/* : Bool */;
2756 val
* var4
/* : AIntrudeVisibility */;
2757 val
* var_pvisibilitynode1
/* var pvisibilitynode1: nullable AIntrudeVisibility */;
2758 long var5
/* : Int */;
2759 long var6
/* : Int */;
2762 var_node_list
= var
;
2763 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2764 var_nodearraylist2
= var1
;
2765 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2766 var_nodearraylist1
= var2
;
2767 var_tkwintrudenode2
= var_nodearraylist1
;
2768 /* <var_tkwintrudenode2:nullable Object> isa nullable TKwintrude */
2769 cltype
= type_nullable_parser_nodes__TKwintrude
.color
;
2770 idtype
= type_nullable_parser_nodes__TKwintrude
.id
;
2771 if(var_tkwintrudenode2
== NULL
) {
2774 if(cltype
>= var_tkwintrudenode2
->type
->table_size
) {
2777 var3
= var_tkwintrudenode2
->type
->type_table
[cltype
] == idtype
;
2781 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2782 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22692);
2785 var4
= NEW_parser_nodes__AIntrudeVisibility(&type_parser_nodes__AIntrudeVisibility
);
2786 ((void (*)(val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AIntrudeVisibility__init_aintrudevisibility
]))(var4
, var_tkwintrudenode2
) /* init_aintrudevisibility on <var4:AIntrudeVisibility>*/;
2787 CHECK_NEW_parser_nodes__AIntrudeVisibility(var4
);
2788 var_pvisibilitynode1
= var4
;
2789 var_node_list
= var_pvisibilitynode1
;
2790 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction526> */
2791 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
2792 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
2795 /* method parser#ReduceAction526#action for (self: Object, Parser) */
2796 void VIRTUAL_parser__ReduceAction526__action(val
* self
, val
* p0
) {
2797 parser__ReduceAction526__action(self
, p0
);
2800 /* method parser#ReduceAction527#action for (self: ReduceAction527, Parser) */
2801 void parser__ReduceAction527__action(val
* self
, val
* p0
) {
2802 val
* var_p
/* var p: Parser */;
2803 val
* var
/* : null */;
2804 val
* var_node_list
/* var node_list: nullable Object */;
2805 val
* var1
/* : nullable Object */;
2806 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2807 val
* var_tidnode2
/* var tidnode2: nullable Object */;
2808 short int var2
/* : Bool */;
2811 val
* var3
/* : AIdMethid */;
2812 val
* var_pmethidnode1
/* var pmethidnode1: nullable AIdMethid */;
2813 long var4
/* : Int */;
2814 long var5
/* : Int */;
2817 var_node_list
= var
;
2818 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2819 var_nodearraylist1
= var1
;
2820 var_tidnode2
= var_nodearraylist1
;
2821 /* <var_tidnode2:nullable Object> isa nullable TId */
2822 cltype
= type_nullable_parser_nodes__TId
.color
;
2823 idtype
= type_nullable_parser_nodes__TId
.id
;
2824 if(var_tidnode2
== NULL
) {
2827 if(cltype
>= var_tidnode2
->type
->table_size
) {
2830 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
2834 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2835 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22707);
2838 var3
= NEW_parser_nodes__AIdMethid(&type_parser_nodes__AIdMethid
);
2839 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AIdMethid__init_aidmethid
]))(var3
, var_tidnode2
) /* init_aidmethid on <var3:AIdMethid>*/;
2840 CHECK_NEW_parser_nodes__AIdMethid(var3
);
2841 var_pmethidnode1
= var3
;
2842 var_node_list
= var_pmethidnode1
;
2843 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction527> */
2844 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
2845 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
2848 /* method parser#ReduceAction527#action for (self: Object, Parser) */
2849 void VIRTUAL_parser__ReduceAction527__action(val
* self
, val
* p0
) {
2850 parser__ReduceAction527__action(self
, p0
);
2853 /* method parser#ReduceAction528#action for (self: ReduceAction528, Parser) */
2854 void parser__ReduceAction528__action(val
* self
, val
* p0
) {
2855 val
* var_p
/* var p: Parser */;
2856 val
* var
/* : null */;
2857 val
* var_node_list
/* var node_list: nullable Object */;
2858 val
* var1
/* : nullable Object */;
2859 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2860 val
* var_tplusnode2
/* var tplusnode2: nullable Object */;
2861 short int var2
/* : Bool */;
2864 val
* var3
/* : APlusMethid */;
2865 val
* var_pmethidnode1
/* var pmethidnode1: nullable APlusMethid */;
2866 long var4
/* : Int */;
2867 long var5
/* : Int */;
2870 var_node_list
= var
;
2871 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2872 var_nodearraylist1
= var1
;
2873 var_tplusnode2
= var_nodearraylist1
;
2874 /* <var_tplusnode2:nullable Object> isa nullable TPlus */
2875 cltype
= type_nullable_parser_nodes__TPlus
.color
;
2876 idtype
= type_nullable_parser_nodes__TPlus
.id
;
2877 if(var_tplusnode2
== NULL
) {
2880 if(cltype
>= var_tplusnode2
->type
->table_size
) {
2883 var2
= var_tplusnode2
->type
->type_table
[cltype
] == idtype
;
2887 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2888 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22722);
2891 var3
= NEW_parser_nodes__APlusMethid(&type_parser_nodes__APlusMethid
);
2892 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APlusMethid__init_aplusmethid
]))(var3
, var_tplusnode2
) /* init_aplusmethid on <var3:APlusMethid>*/;
2893 CHECK_NEW_parser_nodes__APlusMethid(var3
);
2894 var_pmethidnode1
= var3
;
2895 var_node_list
= var_pmethidnode1
;
2896 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction528> */
2897 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
2898 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
2901 /* method parser#ReduceAction528#action for (self: Object, Parser) */
2902 void VIRTUAL_parser__ReduceAction528__action(val
* self
, val
* p0
) {
2903 parser__ReduceAction528__action(self
, p0
);
2906 /* method parser#ReduceAction529#action for (self: ReduceAction529, Parser) */
2907 void parser__ReduceAction529__action(val
* self
, val
* p0
) {
2908 val
* var_p
/* var p: Parser */;
2909 val
* var
/* : null */;
2910 val
* var_node_list
/* var node_list: nullable Object */;
2911 val
* var1
/* : nullable Object */;
2912 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2913 val
* var_tminusnode2
/* var tminusnode2: nullable Object */;
2914 short int var2
/* : Bool */;
2917 val
* var3
/* : AMinusMethid */;
2918 val
* var_pmethidnode1
/* var pmethidnode1: nullable AMinusMethid */;
2919 long var4
/* : Int */;
2920 long var5
/* : Int */;
2923 var_node_list
= var
;
2924 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
2925 var_nodearraylist1
= var1
;
2926 var_tminusnode2
= var_nodearraylist1
;
2927 /* <var_tminusnode2:nullable Object> isa nullable TMinus */
2928 cltype
= type_nullable_parser_nodes__TMinus
.color
;
2929 idtype
= type_nullable_parser_nodes__TMinus
.id
;
2930 if(var_tminusnode2
== NULL
) {
2933 if(cltype
>= var_tminusnode2
->type
->table_size
) {
2936 var2
= var_tminusnode2
->type
->type_table
[cltype
] == idtype
;
2940 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2941 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22737);
2944 var3
= NEW_parser_nodes__AMinusMethid(&type_parser_nodes__AMinusMethid
);
2945 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AMinusMethid__init_aminusmethid
]))(var3
, var_tminusnode2
) /* init_aminusmethid on <var3:AMinusMethid>*/;
2946 CHECK_NEW_parser_nodes__AMinusMethid(var3
);
2947 var_pmethidnode1
= var3
;
2948 var_node_list
= var_pmethidnode1
;
2949 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction529> */
2950 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
2951 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
2954 /* method parser#ReduceAction529#action for (self: Object, Parser) */
2955 void VIRTUAL_parser__ReduceAction529__action(val
* self
, val
* p0
) {
2956 parser__ReduceAction529__action(self
, p0
);
2959 /* method parser#ReduceAction530#action for (self: ReduceAction530, Parser) */
2960 void parser__ReduceAction530__action(val
* self
, val
* p0
) {
2961 val
* var_p
/* var p: Parser */;
2962 val
* var
/* : null */;
2963 val
* var_node_list
/* var node_list: nullable Object */;
2964 val
* var1
/* : nullable Object */;
2965 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2966 val
* var_tstarnode2
/* var tstarnode2: nullable Object */;
2967 short int var2
/* : Bool */;
2970 val
* var3
/* : AStarMethid */;
2971 val
* var_pmethidnode1
/* var pmethidnode1: nullable AStarMethid */;
2972 long var4
/* : Int */;
2973 long var5
/* : 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_nodearraylist1
= var1
;
2979 var_tstarnode2
= var_nodearraylist1
;
2980 /* <var_tstarnode2:nullable Object> isa nullable TStar */
2981 cltype
= type_nullable_parser_nodes__TStar
.color
;
2982 idtype
= type_nullable_parser_nodes__TStar
.id
;
2983 if(var_tstarnode2
== NULL
) {
2986 if(cltype
>= var_tstarnode2
->type
->table_size
) {
2989 var2
= var_tstarnode2
->type
->type_table
[cltype
] == idtype
;
2993 fprintf(stderr
, "Runtime error: %s", "Assert failed");
2994 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22752);
2997 var3
= NEW_parser_nodes__AStarMethid(&type_parser_nodes__AStarMethid
);
2998 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStarMethid__init_astarmethid
]))(var3
, var_tstarnode2
) /* init_astarmethid on <var3:AStarMethid>*/;
2999 CHECK_NEW_parser_nodes__AStarMethid(var3
);
3000 var_pmethidnode1
= var3
;
3001 var_node_list
= var_pmethidnode1
;
3002 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction530> */
3003 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3004 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3007 /* method parser#ReduceAction530#action for (self: Object, Parser) */
3008 void VIRTUAL_parser__ReduceAction530__action(val
* self
, val
* p0
) {
3009 parser__ReduceAction530__action(self
, p0
);
3012 /* method parser#ReduceAction531#action for (self: ReduceAction531, Parser) */
3013 void parser__ReduceAction531__action(val
* self
, val
* p0
) {
3014 val
* var_p
/* var p: Parser */;
3015 val
* var
/* : null */;
3016 val
* var_node_list
/* var node_list: nullable Object */;
3017 val
* var1
/* : nullable Object */;
3018 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3019 val
* var_tslashnode2
/* var tslashnode2: nullable Object */;
3020 short int var2
/* : Bool */;
3023 val
* var3
/* : ASlashMethid */;
3024 val
* var_pmethidnode1
/* var pmethidnode1: nullable ASlashMethid */;
3025 long var4
/* : Int */;
3026 long var5
/* : Int */;
3029 var_node_list
= var
;
3030 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3031 var_nodearraylist1
= var1
;
3032 var_tslashnode2
= var_nodearraylist1
;
3033 /* <var_tslashnode2:nullable Object> isa nullable TSlash */
3034 cltype
= type_nullable_parser_nodes__TSlash
.color
;
3035 idtype
= type_nullable_parser_nodes__TSlash
.id
;
3036 if(var_tslashnode2
== NULL
) {
3039 if(cltype
>= var_tslashnode2
->type
->table_size
) {
3042 var2
= var_tslashnode2
->type
->type_table
[cltype
] == idtype
;
3046 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3047 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22767);
3050 var3
= NEW_parser_nodes__ASlashMethid(&type_parser_nodes__ASlashMethid
);
3051 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASlashMethid__init_aslashmethid
]))(var3
, var_tslashnode2
) /* init_aslashmethid on <var3:ASlashMethid>*/;
3052 CHECK_NEW_parser_nodes__ASlashMethid(var3
);
3053 var_pmethidnode1
= var3
;
3054 var_node_list
= var_pmethidnode1
;
3055 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction531> */
3056 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3057 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3060 /* method parser#ReduceAction531#action for (self: Object, Parser) */
3061 void VIRTUAL_parser__ReduceAction531__action(val
* self
, val
* p0
) {
3062 parser__ReduceAction531__action(self
, p0
);
3065 /* method parser#ReduceAction532#action for (self: ReduceAction532, Parser) */
3066 void parser__ReduceAction532__action(val
* self
, val
* p0
) {
3067 val
* var_p
/* var p: Parser */;
3068 val
* var
/* : null */;
3069 val
* var_node_list
/* var node_list: nullable Object */;
3070 val
* var1
/* : nullable Object */;
3071 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3072 val
* var_tpercentnode2
/* var tpercentnode2: nullable Object */;
3073 short int var2
/* : Bool */;
3076 val
* var3
/* : APercentMethid */;
3077 val
* var_pmethidnode1
/* var pmethidnode1: nullable APercentMethid */;
3078 long var4
/* : Int */;
3079 long var5
/* : Int */;
3082 var_node_list
= var
;
3083 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3084 var_nodearraylist1
= var1
;
3085 var_tpercentnode2
= var_nodearraylist1
;
3086 /* <var_tpercentnode2:nullable Object> isa nullable TPercent */
3087 cltype
= type_nullable_parser_nodes__TPercent
.color
;
3088 idtype
= type_nullable_parser_nodes__TPercent
.id
;
3089 if(var_tpercentnode2
== NULL
) {
3092 if(cltype
>= var_tpercentnode2
->type
->table_size
) {
3095 var2
= var_tpercentnode2
->type
->type_table
[cltype
] == idtype
;
3099 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3100 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22782);
3103 var3
= NEW_parser_nodes__APercentMethid(&type_parser_nodes__APercentMethid
);
3104 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__APercentMethid__init_apercentmethid
]))(var3
, var_tpercentnode2
) /* init_apercentmethid on <var3:APercentMethid>*/;
3105 CHECK_NEW_parser_nodes__APercentMethid(var3
);
3106 var_pmethidnode1
= var3
;
3107 var_node_list
= var_pmethidnode1
;
3108 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction532> */
3109 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3110 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3113 /* method parser#ReduceAction532#action for (self: Object, Parser) */
3114 void VIRTUAL_parser__ReduceAction532__action(val
* self
, val
* p0
) {
3115 parser__ReduceAction532__action(self
, p0
);
3118 /* method parser#ReduceAction533#action for (self: ReduceAction533, Parser) */
3119 void parser__ReduceAction533__action(val
* self
, val
* p0
) {
3120 val
* var_p
/* var p: Parser */;
3121 val
* var
/* : null */;
3122 val
* var_node_list
/* var node_list: nullable Object */;
3123 val
* var1
/* : nullable Object */;
3124 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3125 val
* var_teqnode2
/* var teqnode2: nullable Object */;
3126 short int var2
/* : Bool */;
3129 val
* var3
/* : AEqMethid */;
3130 val
* var_pmethidnode1
/* var pmethidnode1: nullable AEqMethid */;
3131 long var4
/* : Int */;
3132 long var5
/* : Int */;
3135 var_node_list
= var
;
3136 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3137 var_nodearraylist1
= var1
;
3138 var_teqnode2
= var_nodearraylist1
;
3139 /* <var_teqnode2:nullable Object> isa nullable TEq */
3140 cltype
= type_nullable_parser_nodes__TEq
.color
;
3141 idtype
= type_nullable_parser_nodes__TEq
.id
;
3142 if(var_teqnode2
== NULL
) {
3145 if(cltype
>= var_teqnode2
->type
->table_size
) {
3148 var2
= var_teqnode2
->type
->type_table
[cltype
] == idtype
;
3152 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3153 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22797);
3156 var3
= NEW_parser_nodes__AEqMethid(&type_parser_nodes__AEqMethid
);
3157 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AEqMethid__init_aeqmethid
]))(var3
, var_teqnode2
) /* init_aeqmethid on <var3:AEqMethid>*/;
3158 CHECK_NEW_parser_nodes__AEqMethid(var3
);
3159 var_pmethidnode1
= var3
;
3160 var_node_list
= var_pmethidnode1
;
3161 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction533> */
3162 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3163 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3166 /* method parser#ReduceAction533#action for (self: Object, Parser) */
3167 void VIRTUAL_parser__ReduceAction533__action(val
* self
, val
* p0
) {
3168 parser__ReduceAction533__action(self
, p0
);
3171 /* method parser#ReduceAction534#action for (self: ReduceAction534, Parser) */
3172 void parser__ReduceAction534__action(val
* self
, val
* p0
) {
3173 val
* var_p
/* var p: Parser */;
3174 val
* var
/* : null */;
3175 val
* var_node_list
/* var node_list: nullable Object */;
3176 val
* var1
/* : nullable Object */;
3177 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3178 val
* var_tnenode2
/* var tnenode2: nullable Object */;
3179 short int var2
/* : Bool */;
3182 val
* var3
/* : ANeMethid */;
3183 val
* var_pmethidnode1
/* var pmethidnode1: nullable ANeMethid */;
3184 long var4
/* : Int */;
3185 long var5
/* : Int */;
3188 var_node_list
= var
;
3189 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3190 var_nodearraylist1
= var1
;
3191 var_tnenode2
= var_nodearraylist1
;
3192 /* <var_tnenode2:nullable Object> isa nullable TNe */
3193 cltype
= type_nullable_parser_nodes__TNe
.color
;
3194 idtype
= type_nullable_parser_nodes__TNe
.id
;
3195 if(var_tnenode2
== NULL
) {
3198 if(cltype
>= var_tnenode2
->type
->table_size
) {
3201 var2
= var_tnenode2
->type
->type_table
[cltype
] == idtype
;
3205 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3206 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22812);
3209 var3
= NEW_parser_nodes__ANeMethid(&type_parser_nodes__ANeMethid
);
3210 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ANeMethid__init_anemethid
]))(var3
, var_tnenode2
) /* init_anemethid on <var3:ANeMethid>*/;
3211 CHECK_NEW_parser_nodes__ANeMethid(var3
);
3212 var_pmethidnode1
= var3
;
3213 var_node_list
= var_pmethidnode1
;
3214 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction534> */
3215 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3216 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3219 /* method parser#ReduceAction534#action for (self: Object, Parser) */
3220 void VIRTUAL_parser__ReduceAction534__action(val
* self
, val
* p0
) {
3221 parser__ReduceAction534__action(self
, p0
);
3224 /* method parser#ReduceAction535#action for (self: ReduceAction535, Parser) */
3225 void parser__ReduceAction535__action(val
* self
, val
* p0
) {
3226 val
* var_p
/* var p: Parser */;
3227 val
* var
/* : null */;
3228 val
* var_node_list
/* var node_list: nullable Object */;
3229 val
* var1
/* : nullable Object */;
3230 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3231 val
* var_tlenode2
/* var tlenode2: nullable Object */;
3232 short int var2
/* : Bool */;
3235 val
* var3
/* : ALeMethid */;
3236 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALeMethid */;
3237 long var4
/* : Int */;
3238 long var5
/* : Int */;
3241 var_node_list
= var
;
3242 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3243 var_nodearraylist1
= var1
;
3244 var_tlenode2
= var_nodearraylist1
;
3245 /* <var_tlenode2:nullable Object> isa nullable TLe */
3246 cltype
= type_nullable_parser_nodes__TLe
.color
;
3247 idtype
= type_nullable_parser_nodes__TLe
.id
;
3248 if(var_tlenode2
== NULL
) {
3251 if(cltype
>= var_tlenode2
->type
->table_size
) {
3254 var2
= var_tlenode2
->type
->type_table
[cltype
] == idtype
;
3258 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3259 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22827);
3262 var3
= NEW_parser_nodes__ALeMethid(&type_parser_nodes__ALeMethid
);
3263 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALeMethid__init_alemethid
]))(var3
, var_tlenode2
) /* init_alemethid on <var3:ALeMethid>*/;
3264 CHECK_NEW_parser_nodes__ALeMethid(var3
);
3265 var_pmethidnode1
= var3
;
3266 var_node_list
= var_pmethidnode1
;
3267 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction535> */
3268 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3269 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3272 /* method parser#ReduceAction535#action for (self: Object, Parser) */
3273 void VIRTUAL_parser__ReduceAction535__action(val
* self
, val
* p0
) {
3274 parser__ReduceAction535__action(self
, p0
);
3277 /* method parser#ReduceAction536#action for (self: ReduceAction536, Parser) */
3278 void parser__ReduceAction536__action(val
* self
, val
* p0
) {
3279 val
* var_p
/* var p: Parser */;
3280 val
* var
/* : null */;
3281 val
* var_node_list
/* var node_list: nullable Object */;
3282 val
* var1
/* : nullable Object */;
3283 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3284 val
* var_tgenode2
/* var tgenode2: nullable Object */;
3285 short int var2
/* : Bool */;
3288 val
* var3
/* : AGeMethid */;
3289 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGeMethid */;
3290 long var4
/* : Int */;
3291 long var5
/* : Int */;
3294 var_node_list
= var
;
3295 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3296 var_nodearraylist1
= var1
;
3297 var_tgenode2
= var_nodearraylist1
;
3298 /* <var_tgenode2:nullable Object> isa nullable TGe */
3299 cltype
= type_nullable_parser_nodes__TGe
.color
;
3300 idtype
= type_nullable_parser_nodes__TGe
.id
;
3301 if(var_tgenode2
== NULL
) {
3304 if(cltype
>= var_tgenode2
->type
->table_size
) {
3307 var2
= var_tgenode2
->type
->type_table
[cltype
] == idtype
;
3311 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3312 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22842);
3315 var3
= NEW_parser_nodes__AGeMethid(&type_parser_nodes__AGeMethid
);
3316 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGeMethid__init_agemethid
]))(var3
, var_tgenode2
) /* init_agemethid on <var3:AGeMethid>*/;
3317 CHECK_NEW_parser_nodes__AGeMethid(var3
);
3318 var_pmethidnode1
= var3
;
3319 var_node_list
= var_pmethidnode1
;
3320 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction536> */
3321 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3322 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3325 /* method parser#ReduceAction536#action for (self: Object, Parser) */
3326 void VIRTUAL_parser__ReduceAction536__action(val
* self
, val
* p0
) {
3327 parser__ReduceAction536__action(self
, p0
);
3330 /* method parser#ReduceAction537#action for (self: ReduceAction537, Parser) */
3331 void parser__ReduceAction537__action(val
* self
, val
* p0
) {
3332 val
* var_p
/* var p: Parser */;
3333 val
* var
/* : null */;
3334 val
* var_node_list
/* var node_list: nullable Object */;
3335 val
* var1
/* : nullable Object */;
3336 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3337 val
* var_tltnode2
/* var tltnode2: nullable Object */;
3338 short int var2
/* : Bool */;
3341 val
* var3
/* : ALtMethid */;
3342 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALtMethid */;
3343 long var4
/* : Int */;
3344 long var5
/* : Int */;
3347 var_node_list
= var
;
3348 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3349 var_nodearraylist1
= var1
;
3350 var_tltnode2
= var_nodearraylist1
;
3351 /* <var_tltnode2:nullable Object> isa nullable TLt */
3352 cltype
= type_nullable_parser_nodes__TLt
.color
;
3353 idtype
= type_nullable_parser_nodes__TLt
.id
;
3354 if(var_tltnode2
== NULL
) {
3357 if(cltype
>= var_tltnode2
->type
->table_size
) {
3360 var2
= var_tltnode2
->type
->type_table
[cltype
] == idtype
;
3364 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3365 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22857);
3368 var3
= NEW_parser_nodes__ALtMethid(&type_parser_nodes__ALtMethid
);
3369 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALtMethid__init_altmethid
]))(var3
, var_tltnode2
) /* init_altmethid on <var3:ALtMethid>*/;
3370 CHECK_NEW_parser_nodes__ALtMethid(var3
);
3371 var_pmethidnode1
= var3
;
3372 var_node_list
= var_pmethidnode1
;
3373 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction537> */
3374 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3375 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3378 /* method parser#ReduceAction537#action for (self: Object, Parser) */
3379 void VIRTUAL_parser__ReduceAction537__action(val
* self
, val
* p0
) {
3380 parser__ReduceAction537__action(self
, p0
);
3383 /* method parser#ReduceAction538#action for (self: ReduceAction538, Parser) */
3384 void parser__ReduceAction538__action(val
* self
, val
* p0
) {
3385 val
* var_p
/* var p: Parser */;
3386 val
* var
/* : null */;
3387 val
* var_node_list
/* var node_list: nullable Object */;
3388 val
* var1
/* : nullable Object */;
3389 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3390 val
* var_tgtnode2
/* var tgtnode2: nullable Object */;
3391 short int var2
/* : Bool */;
3394 val
* var3
/* : AGtMethid */;
3395 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGtMethid */;
3396 long var4
/* : Int */;
3397 long var5
/* : Int */;
3400 var_node_list
= var
;
3401 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3402 var_nodearraylist1
= var1
;
3403 var_tgtnode2
= var_nodearraylist1
;
3404 /* <var_tgtnode2:nullable Object> isa nullable TGt */
3405 cltype
= type_nullable_parser_nodes__TGt
.color
;
3406 idtype
= type_nullable_parser_nodes__TGt
.id
;
3407 if(var_tgtnode2
== NULL
) {
3410 if(cltype
>= var_tgtnode2
->type
->table_size
) {
3413 var2
= var_tgtnode2
->type
->type_table
[cltype
] == idtype
;
3417 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3418 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22872);
3421 var3
= NEW_parser_nodes__AGtMethid(&type_parser_nodes__AGtMethid
);
3422 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGtMethid__init_agtmethid
]))(var3
, var_tgtnode2
) /* init_agtmethid on <var3:AGtMethid>*/;
3423 CHECK_NEW_parser_nodes__AGtMethid(var3
);
3424 var_pmethidnode1
= var3
;
3425 var_node_list
= var_pmethidnode1
;
3426 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction538> */
3427 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3428 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3431 /* method parser#ReduceAction538#action for (self: Object, Parser) */
3432 void VIRTUAL_parser__ReduceAction538__action(val
* self
, val
* p0
) {
3433 parser__ReduceAction538__action(self
, p0
);
3436 /* method parser#ReduceAction539#action for (self: ReduceAction539, Parser) */
3437 void parser__ReduceAction539__action(val
* self
, val
* p0
) {
3438 val
* var_p
/* var p: Parser */;
3439 val
* var
/* : null */;
3440 val
* var_node_list
/* var node_list: nullable Object */;
3441 val
* var1
/* : nullable Object */;
3442 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3443 val
* var_tllnode2
/* var tllnode2: nullable Object */;
3444 short int var2
/* : Bool */;
3447 val
* var3
/* : ALlMethid */;
3448 val
* var_pmethidnode1
/* var pmethidnode1: nullable ALlMethid */;
3449 long var4
/* : Int */;
3450 long var5
/* : Int */;
3453 var_node_list
= var
;
3454 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3455 var_nodearraylist1
= var1
;
3456 var_tllnode2
= var_nodearraylist1
;
3457 /* <var_tllnode2:nullable Object> isa nullable TLl */
3458 cltype
= type_nullable_parser_nodes__TLl
.color
;
3459 idtype
= type_nullable_parser_nodes__TLl
.id
;
3460 if(var_tllnode2
== NULL
) {
3463 if(cltype
>= var_tllnode2
->type
->table_size
) {
3466 var2
= var_tllnode2
->type
->type_table
[cltype
] == idtype
;
3470 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3471 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22887);
3474 var3
= NEW_parser_nodes__ALlMethid(&type_parser_nodes__ALlMethid
);
3475 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALlMethid__init_allmethid
]))(var3
, var_tllnode2
) /* init_allmethid on <var3:ALlMethid>*/;
3476 CHECK_NEW_parser_nodes__ALlMethid(var3
);
3477 var_pmethidnode1
= var3
;
3478 var_node_list
= var_pmethidnode1
;
3479 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction539> */
3480 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3481 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3484 /* method parser#ReduceAction539#action for (self: Object, Parser) */
3485 void VIRTUAL_parser__ReduceAction539__action(val
* self
, val
* p0
) {
3486 parser__ReduceAction539__action(self
, p0
);
3489 /* method parser#ReduceAction540#action for (self: ReduceAction540, Parser) */
3490 void parser__ReduceAction540__action(val
* self
, val
* p0
) {
3491 val
* var_p
/* var p: Parser */;
3492 val
* var
/* : null */;
3493 val
* var_node_list
/* var node_list: nullable Object */;
3494 val
* var1
/* : nullable Object */;
3495 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3496 val
* var_tggnode2
/* var tggnode2: nullable Object */;
3497 short int var2
/* : Bool */;
3500 val
* var3
/* : AGgMethid */;
3501 val
* var_pmethidnode1
/* var pmethidnode1: nullable AGgMethid */;
3502 long var4
/* : Int */;
3503 long var5
/* : Int */;
3506 var_node_list
= var
;
3507 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3508 var_nodearraylist1
= var1
;
3509 var_tggnode2
= var_nodearraylist1
;
3510 /* <var_tggnode2:nullable Object> isa nullable TGg */
3511 cltype
= type_nullable_parser_nodes__TGg
.color
;
3512 idtype
= type_nullable_parser_nodes__TGg
.id
;
3513 if(var_tggnode2
== NULL
) {
3516 if(cltype
>= var_tggnode2
->type
->table_size
) {
3519 var2
= var_tggnode2
->type
->type_table
[cltype
] == idtype
;
3523 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3524 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22902);
3527 var3
= NEW_parser_nodes__AGgMethid(&type_parser_nodes__AGgMethid
);
3528 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AGgMethid__init_aggmethid
]))(var3
, var_tggnode2
) /* init_aggmethid on <var3:AGgMethid>*/;
3529 CHECK_NEW_parser_nodes__AGgMethid(var3
);
3530 var_pmethidnode1
= var3
;
3531 var_node_list
= var_pmethidnode1
;
3532 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction540> */
3533 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3534 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3537 /* method parser#ReduceAction540#action for (self: Object, Parser) */
3538 void VIRTUAL_parser__ReduceAction540__action(val
* self
, val
* p0
) {
3539 parser__ReduceAction540__action(self
, p0
);
3542 /* method parser#ReduceAction541#action for (self: ReduceAction541, Parser) */
3543 void parser__ReduceAction541__action(val
* self
, val
* p0
) {
3544 val
* var_p
/* var p: Parser */;
3545 val
* var
/* : null */;
3546 val
* var_node_list
/* var node_list: nullable Object */;
3547 val
* var1
/* : nullable Object */;
3548 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3549 val
* var2
/* : nullable Object */;
3550 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3551 val
* var_tobranode2
/* var tobranode2: nullable Object */;
3552 short int var3
/* : Bool */;
3555 val
* var_tcbranode3
/* var tcbranode3: nullable Object */;
3556 short int var4
/* : Bool */;
3559 val
* var7
/* : ABraMethid */;
3560 val
* var_pmethidnode1
/* var pmethidnode1: nullable ABraMethid */;
3561 long var8
/* : Int */;
3562 long var9
/* : Int */;
3565 var_node_list
= var
;
3566 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3567 var_nodearraylist2
= var1
;
3568 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3569 var_nodearraylist1
= var2
;
3570 var_tobranode2
= var_nodearraylist1
;
3571 /* <var_tobranode2:nullable Object> isa nullable TObra */
3572 cltype
= type_nullable_parser_nodes__TObra
.color
;
3573 idtype
= type_nullable_parser_nodes__TObra
.id
;
3574 if(var_tobranode2
== NULL
) {
3577 if(cltype
>= var_tobranode2
->type
->table_size
) {
3580 var3
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
3584 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3585 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22918);
3588 var_tcbranode3
= var_nodearraylist2
;
3589 /* <var_tcbranode3:nullable Object> isa nullable TCbra */
3590 cltype5
= type_nullable_parser_nodes__TCbra
.color
;
3591 idtype6
= type_nullable_parser_nodes__TCbra
.id
;
3592 if(var_tcbranode3
== NULL
) {
3595 if(cltype5
>= var_tcbranode3
->type
->table_size
) {
3598 var4
= var_tcbranode3
->type
->type_table
[cltype5
] == idtype6
;
3602 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3603 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22920);
3606 var7
= NEW_parser_nodes__ABraMethid(&type_parser_nodes__ABraMethid
);
3607 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABraMethid__init_abramethid
]))(var7
, var_tobranode2
, var_tcbranode3
) /* init_abramethid on <var7:ABraMethid>*/;
3608 CHECK_NEW_parser_nodes__ABraMethid(var7
);
3609 var_pmethidnode1
= var7
;
3610 var_node_list
= var_pmethidnode1
;
3611 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction541> */
3612 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3613 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3616 /* method parser#ReduceAction541#action for (self: Object, Parser) */
3617 void VIRTUAL_parser__ReduceAction541__action(val
* self
, val
* p0
) {
3618 parser__ReduceAction541__action(self
, p0
);
3621 /* method parser#ReduceAction542#action for (self: ReduceAction542, Parser) */
3622 void parser__ReduceAction542__action(val
* self
, val
* p0
) {
3623 val
* var_p
/* var p: Parser */;
3624 val
* var
/* : null */;
3625 val
* var_node_list
/* var node_list: nullable Object */;
3626 val
* var1
/* : nullable Object */;
3627 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3628 val
* var_tstarshipnode2
/* var tstarshipnode2: nullable Object */;
3629 short int var2
/* : Bool */;
3632 val
* var3
/* : AStarshipMethid */;
3633 val
* var_pmethidnode1
/* var pmethidnode1: nullable AStarshipMethid */;
3634 long var4
/* : Int */;
3635 long var5
/* : Int */;
3638 var_node_list
= var
;
3639 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3640 var_nodearraylist1
= var1
;
3641 var_tstarshipnode2
= var_nodearraylist1
;
3642 /* <var_tstarshipnode2:nullable Object> isa nullable TStarship */
3643 cltype
= type_nullable_parser_nodes__TStarship
.color
;
3644 idtype
= type_nullable_parser_nodes__TStarship
.id
;
3645 if(var_tstarshipnode2
== NULL
) {
3648 if(cltype
>= var_tstarshipnode2
->type
->table_size
) {
3651 var2
= var_tstarshipnode2
->type
->type_table
[cltype
] == idtype
;
3655 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3656 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22936);
3659 var3
= NEW_parser_nodes__AStarshipMethid(&type_parser_nodes__AStarshipMethid
);
3660 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AStarshipMethid__init_astarshipmethid
]))(var3
, var_tstarshipnode2
) /* init_astarshipmethid on <var3:AStarshipMethid>*/;
3661 CHECK_NEW_parser_nodes__AStarshipMethid(var3
);
3662 var_pmethidnode1
= var3
;
3663 var_node_list
= var_pmethidnode1
;
3664 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction542> */
3665 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
3666 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
3669 /* method parser#ReduceAction542#action for (self: Object, Parser) */
3670 void VIRTUAL_parser__ReduceAction542__action(val
* self
, val
* p0
) {
3671 parser__ReduceAction542__action(self
, p0
);
3674 /* method parser#ReduceAction543#action for (self: ReduceAction543, Parser) */
3675 void parser__ReduceAction543__action(val
* self
, val
* p0
) {
3676 val
* var_p
/* var p: Parser */;
3677 val
* var
/* : null */;
3678 val
* var_node_list
/* var node_list: nullable Object */;
3679 val
* var1
/* : nullable Object */;
3680 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3681 val
* var2
/* : nullable Object */;
3682 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3683 val
* var_tidnode2
/* var tidnode2: nullable Object */;
3684 short int var3
/* : Bool */;
3687 val
* var_tassignnode3
/* var tassignnode3: nullable Object */;
3688 short int var4
/* : Bool */;
3691 val
* var7
/* : AAssignMethid */;
3692 val
* var_pmethidnode1
/* var pmethidnode1: nullable AAssignMethid */;
3693 long var8
/* : Int */;
3694 long var9
/* : Int */;
3697 var_node_list
= var
;
3698 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3699 var_nodearraylist2
= var1
;
3700 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3701 var_nodearraylist1
= var2
;
3702 var_tidnode2
= var_nodearraylist1
;
3703 /* <var_tidnode2:nullable Object> isa nullable TId */
3704 cltype
= type_nullable_parser_nodes__TId
.color
;
3705 idtype
= type_nullable_parser_nodes__TId
.id
;
3706 if(var_tidnode2
== NULL
) {
3709 if(cltype
>= var_tidnode2
->type
->table_size
) {
3712 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
3716 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3717 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22952);
3720 var_tassignnode3
= var_nodearraylist2
;
3721 /* <var_tassignnode3:nullable Object> isa nullable TAssign */
3722 cltype5
= type_nullable_parser_nodes__TAssign
.color
;
3723 idtype6
= type_nullable_parser_nodes__TAssign
.id
;
3724 if(var_tassignnode3
== NULL
) {
3727 if(cltype5
>= var_tassignnode3
->type
->table_size
) {
3730 var4
= var_tassignnode3
->type
->type_table
[cltype5
] == idtype6
;
3734 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3735 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22954);
3738 var7
= NEW_parser_nodes__AAssignMethid(&type_parser_nodes__AAssignMethid
);
3739 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AAssignMethid__init_aassignmethid
]))(var7
, var_tidnode2
, var_tassignnode3
) /* init_aassignmethid on <var7:AAssignMethid>*/;
3740 CHECK_NEW_parser_nodes__AAssignMethid(var7
);
3741 var_pmethidnode1
= var7
;
3742 var_node_list
= var_pmethidnode1
;
3743 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction543> */
3744 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
3745 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
3748 /* method parser#ReduceAction543#action for (self: Object, Parser) */
3749 void VIRTUAL_parser__ReduceAction543__action(val
* self
, val
* p0
) {
3750 parser__ReduceAction543__action(self
, p0
);
3753 /* method parser#ReduceAction544#action for (self: ReduceAction544, Parser) */
3754 void parser__ReduceAction544__action(val
* self
, val
* p0
) {
3755 val
* var_p
/* var p: Parser */;
3756 val
* var
/* : null */;
3757 val
* var_node_list
/* var node_list: nullable Object */;
3758 val
* var1
/* : nullable Object */;
3759 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3760 val
* var2
/* : nullable Object */;
3761 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3762 val
* var3
/* : nullable Object */;
3763 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3764 val
* var_tobranode2
/* var tobranode2: nullable Object */;
3765 short int var4
/* : Bool */;
3768 val
* var_tcbranode3
/* var tcbranode3: nullable Object */;
3769 short int var5
/* : Bool */;
3772 val
* var_tassignnode4
/* var tassignnode4: nullable Object */;
3773 short int var8
/* : Bool */;
3776 val
* var11
/* : ABraassignMethid */;
3777 val
* var_pmethidnode1
/* var pmethidnode1: nullable ABraassignMethid */;
3778 long var12
/* : Int */;
3779 long var13
/* : Int */;
3782 var_node_list
= var
;
3783 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3784 var_nodearraylist3
= var1
;
3785 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3786 var_nodearraylist2
= var2
;
3787 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3788 var_nodearraylist1
= var3
;
3789 var_tobranode2
= var_nodearraylist1
;
3790 /* <var_tobranode2:nullable Object> isa nullable TObra */
3791 cltype
= type_nullable_parser_nodes__TObra
.color
;
3792 idtype
= type_nullable_parser_nodes__TObra
.id
;
3793 if(var_tobranode2
== NULL
) {
3796 if(cltype
>= var_tobranode2
->type
->table_size
) {
3799 var4
= var_tobranode2
->type
->type_table
[cltype
] == idtype
;
3803 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3804 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22972);
3807 var_tcbranode3
= var_nodearraylist2
;
3808 /* <var_tcbranode3:nullable Object> isa nullable TCbra */
3809 cltype6
= type_nullable_parser_nodes__TCbra
.color
;
3810 idtype7
= type_nullable_parser_nodes__TCbra
.id
;
3811 if(var_tcbranode3
== NULL
) {
3814 if(cltype6
>= var_tcbranode3
->type
->table_size
) {
3817 var5
= var_tcbranode3
->type
->type_table
[cltype6
] == idtype7
;
3821 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3822 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22974);
3825 var_tassignnode4
= var_nodearraylist3
;
3826 /* <var_tassignnode4:nullable Object> isa nullable TAssign */
3827 cltype9
= type_nullable_parser_nodes__TAssign
.color
;
3828 idtype10
= type_nullable_parser_nodes__TAssign
.id
;
3829 if(var_tassignnode4
== NULL
) {
3832 if(cltype9
>= var_tassignnode4
->type
->table_size
) {
3835 var8
= var_tassignnode4
->type
->type_table
[cltype9
] == idtype10
;
3839 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3840 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22976);
3843 var11
= NEW_parser_nodes__ABraassignMethid(&type_parser_nodes__ABraassignMethid
);
3844 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABraassignMethid__init_abraassignmethid
]))(var11
, var_tobranode2
, var_tcbranode3
, var_tassignnode4
) /* init_abraassignmethid on <var11:ABraassignMethid>*/;
3845 CHECK_NEW_parser_nodes__ABraassignMethid(var11
);
3846 var_pmethidnode1
= var11
;
3847 var_node_list
= var_pmethidnode1
;
3848 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction544> */
3849 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
3850 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
3853 /* method parser#ReduceAction544#action for (self: Object, Parser) */
3854 void VIRTUAL_parser__ReduceAction544__action(val
* self
, val
* p0
) {
3855 parser__ReduceAction544__action(self
, p0
);
3858 /* method parser#ReduceAction545#action for (self: ReduceAction545, Parser) */
3859 void parser__ReduceAction545__action(val
* self
, val
* p0
) {
3860 val
* var_p
/* var p: Parser */;
3861 val
* var
/* : null */;
3862 val
* var_node_list
/* var node_list: nullable Object */;
3863 val
* var1
/* : nullable Object */;
3864 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3865 val
* var2
/* : nullable Object */;
3866 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3867 val
* var3
/* : nullable Object */;
3868 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3869 val
* var4
/* : nullable Object */;
3870 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3871 val
* var5
/* : nullable Object */;
3872 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3873 val
* var6
/* : Array[Object] */;
3874 val
* var_listnode3
/* var listnode3: Array[Object] */;
3875 val
* var_toparnode2
/* var toparnode2: nullable Object */;
3876 short int var7
/* : Bool */;
3879 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
3880 short int var8
/* : Bool */;
3883 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
3884 short int var11
/* : Bool */;
3887 val
* var14
/* : ASignature */;
3888 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
3889 long var15
/* : Int */;
3890 long var16
/* : Int */;
3893 var_node_list
= var
;
3894 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3895 var_nodearraylist5
= var1
;
3896 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3897 var_nodearraylist4
= var2
;
3898 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3899 var_nodearraylist3
= var3
;
3900 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3901 var_nodearraylist2
= var4
;
3902 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
3903 var_nodearraylist1
= var5
;
3904 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
3905 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
3906 CHECK_NEW_array__Array(var6
);
3907 var_listnode3
= var6
;
3908 var_toparnode2
= var_nodearraylist1
;
3909 /* <var_toparnode2:nullable Object> isa nullable TOpar */
3910 cltype
= type_nullable_parser_nodes__TOpar
.color
;
3911 idtype
= type_nullable_parser_nodes__TOpar
.id
;
3912 if(var_toparnode2
== NULL
) {
3915 if(cltype
>= var_toparnode2
->type
->table_size
) {
3918 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
3922 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3923 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 22998);
3926 var_tcparnode4
= var_nodearraylist3
;
3927 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
3928 cltype9
= type_nullable_parser_nodes__TCpar
.color
;
3929 idtype10
= type_nullable_parser_nodes__TCpar
.id
;
3930 if(var_tcparnode4
== NULL
) {
3933 if(cltype9
>= var_tcparnode4
->type
->table_size
) {
3936 var8
= var_tcparnode4
->type
->type_table
[cltype9
] == idtype10
;
3940 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3941 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23000);
3944 var_ptypenode5
= var_nodearraylist4
;
3945 /* <var_ptypenode5:nullable Object> isa nullable AType */
3946 cltype12
= type_nullable_parser_nodes__AType
.color
;
3947 idtype13
= type_nullable_parser_nodes__AType
.id
;
3948 if(var_ptypenode5
== NULL
) {
3951 if(cltype12
>= var_ptypenode5
->type
->table_size
) {
3954 var11
= var_ptypenode5
->type
->type_table
[cltype12
] == idtype13
;
3958 fprintf(stderr
, "Runtime error: %s", "Assert failed");
3959 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23002);
3962 var14
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
3963 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var14
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var_ptypenode5
) /* init_asignature on <var14:ASignature>*/;
3964 CHECK_NEW_parser_nodes__ASignature(var14
);
3965 var_psignaturenode1
= var14
;
3966 var_node_list
= var_psignaturenode1
;
3967 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction545> */
3968 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
3969 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
3972 /* method parser#ReduceAction545#action for (self: Object, Parser) */
3973 void VIRTUAL_parser__ReduceAction545__action(val
* self
, val
* p0
) {
3974 parser__ReduceAction545__action(self
, p0
);
3977 /* method parser#ReduceAction546#action for (self: ReduceAction546, Parser) */
3978 void parser__ReduceAction546__action(val
* self
, val
* p0
) {
3979 val
* var_p
/* var p: Parser */;
3980 val
* var
/* : null */;
3981 val
* var_node_list
/* var node_list: nullable Object */;
3982 val
* var1
/* : nullable Object */;
3983 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3984 val
* var2
/* : nullable Object */;
3985 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3986 val
* var3
/* : nullable Object */;
3987 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3988 val
* var4
/* : nullable Object */;
3989 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3990 val
* var5
/* : nullable Object */;
3991 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3992 val
* var6
/* : nullable Object */;
3993 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3994 val
* var7
/* : Array[Object] */;
3995 val
* var_listnode4
/* var listnode4: Array[Object] */;
3996 val
* var_toparnode2
/* var toparnode2: nullable Object */;
3997 short int var8
/* : Bool */;
4000 val
* var_listnode3
/* var listnode3: nullable Object */;
4001 short int var9
/* : Bool */;
4004 val
* var12
/* : Array[Object] */;
4005 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
4006 short int var13
/* : Bool */;
4009 val
* var_ptypenode6
/* var ptypenode6: nullable Object */;
4010 short int var16
/* : Bool */;
4013 val
* var19
/* : ASignature */;
4014 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
4015 long var20
/* : Int */;
4016 long var21
/* : Int */;
4019 var_node_list
= var
;
4020 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4021 var_nodearraylist6
= var1
;
4022 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4023 var_nodearraylist5
= var2
;
4024 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4025 var_nodearraylist4
= var3
;
4026 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4027 var_nodearraylist3
= var4
;
4028 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4029 var_nodearraylist2
= var5
;
4030 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4031 var_nodearraylist1
= var6
;
4032 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
4033 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
4034 CHECK_NEW_array__Array(var7
);
4035 var_listnode4
= var7
;
4036 var_toparnode2
= var_nodearraylist1
;
4037 /* <var_toparnode2:nullable Object> isa nullable TOpar */
4038 cltype
= type_nullable_parser_nodes__TOpar
.color
;
4039 idtype
= type_nullable_parser_nodes__TOpar
.id
;
4040 if(var_toparnode2
== NULL
) {
4043 if(cltype
>= var_toparnode2
->type
->table_size
) {
4046 var8
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
4050 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4051 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23026);
4054 var_listnode3
= var_nodearraylist3
;
4055 /* <var_listnode3:nullable Object> isa Array[Object] */
4056 cltype10
= type_array__Arraykernel__Object
.color
;
4057 idtype11
= type_array__Arraykernel__Object
.id
;
4058 if(var_listnode3
== NULL
) {
4061 if(cltype10
>= var_listnode3
->type
->table_size
) {
4064 var9
= var_listnode3
->type
->type_table
[cltype10
] == idtype11
;
4068 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4069 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23028);
4072 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction546>*/;
4073 var_listnode4
= var12
;
4074 var_tcparnode5
= var_nodearraylist4
;
4075 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
4076 cltype14
= type_nullable_parser_nodes__TCpar
.color
;
4077 idtype15
= type_nullable_parser_nodes__TCpar
.id
;
4078 if(var_tcparnode5
== NULL
) {
4081 if(cltype14
>= var_tcparnode5
->type
->table_size
) {
4084 var13
= var_tcparnode5
->type
->type_table
[cltype14
] == idtype15
;
4088 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4089 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23031);
4092 var_ptypenode6
= var_nodearraylist5
;
4093 /* <var_ptypenode6:nullable Object> isa nullable AType */
4094 cltype17
= type_nullable_parser_nodes__AType
.color
;
4095 idtype18
= type_nullable_parser_nodes__AType
.id
;
4096 if(var_ptypenode6
== NULL
) {
4099 if(cltype17
>= var_ptypenode6
->type
->table_size
) {
4102 var16
= var_ptypenode6
->type
->type_table
[cltype17
] == idtype18
;
4106 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4107 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23033);
4110 var19
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
4111 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var19
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var19
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var_ptypenode6
) /* init_asignature on <var19:ASignature>*/;
4112 CHECK_NEW_parser_nodes__ASignature(var19
);
4113 var_psignaturenode1
= var19
;
4114 var_node_list
= var_psignaturenode1
;
4115 var20
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction546> */
4116 var21
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var20
) /* go_to on <var_p:Parser>*/;
4117 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var21
, var_node_list
) /* push on <var_p:Parser>*/;
4120 /* method parser#ReduceAction546#action for (self: Object, Parser) */
4121 void VIRTUAL_parser__ReduceAction546__action(val
* self
, val
* p0
) {
4122 parser__ReduceAction546__action(self
, p0
);
4125 /* method parser#ReduceAction547#action for (self: ReduceAction547, Parser) */
4126 void parser__ReduceAction547__action(val
* self
, val
* p0
) {
4127 val
* var_p
/* var p: Parser */;
4128 val
* var
/* : null */;
4129 val
* var_node_list
/* var node_list: nullable Object */;
4130 val
* var1
/* : nullable Object */;
4131 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4132 val
* var2
/* : nullable Object */;
4133 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4134 val
* var3
/* : nullable Object */;
4135 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4136 val
* var4
/* : nullable Object */;
4137 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4138 val
* var5
/* : Array[Object] */;
4139 val
* var_listnode3
/* var listnode3: Array[Object] */;
4140 val
* var_toparnode2
/* var toparnode2: nullable Object */;
4141 short int var6
/* : Bool */;
4144 val
* var_tcparnode4
/* var tcparnode4: nullable Object */;
4145 short int var7
/* : Bool */;
4148 val
* var10
/* : ASignature */;
4149 val
* var11
/* : null */;
4150 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
4151 long var12
/* : Int */;
4152 long var13
/* : Int */;
4155 var_node_list
= var
;
4156 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4157 var_nodearraylist4
= var1
;
4158 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4159 var_nodearraylist3
= var2
;
4160 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4161 var_nodearraylist2
= var3
;
4162 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4163 var_nodearraylist1
= var4
;
4164 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
4165 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
4166 CHECK_NEW_array__Array(var5
);
4167 var_listnode3
= var5
;
4168 var_toparnode2
= var_nodearraylist1
;
4169 /* <var_toparnode2:nullable Object> isa nullable TOpar */
4170 cltype
= type_nullable_parser_nodes__TOpar
.color
;
4171 idtype
= type_nullable_parser_nodes__TOpar
.id
;
4172 if(var_toparnode2
== NULL
) {
4175 if(cltype
>= var_toparnode2
->type
->table_size
) {
4178 var6
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
4182 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4183 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23055);
4186 var_tcparnode4
= var_nodearraylist3
;
4187 /* <var_tcparnode4:nullable Object> isa nullable TCpar */
4188 cltype8
= type_nullable_parser_nodes__TCpar
.color
;
4189 idtype9
= type_nullable_parser_nodes__TCpar
.id
;
4190 if(var_tcparnode4
== NULL
) {
4193 if(cltype8
>= var_tcparnode4
->type
->table_size
) {
4196 var7
= var_tcparnode4
->type
->type_table
[cltype8
] == idtype9
;
4200 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4201 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23057);
4204 var10
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
4206 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var10
, var_toparnode2
, var_listnode3
, var_tcparnode4
, var11
) /* init_asignature on <var10:ASignature>*/;
4207 CHECK_NEW_parser_nodes__ASignature(var10
);
4208 var_psignaturenode1
= var10
;
4209 var_node_list
= var_psignaturenode1
;
4210 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction547> */
4211 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
4212 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
4215 /* method parser#ReduceAction547#action for (self: Object, Parser) */
4216 void VIRTUAL_parser__ReduceAction547__action(val
* self
, val
* p0
) {
4217 parser__ReduceAction547__action(self
, p0
);
4220 /* method parser#ReduceAction548#action for (self: ReduceAction548, Parser) */
4221 void parser__ReduceAction548__action(val
* self
, val
* p0
) {
4222 val
* var_p
/* var p: Parser */;
4223 val
* var
/* : null */;
4224 val
* var_node_list
/* var node_list: nullable Object */;
4225 val
* var1
/* : nullable Object */;
4226 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4227 val
* var2
/* : nullable Object */;
4228 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4229 val
* var3
/* : nullable Object */;
4230 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4231 val
* var4
/* : nullable Object */;
4232 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4233 val
* var5
/* : nullable Object */;
4234 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4235 val
* var6
/* : Array[Object] */;
4236 val
* var_listnode4
/* var listnode4: Array[Object] */;
4237 val
* var_toparnode2
/* var toparnode2: nullable Object */;
4238 short int var7
/* : Bool */;
4241 val
* var_listnode3
/* var listnode3: nullable Object */;
4242 short int var8
/* : Bool */;
4245 val
* var11
/* : Array[Object] */;
4246 val
* var_tcparnode5
/* var tcparnode5: nullable Object */;
4247 short int var12
/* : Bool */;
4250 val
* var15
/* : ASignature */;
4251 val
* var16
/* : null */;
4252 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
4253 long var17
/* : Int */;
4254 long var18
/* : Int */;
4257 var_node_list
= var
;
4258 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4259 var_nodearraylist5
= var1
;
4260 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4261 var_nodearraylist4
= var2
;
4262 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4263 var_nodearraylist3
= var3
;
4264 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4265 var_nodearraylist2
= var4
;
4266 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4267 var_nodearraylist1
= var5
;
4268 var6
= NEW_array__Array(&type_array__Arraykernel__Object
);
4269 ((void (*)(val
*))(var6
->class->vft
[COLOR_array__Array__init
]))(var6
) /* init on <var6:Array[Object]>*/;
4270 CHECK_NEW_array__Array(var6
);
4271 var_listnode4
= var6
;
4272 var_toparnode2
= var_nodearraylist1
;
4273 /* <var_toparnode2:nullable Object> isa nullable TOpar */
4274 cltype
= type_nullable_parser_nodes__TOpar
.color
;
4275 idtype
= type_nullable_parser_nodes__TOpar
.id
;
4276 if(var_toparnode2
== NULL
) {
4279 if(cltype
>= var_toparnode2
->type
->table_size
) {
4282 var7
= var_toparnode2
->type
->type_table
[cltype
] == idtype
;
4286 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4287 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23080);
4290 var_listnode3
= var_nodearraylist3
;
4291 /* <var_listnode3:nullable Object> isa Array[Object] */
4292 cltype9
= type_array__Arraykernel__Object
.color
;
4293 idtype10
= type_array__Arraykernel__Object
.id
;
4294 if(var_listnode3
== NULL
) {
4297 if(cltype9
>= var_listnode3
->type
->table_size
) {
4300 var8
= var_listnode3
->type
->type_table
[cltype9
] == idtype10
;
4304 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4305 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23082);
4308 var11
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction548>*/;
4309 var_listnode4
= var11
;
4310 var_tcparnode5
= var_nodearraylist4
;
4311 /* <var_tcparnode5:nullable Object> isa nullable TCpar */
4312 cltype13
= type_nullable_parser_nodes__TCpar
.color
;
4313 idtype14
= type_nullable_parser_nodes__TCpar
.id
;
4314 if(var_tcparnode5
== NULL
) {
4317 if(cltype13
>= var_tcparnode5
->type
->table_size
) {
4320 var12
= var_tcparnode5
->type
->type_table
[cltype13
] == idtype14
;
4324 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4325 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23085);
4328 var15
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
4330 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var15
, var_toparnode2
, var_listnode4
, var_tcparnode5
, var16
) /* init_asignature on <var15:ASignature>*/;
4331 CHECK_NEW_parser_nodes__ASignature(var15
);
4332 var_psignaturenode1
= var15
;
4333 var_node_list
= var_psignaturenode1
;
4334 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction548> */
4335 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
4336 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
4339 /* method parser#ReduceAction548#action for (self: Object, Parser) */
4340 void VIRTUAL_parser__ReduceAction548__action(val
* self
, val
* p0
) {
4341 parser__ReduceAction548__action(self
, p0
);
4344 /* method parser#ReduceAction549#action for (self: ReduceAction549, Parser) */
4345 void parser__ReduceAction549__action(val
* self
, val
* p0
) {
4346 val
* var_p
/* var p: Parser */;
4347 val
* var
/* : null */;
4348 val
* var_node_list
/* var node_list: nullable Object */;
4349 val
* var1
/* : nullable Object */;
4350 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4351 val
* var2
/* : nullable Object */;
4352 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4353 val
* var3
/* : Array[Object] */;
4354 val
* var_listnode3
/* var listnode3: Array[Object] */;
4355 val
* var_ptypenode5
/* var ptypenode5: nullable Object */;
4356 short int var4
/* : Bool */;
4359 val
* var5
/* : ASignature */;
4360 val
* var6
/* : null */;
4361 val
* var7
/* : null */;
4362 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
4363 long var8
/* : Int */;
4364 long var9
/* : Int */;
4367 var_node_list
= var
;
4368 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4369 var_nodearraylist2
= var1
;
4370 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4371 var_nodearraylist1
= var2
;
4372 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
4373 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
4374 CHECK_NEW_array__Array(var3
);
4375 var_listnode3
= var3
;
4376 var_ptypenode5
= var_nodearraylist1
;
4377 /* <var_ptypenode5:nullable Object> isa nullable AType */
4378 cltype
= type_nullable_parser_nodes__AType
.color
;
4379 idtype
= type_nullable_parser_nodes__AType
.id
;
4380 if(var_ptypenode5
== NULL
) {
4383 if(cltype
>= var_ptypenode5
->type
->table_size
) {
4386 var4
= var_ptypenode5
->type
->type_table
[cltype
] == idtype
;
4390 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4391 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23105);
4394 var5
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
4397 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var5
, var6
, var_listnode3
, var7
, var_ptypenode5
) /* init_asignature on <var5:ASignature>*/;
4398 CHECK_NEW_parser_nodes__ASignature(var5
);
4399 var_psignaturenode1
= var5
;
4400 var_node_list
= var_psignaturenode1
;
4401 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction549> */
4402 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
4403 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
4406 /* method parser#ReduceAction549#action for (self: Object, Parser) */
4407 void VIRTUAL_parser__ReduceAction549__action(val
* self
, val
* p0
) {
4408 parser__ReduceAction549__action(self
, p0
);
4411 /* method parser#ReduceAction550#action for (self: ReduceAction550, Parser) */
4412 void parser__ReduceAction550__action(val
* self
, val
* p0
) {
4413 val
* var_p
/* var p: Parser */;
4414 val
* var
/* : null */;
4415 val
* var_node_list
/* var node_list: nullable Object */;
4416 val
* var1
/* : nullable Object */;
4417 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4418 val
* var2
/* : Array[Object] */;
4419 val
* var_listnode3
/* var listnode3: Array[Object] */;
4420 val
* var3
/* : ASignature */;
4421 val
* var4
/* : null */;
4422 val
* var5
/* : null */;
4423 val
* var6
/* : null */;
4424 val
* var_psignaturenode1
/* var psignaturenode1: nullable ASignature */;
4425 long var7
/* : Int */;
4426 long var8
/* : Int */;
4429 var_node_list
= var
;
4430 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4431 var_nodearraylist1
= var1
;
4432 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
4433 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
4434 CHECK_NEW_array__Array(var2
);
4435 var_listnode3
= var2
;
4436 var3
= NEW_parser_nodes__ASignature(&type_parser_nodes__ASignature
);
4440 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASignature__init_asignature
]))(var3
, var4
, var_listnode3
, var5
, var6
) /* init_asignature on <var3:ASignature>*/;
4441 CHECK_NEW_parser_nodes__ASignature(var3
);
4442 var_psignaturenode1
= var3
;
4443 var_node_list
= var_psignaturenode1
;
4444 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction550> */
4445 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
4446 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
4449 /* method parser#ReduceAction550#action for (self: Object, Parser) */
4450 void VIRTUAL_parser__ReduceAction550__action(val
* self
, val
* p0
) {
4451 parser__ReduceAction550__action(self
, p0
);
4454 /* method parser#ReduceAction551#action for (self: ReduceAction551, Parser) */
4455 void parser__ReduceAction551__action(val
* self
, val
* p0
) {
4456 val
* var_p
/* var p: Parser */;
4457 val
* var
/* : null */;
4458 val
* var_node_list
/* var node_list: nullable Object */;
4459 val
* var1
/* : nullable Object */;
4460 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4461 val
* var2
/* : nullable Object */;
4462 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4463 val
* var3
/* : Array[Object] */;
4464 val
* var_listnode2
/* var listnode2: Array[Object] */;
4465 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
4466 val
* var4
/* : null */;
4467 short int var5
/* : Bool */;
4468 long var6
/* : Int */;
4469 long var7
/* : Int */;
4472 var_node_list
= var
;
4473 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4474 var_nodearraylist2
= var1
;
4475 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4476 var_nodearraylist1
= var2
;
4477 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
4478 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
4479 CHECK_NEW_array__Array(var3
);
4480 var_listnode2
= var3
;
4481 var_pparamnode1
= var_nodearraylist1
;
4483 if (var_pparamnode1
== NULL
) {
4484 var5
= 0; /* is null */
4486 var5
= 1; /* arg is null and recv is not */
4489 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_pparamnode1
) /* add on <var_listnode2:Array[Object]>*/;
4492 var_node_list
= var_listnode2
;
4493 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction551> */
4494 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
4495 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
4498 /* method parser#ReduceAction551#action for (self: Object, Parser) */
4499 void VIRTUAL_parser__ReduceAction551__action(val
* self
, val
* p0
) {
4500 parser__ReduceAction551__action(self
, p0
);
4503 /* method parser#ReduceAction552#action for (self: ReduceAction552, Parser) */
4504 void parser__ReduceAction552__action(val
* self
, val
* p0
) {
4505 val
* var_p
/* var p: Parser */;
4506 val
* var
/* : null */;
4507 val
* var_node_list
/* var node_list: nullable Object */;
4508 val
* var1
/* : nullable Object */;
4509 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4510 val
* var2
/* : nullable Object */;
4511 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4512 val
* var3
/* : nullable Object */;
4513 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4514 val
* var4
/* : Array[Object] */;
4515 val
* var_listnode3
/* var listnode3: Array[Object] */;
4516 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
4517 val
* var_listnode2
/* var listnode2: nullable Object */;
4518 short int var5
/* : Bool */;
4521 val
* var6
/* : null */;
4522 short int var7
/* : Bool */;
4523 val
* var8
/* : Array[Object] */;
4524 long var9
/* : Int */;
4525 long var10
/* : Int */;
4528 var_node_list
= var
;
4529 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4530 var_nodearraylist3
= var1
;
4531 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4532 var_nodearraylist2
= var2
;
4533 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4534 var_nodearraylist1
= var3
;
4535 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
4536 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
4537 CHECK_NEW_array__Array(var4
);
4538 var_listnode3
= var4
;
4539 var_pparamnode1
= var_nodearraylist1
;
4540 var_listnode2
= var_nodearraylist2
;
4541 /* <var_listnode2:nullable Object> isa Array[Object] */
4542 cltype
= type_array__Arraykernel__Object
.color
;
4543 idtype
= type_array__Arraykernel__Object
.id
;
4544 if(var_listnode2
== NULL
) {
4547 if(cltype
>= var_listnode2
->type
->table_size
) {
4550 var5
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
4554 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4555 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23160);
4559 if (var_pparamnode1
== NULL
) {
4560 var7
= 0; /* is null */
4562 var7
= 1; /* arg is null and recv is not */
4565 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pparamnode1
) /* add on <var_listnode3:Array[Object]>*/;
4568 var8
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction552>*/;
4569 var_listnode3
= var8
;
4570 var_node_list
= var_listnode3
;
4571 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction552> */
4572 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
4573 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
4576 /* method parser#ReduceAction552#action for (self: Object, Parser) */
4577 void VIRTUAL_parser__ReduceAction552__action(val
* self
, val
* p0
) {
4578 parser__ReduceAction552__action(self
, p0
);
4581 /* method parser#ReduceAction553#action for (self: ReduceAction553, Parser) */
4582 void parser__ReduceAction553__action(val
* self
, val
* p0
) {
4583 val
* var_p
/* var p: Parser */;
4584 val
* var
/* : null */;
4585 val
* var_node_list
/* var node_list: nullable Object */;
4586 val
* var1
/* : nullable Object */;
4587 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4588 val
* var2
/* : nullable Object */;
4589 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4590 val
* var3
/* : nullable Object */;
4591 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4592 val
* var_pparamnode1
/* var pparamnode1: nullable Object */;
4593 long var4
/* : Int */;
4594 long var5
/* : Int */;
4597 var_node_list
= var
;
4598 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4599 var_nodearraylist3
= var1
;
4600 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4601 var_nodearraylist2
= var2
;
4602 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4603 var_nodearraylist1
= var3
;
4604 var_pparamnode1
= var_nodearraylist3
;
4605 var_node_list
= var_pparamnode1
;
4606 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction553> */
4607 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
4608 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
4611 /* method parser#ReduceAction553#action for (self: Object, Parser) */
4612 void VIRTUAL_parser__ReduceAction553__action(val
* self
, val
* p0
) {
4613 parser__ReduceAction553__action(self
, p0
);
4616 /* method parser#ReduceAction554#action for (self: ReduceAction554, Parser) */
4617 void parser__ReduceAction554__action(val
* self
, val
* p0
) {
4618 val
* var_p
/* var p: Parser */;
4619 val
* var
/* : null */;
4620 val
* var_node_list
/* var node_list: nullable Object */;
4621 val
* var1
/* : nullable Object */;
4622 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4623 val
* var_tidnode2
/* var tidnode2: nullable Object */;
4624 short int var2
/* : Bool */;
4627 val
* var3
/* : AParam */;
4628 val
* var4
/* : null */;
4629 val
* var5
/* : null */;
4630 val
* var6
/* : null */;
4631 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
4632 long var7
/* : Int */;
4633 long var8
/* : Int */;
4636 var_node_list
= var
;
4637 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4638 var_nodearraylist1
= var1
;
4639 var_tidnode2
= var_nodearraylist1
;
4640 /* <var_tidnode2:nullable Object> isa nullable TId */
4641 cltype
= type_nullable_parser_nodes__TId
.color
;
4642 idtype
= type_nullable_parser_nodes__TId
.id
;
4643 if(var_tidnode2
== NULL
) {
4646 if(cltype
>= var_tidnode2
->type
->table_size
) {
4649 var2
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
4653 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4654 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23189);
4657 var3
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
4661 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var3
, var_tidnode2
, var4
, var5
, var6
) /* init_aparam on <var3:AParam>*/;
4662 CHECK_NEW_parser_nodes__AParam(var3
);
4663 var_pparamnode1
= var3
;
4664 var_node_list
= var_pparamnode1
;
4665 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction554> */
4666 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
4667 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
4670 /* method parser#ReduceAction554#action for (self: Object, Parser) */
4671 void VIRTUAL_parser__ReduceAction554__action(val
* self
, val
* p0
) {
4672 parser__ReduceAction554__action(self
, p0
);
4675 /* method parser#ReduceAction555#action for (self: ReduceAction555, Parser) */
4676 void parser__ReduceAction555__action(val
* self
, val
* p0
) {
4677 val
* var_p
/* var p: Parser */;
4678 val
* var
/* : null */;
4679 val
* var_node_list
/* var node_list: nullable Object */;
4680 val
* var1
/* : nullable Object */;
4681 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4682 val
* var2
/* : nullable Object */;
4683 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4684 val
* var_tidnode2
/* var tidnode2: nullable Object */;
4685 short int var3
/* : Bool */;
4688 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
4689 short int var4
/* : Bool */;
4692 val
* var7
/* : AParam */;
4693 val
* var8
/* : null */;
4694 val
* var9
/* : null */;
4695 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
4696 long var10
/* : Int */;
4697 long var11
/* : Int */;
4700 var_node_list
= var
;
4701 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4702 var_nodearraylist2
= var1
;
4703 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4704 var_nodearraylist1
= var2
;
4705 var_tidnode2
= var_nodearraylist1
;
4706 /* <var_tidnode2:nullable Object> isa nullable TId */
4707 cltype
= type_nullable_parser_nodes__TId
.color
;
4708 idtype
= type_nullable_parser_nodes__TId
.id
;
4709 if(var_tidnode2
== NULL
) {
4712 if(cltype
>= var_tidnode2
->type
->table_size
) {
4715 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
4719 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4720 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23208);
4723 var_pannotationsnode5
= var_nodearraylist2
;
4724 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
4725 cltype5
= type_nullable_parser_nodes__AAnnotations
.color
;
4726 idtype6
= type_nullable_parser_nodes__AAnnotations
.id
;
4727 if(var_pannotationsnode5
== NULL
) {
4730 if(cltype5
>= var_pannotationsnode5
->type
->table_size
) {
4733 var4
= var_pannotationsnode5
->type
->type_table
[cltype5
] == idtype6
;
4737 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4738 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23210);
4741 var7
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
4744 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var7
, var_tidnode2
, var8
, var9
, var_pannotationsnode5
) /* init_aparam on <var7:AParam>*/;
4745 CHECK_NEW_parser_nodes__AParam(var7
);
4746 var_pparamnode1
= var7
;
4747 var_node_list
= var_pparamnode1
;
4748 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction555> */
4749 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
4750 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
4753 /* method parser#ReduceAction555#action for (self: Object, Parser) */
4754 void VIRTUAL_parser__ReduceAction555__action(val
* self
, val
* p0
) {
4755 parser__ReduceAction555__action(self
, p0
);
4758 /* method parser#ReduceAction556#action for (self: ReduceAction556, Parser) */
4759 void parser__ReduceAction556__action(val
* self
, val
* p0
) {
4760 val
* var_p
/* var p: Parser */;
4761 val
* var
/* : null */;
4762 val
* var_node_list
/* var node_list: nullable Object */;
4763 val
* var1
/* : nullable Object */;
4764 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4765 val
* var2
/* : nullable Object */;
4766 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4767 val
* var_tidnode2
/* var tidnode2: nullable Object */;
4768 short int var3
/* : Bool */;
4771 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
4772 short int var4
/* : Bool */;
4775 val
* var7
/* : AParam */;
4776 val
* var8
/* : null */;
4777 val
* var9
/* : null */;
4778 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
4779 long var10
/* : Int */;
4780 long var11
/* : Int */;
4783 var_node_list
= var
;
4784 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4785 var_nodearraylist2
= var1
;
4786 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4787 var_nodearraylist1
= var2
;
4788 var_tidnode2
= var_nodearraylist1
;
4789 /* <var_tidnode2:nullable Object> isa nullable TId */
4790 cltype
= type_nullable_parser_nodes__TId
.color
;
4791 idtype
= type_nullable_parser_nodes__TId
.id
;
4792 if(var_tidnode2
== NULL
) {
4795 if(cltype
>= var_tidnode2
->type
->table_size
) {
4798 var3
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
4802 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4803 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23229);
4806 var_ptypenode3
= var_nodearraylist2
;
4807 /* <var_ptypenode3:nullable Object> isa nullable AType */
4808 cltype5
= type_nullable_parser_nodes__AType
.color
;
4809 idtype6
= type_nullable_parser_nodes__AType
.id
;
4810 if(var_ptypenode3
== NULL
) {
4813 if(cltype5
>= var_ptypenode3
->type
->table_size
) {
4816 var4
= var_ptypenode3
->type
->type_table
[cltype5
] == idtype6
;
4820 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4821 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23231);
4824 var7
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
4827 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var7
, var_tidnode2
, var_ptypenode3
, var8
, var9
) /* init_aparam on <var7:AParam>*/;
4828 CHECK_NEW_parser_nodes__AParam(var7
);
4829 var_pparamnode1
= var7
;
4830 var_node_list
= var_pparamnode1
;
4831 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction556> */
4832 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
4833 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
4836 /* method parser#ReduceAction556#action for (self: Object, Parser) */
4837 void VIRTUAL_parser__ReduceAction556__action(val
* self
, val
* p0
) {
4838 parser__ReduceAction556__action(self
, p0
);
4841 /* method parser#ReduceAction557#action for (self: ReduceAction557, Parser) */
4842 void parser__ReduceAction557__action(val
* self
, val
* p0
) {
4843 val
* var_p
/* var p: Parser */;
4844 val
* var
/* : null */;
4845 val
* var_node_list
/* var node_list: nullable Object */;
4846 val
* var1
/* : nullable Object */;
4847 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4848 val
* var2
/* : nullable Object */;
4849 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4850 val
* var3
/* : nullable Object */;
4851 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4852 val
* var_tidnode2
/* var tidnode2: nullable Object */;
4853 short int var4
/* : Bool */;
4856 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
4857 short int var5
/* : Bool */;
4860 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
4861 short int var8
/* : Bool */;
4864 val
* var11
/* : AParam */;
4865 val
* var12
/* : null */;
4866 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
4867 long var13
/* : Int */;
4868 long var14
/* : Int */;
4871 var_node_list
= var
;
4872 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4873 var_nodearraylist3
= var1
;
4874 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4875 var_nodearraylist2
= var2
;
4876 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4877 var_nodearraylist1
= var3
;
4878 var_tidnode2
= var_nodearraylist1
;
4879 /* <var_tidnode2:nullable Object> isa nullable TId */
4880 cltype
= type_nullable_parser_nodes__TId
.color
;
4881 idtype
= type_nullable_parser_nodes__TId
.id
;
4882 if(var_tidnode2
== NULL
) {
4885 if(cltype
>= var_tidnode2
->type
->table_size
) {
4888 var4
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
4892 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4893 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23251);
4896 var_ptypenode3
= var_nodearraylist3
;
4897 /* <var_ptypenode3:nullable Object> isa nullable AType */
4898 cltype6
= type_nullable_parser_nodes__AType
.color
;
4899 idtype7
= type_nullable_parser_nodes__AType
.id
;
4900 if(var_ptypenode3
== NULL
) {
4903 if(cltype6
>= var_ptypenode3
->type
->table_size
) {
4906 var5
= var_ptypenode3
->type
->type_table
[cltype6
] == idtype7
;
4910 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4911 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23253);
4914 var_pannotationsnode5
= var_nodearraylist2
;
4915 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
4916 cltype9
= type_nullable_parser_nodes__AAnnotations
.color
;
4917 idtype10
= type_nullable_parser_nodes__AAnnotations
.id
;
4918 if(var_pannotationsnode5
== NULL
) {
4921 if(cltype9
>= var_pannotationsnode5
->type
->table_size
) {
4924 var8
= var_pannotationsnode5
->type
->type_table
[cltype9
] == idtype10
;
4928 fprintf(stderr
, "Runtime error: %s", "Assert failed");
4929 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23255);
4932 var11
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
4934 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var11
, var_tidnode2
, var_ptypenode3
, var12
, var_pannotationsnode5
) /* init_aparam on <var11:AParam>*/;
4935 CHECK_NEW_parser_nodes__AParam(var11
);
4936 var_pparamnode1
= var11
;
4937 var_node_list
= var_pparamnode1
;
4938 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction557> */
4939 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
4940 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
4943 /* method parser#ReduceAction557#action for (self: Object, Parser) */
4944 void VIRTUAL_parser__ReduceAction557__action(val
* self
, val
* p0
) {
4945 parser__ReduceAction557__action(self
, p0
);
4948 /* method parser#ReduceAction558#action for (self: ReduceAction558, Parser) */
4949 void parser__ReduceAction558__action(val
* self
, val
* p0
) {
4950 val
* var_p
/* var p: Parser */;
4951 val
* var
/* : null */;
4952 val
* var_node_list
/* var node_list: nullable Object */;
4953 val
* var1
/* : nullable Object */;
4954 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4955 val
* var2
/* : nullable Object */;
4956 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4957 val
* var3
/* : nullable Object */;
4958 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4959 val
* var_tidnode2
/* var tidnode2: nullable Object */;
4960 short int var4
/* : Bool */;
4963 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
4964 short int var5
/* : Bool */;
4967 val
* var_tdotdotdotnode4
/* var tdotdotdotnode4: nullable Object */;
4968 short int var8
/* : Bool */;
4971 val
* var11
/* : AParam */;
4972 val
* var12
/* : null */;
4973 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
4974 long var13
/* : Int */;
4975 long var14
/* : Int */;
4978 var_node_list
= var
;
4979 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4980 var_nodearraylist3
= var1
;
4981 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4982 var_nodearraylist2
= var2
;
4983 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
4984 var_nodearraylist1
= var3
;
4985 var_tidnode2
= var_nodearraylist1
;
4986 /* <var_tidnode2:nullable Object> isa nullable TId */
4987 cltype
= type_nullable_parser_nodes__TId
.color
;
4988 idtype
= type_nullable_parser_nodes__TId
.id
;
4989 if(var_tidnode2
== NULL
) {
4992 if(cltype
>= var_tidnode2
->type
->table_size
) {
4995 var4
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
4999 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5000 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23275);
5003 var_ptypenode3
= var_nodearraylist2
;
5004 /* <var_ptypenode3:nullable Object> isa nullable AType */
5005 cltype6
= type_nullable_parser_nodes__AType
.color
;
5006 idtype7
= type_nullable_parser_nodes__AType
.id
;
5007 if(var_ptypenode3
== NULL
) {
5010 if(cltype6
>= var_ptypenode3
->type
->table_size
) {
5013 var5
= var_ptypenode3
->type
->type_table
[cltype6
] == idtype7
;
5017 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5018 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23277);
5021 var_tdotdotdotnode4
= var_nodearraylist3
;
5022 /* <var_tdotdotdotnode4:nullable Object> isa nullable TDotdotdot */
5023 cltype9
= type_nullable_parser_nodes__TDotdotdot
.color
;
5024 idtype10
= type_nullable_parser_nodes__TDotdotdot
.id
;
5025 if(var_tdotdotdotnode4
== NULL
) {
5028 if(cltype9
>= var_tdotdotdotnode4
->type
->table_size
) {
5031 var8
= var_tdotdotdotnode4
->type
->type_table
[cltype9
] == idtype10
;
5035 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5036 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23279);
5039 var11
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
5041 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var11
, var_tidnode2
, var_ptypenode3
, var_tdotdotdotnode4
, var12
) /* init_aparam on <var11:AParam>*/;
5042 CHECK_NEW_parser_nodes__AParam(var11
);
5043 var_pparamnode1
= var11
;
5044 var_node_list
= var_pparamnode1
;
5045 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction558> */
5046 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
5047 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
5050 /* method parser#ReduceAction558#action for (self: Object, Parser) */
5051 void VIRTUAL_parser__ReduceAction558__action(val
* self
, val
* p0
) {
5052 parser__ReduceAction558__action(self
, p0
);
5055 /* method parser#ReduceAction559#action for (self: ReduceAction559, Parser) */
5056 void parser__ReduceAction559__action(val
* self
, val
* p0
) {
5057 val
* var_p
/* var p: Parser */;
5058 val
* var
/* : null */;
5059 val
* var_node_list
/* var node_list: nullable Object */;
5060 val
* var1
/* : nullable Object */;
5061 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5062 val
* var2
/* : nullable Object */;
5063 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5064 val
* var3
/* : nullable Object */;
5065 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5066 val
* var4
/* : nullable Object */;
5067 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5068 val
* var_tidnode2
/* var tidnode2: nullable Object */;
5069 short int var5
/* : Bool */;
5072 val
* var_ptypenode3
/* var ptypenode3: nullable Object */;
5073 short int var6
/* : Bool */;
5076 val
* var_tdotdotdotnode4
/* var tdotdotdotnode4: nullable Object */;
5077 short int var9
/* : Bool */;
5080 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
5081 short int var12
/* : Bool */;
5084 val
* var15
/* : AParam */;
5085 val
* var_pparamnode1
/* var pparamnode1: nullable AParam */;
5086 long var16
/* : Int */;
5087 long var17
/* : Int */;
5090 var_node_list
= var
;
5091 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5092 var_nodearraylist4
= var1
;
5093 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5094 var_nodearraylist3
= var2
;
5095 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5096 var_nodearraylist2
= var3
;
5097 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5098 var_nodearraylist1
= var4
;
5099 var_tidnode2
= var_nodearraylist1
;
5100 /* <var_tidnode2:nullable Object> isa nullable TId */
5101 cltype
= type_nullable_parser_nodes__TId
.color
;
5102 idtype
= type_nullable_parser_nodes__TId
.id
;
5103 if(var_tidnode2
== NULL
) {
5106 if(cltype
>= var_tidnode2
->type
->table_size
) {
5109 var5
= var_tidnode2
->type
->type_table
[cltype
] == idtype
;
5113 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5114 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23300);
5117 var_ptypenode3
= var_nodearraylist3
;
5118 /* <var_ptypenode3:nullable Object> isa nullable AType */
5119 cltype7
= type_nullable_parser_nodes__AType
.color
;
5120 idtype8
= type_nullable_parser_nodes__AType
.id
;
5121 if(var_ptypenode3
== NULL
) {
5124 if(cltype7
>= var_ptypenode3
->type
->table_size
) {
5127 var6
= var_ptypenode3
->type
->type_table
[cltype7
] == idtype8
;
5131 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5132 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23302);
5135 var_tdotdotdotnode4
= var_nodearraylist4
;
5136 /* <var_tdotdotdotnode4:nullable Object> isa nullable TDotdotdot */
5137 cltype10
= type_nullable_parser_nodes__TDotdotdot
.color
;
5138 idtype11
= type_nullable_parser_nodes__TDotdotdot
.id
;
5139 if(var_tdotdotdotnode4
== NULL
) {
5142 if(cltype10
>= var_tdotdotdotnode4
->type
->table_size
) {
5145 var9
= var_tdotdotdotnode4
->type
->type_table
[cltype10
] == idtype11
;
5149 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5150 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23304);
5153 var_pannotationsnode5
= var_nodearraylist2
;
5154 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
5155 cltype13
= type_nullable_parser_nodes__AAnnotations
.color
;
5156 idtype14
= type_nullable_parser_nodes__AAnnotations
.id
;
5157 if(var_pannotationsnode5
== NULL
) {
5160 if(cltype13
>= var_pannotationsnode5
->type
->table_size
) {
5163 var12
= var_pannotationsnode5
->type
->type_table
[cltype13
] == idtype14
;
5167 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5168 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23306);
5171 var15
= NEW_parser_nodes__AParam(&type_parser_nodes__AParam
);
5172 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__AParam__init_aparam
]))(var15
, var_tidnode2
, var_ptypenode3
, var_tdotdotdotnode4
, var_pannotationsnode5
) /* init_aparam on <var15:AParam>*/;
5173 CHECK_NEW_parser_nodes__AParam(var15
);
5174 var_pparamnode1
= var15
;
5175 var_node_list
= var_pparamnode1
;
5176 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction559> */
5177 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
5178 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
5181 /* method parser#ReduceAction559#action for (self: Object, Parser) */
5182 void VIRTUAL_parser__ReduceAction559__action(val
* self
, val
* p0
) {
5183 parser__ReduceAction559__action(self
, p0
);
5186 /* method parser#ReduceAction560#action for (self: ReduceAction560, Parser) */
5187 void parser__ReduceAction560__action(val
* self
, val
* p0
) {
5188 val
* var_p
/* var p: Parser */;
5189 val
* var
/* : null */;
5190 val
* var_node_list
/* var node_list: nullable Object */;
5191 val
* var1
/* : nullable Object */;
5192 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5193 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5194 short int var2
/* : Bool */;
5197 val
* var3
/* : AReturnExpr */;
5198 val
* var4
/* : null */;
5199 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
5200 long var5
/* : Int */;
5201 long var6
/* : Int */;
5204 var_node_list
= var
;
5205 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5206 var_nodearraylist1
= var1
;
5207 var_pexprnode3
= var_nodearraylist1
;
5208 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5209 cltype
= type_nullable_parser_nodes__AExpr
.color
;
5210 idtype
= type_nullable_parser_nodes__AExpr
.id
;
5211 if(var_pexprnode3
== NULL
) {
5214 if(cltype
>= var_pexprnode3
->type
->table_size
) {
5217 var2
= var_pexprnode3
->type
->type_table
[cltype
] == idtype
;
5221 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5222 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23324);
5225 var3
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
5227 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var3
, var4
, var_pexprnode3
) /* init_areturnexpr on <var3:AReturnExpr>*/;
5228 CHECK_NEW_parser_nodes__AReturnExpr(var3
);
5229 var_pexprnode1
= var3
;
5230 var_node_list
= var_pexprnode1
;
5231 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction560> */
5232 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
5233 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
5236 /* method parser#ReduceAction560#action for (self: Object, Parser) */
5237 void VIRTUAL_parser__ReduceAction560__action(val
* self
, val
* p0
) {
5238 parser__ReduceAction560__action(self
, p0
);
5241 /* method parser#ReduceAction561#action for (self: ReduceAction561, Parser) */
5242 void parser__ReduceAction561__action(val
* self
, val
* p0
) {
5243 val
* var_p
/* var p: Parser */;
5244 val
* var
/* : null */;
5245 val
* var_node_list
/* var node_list: nullable Object */;
5246 val
* var1
/* : nullable Object */;
5247 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5248 val
* var2
/* : nullable Object */;
5249 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5250 val
* var3
/* : nullable Object */;
5251 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5252 val
* var4
/* : Array[Object] */;
5253 val
* var_listnode4
/* var listnode4: Array[Object] */;
5254 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
5255 short int var5
/* : Bool */;
5258 val
* var_pexterncallnode3
/* var pexterncallnode3: nullable Object */;
5259 short int var6
/* : Bool */;
5262 val
* var9
/* : null */;
5263 short int var10
/* : Bool */;
5264 val
* var11
/* : AExternCalls */;
5265 val
* var_pexterncallsnode1
/* var pexterncallsnode1: nullable AExternCalls */;
5266 long var12
/* : Int */;
5267 long var13
/* : Int */;
5270 var_node_list
= var
;
5271 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5272 var_nodearraylist3
= var1
;
5273 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5274 var_nodearraylist2
= var2
;
5275 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5276 var_nodearraylist1
= var3
;
5277 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
5278 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
5279 CHECK_NEW_array__Array(var4
);
5280 var_listnode4
= var4
;
5281 var_tkwimportnode2
= var_nodearraylist1
;
5282 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
5283 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
5284 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
5285 if(var_tkwimportnode2
== NULL
) {
5288 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
5291 var5
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
5295 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5296 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23343);
5299 var_pexterncallnode3
= var_nodearraylist3
;
5300 /* <var_pexterncallnode3:nullable Object> isa nullable AExternCall */
5301 cltype7
= type_nullable_parser_nodes__AExternCall
.color
;
5302 idtype8
= type_nullable_parser_nodes__AExternCall
.id
;
5303 if(var_pexterncallnode3
== NULL
) {
5306 if(cltype7
>= var_pexterncallnode3
->type
->table_size
) {
5309 var6
= var_pexterncallnode3
->type
->type_table
[cltype7
] == idtype8
;
5313 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5314 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23345);
5318 if (var_pexterncallnode3
== NULL
) {
5319 var10
= 0; /* is null */
5321 var10
= 1; /* arg is null and recv is not */
5324 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexterncallnode3
) /* add on <var_listnode4:Array[Object]>*/;
5327 var11
= NEW_parser_nodes__AExternCalls(&type_parser_nodes__AExternCalls
);
5328 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AExternCalls__init_aexterncalls
]))(var11
, var_tkwimportnode2
, var_listnode4
) /* init_aexterncalls on <var11:AExternCalls>*/;
5329 CHECK_NEW_parser_nodes__AExternCalls(var11
);
5330 var_pexterncallsnode1
= var11
;
5331 var_node_list
= var_pexterncallsnode1
;
5332 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction561> */
5333 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
5334 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
5337 /* method parser#ReduceAction561#action for (self: Object, Parser) */
5338 void VIRTUAL_parser__ReduceAction561__action(val
* self
, val
* p0
) {
5339 parser__ReduceAction561__action(self
, p0
);
5342 /* method parser#ReduceAction562#action for (self: ReduceAction562, Parser) */
5343 void parser__ReduceAction562__action(val
* self
, val
* p0
) {
5344 val
* var_p
/* var p: Parser */;
5345 val
* var
/* : null */;
5346 val
* var_node_list
/* var node_list: nullable Object */;
5347 val
* var1
/* : nullable Object */;
5348 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5349 val
* var2
/* : nullable Object */;
5350 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5351 val
* var3
/* : nullable Object */;
5352 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5353 val
* var4
/* : nullable Object */;
5354 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5355 val
* var5
/* : Array[Object] */;
5356 val
* var_listnode5
/* var listnode5: Array[Object] */;
5357 val
* var_tkwimportnode2
/* var tkwimportnode2: nullable Object */;
5358 short int var6
/* : Bool */;
5361 val
* var_pexterncallnode3
/* var pexterncallnode3: nullable Object */;
5362 short int var7
/* : Bool */;
5365 val
* var_listnode4
/* var listnode4: nullable Object */;
5366 short int var10
/* : Bool */;
5369 val
* var13
/* : null */;
5370 short int var14
/* : Bool */;
5371 val
* var15
/* : Array[Object] */;
5372 val
* var16
/* : AExternCalls */;
5373 val
* var_pexterncallsnode1
/* var pexterncallsnode1: nullable AExternCalls */;
5374 long var17
/* : Int */;
5375 long var18
/* : Int */;
5378 var_node_list
= var
;
5379 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5380 var_nodearraylist4
= var1
;
5381 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5382 var_nodearraylist3
= var2
;
5383 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5384 var_nodearraylist2
= var3
;
5385 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5386 var_nodearraylist1
= var4
;
5387 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
5388 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
5389 CHECK_NEW_array__Array(var5
);
5390 var_listnode5
= var5
;
5391 var_tkwimportnode2
= var_nodearraylist1
;
5392 /* <var_tkwimportnode2:nullable Object> isa nullable TKwimport */
5393 cltype
= type_nullable_parser_nodes__TKwimport
.color
;
5394 idtype
= type_nullable_parser_nodes__TKwimport
.id
;
5395 if(var_tkwimportnode2
== NULL
) {
5398 if(cltype
>= var_tkwimportnode2
->type
->table_size
) {
5401 var6
= var_tkwimportnode2
->type
->type_table
[cltype
] == idtype
;
5405 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5406 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23368);
5409 var_pexterncallnode3
= var_nodearraylist3
;
5410 /* <var_pexterncallnode3:nullable Object> isa nullable AExternCall */
5411 cltype8
= type_nullable_parser_nodes__AExternCall
.color
;
5412 idtype9
= type_nullable_parser_nodes__AExternCall
.id
;
5413 if(var_pexterncallnode3
== NULL
) {
5416 if(cltype8
>= var_pexterncallnode3
->type
->table_size
) {
5419 var7
= var_pexterncallnode3
->type
->type_table
[cltype8
] == idtype9
;
5423 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5424 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23370);
5427 var_listnode4
= var_nodearraylist4
;
5428 /* <var_listnode4:nullable Object> isa Array[Object] */
5429 cltype11
= type_array__Arraykernel__Object
.color
;
5430 idtype12
= type_array__Arraykernel__Object
.id
;
5431 if(var_listnode4
== NULL
) {
5434 if(cltype11
>= var_listnode4
->type
->table_size
) {
5437 var10
= var_listnode4
->type
->type_table
[cltype11
] == idtype12
;
5441 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5442 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23372);
5446 if (var_pexterncallnode3
== NULL
) {
5447 var14
= 0; /* is null */
5449 var14
= 1; /* arg is null and recv is not */
5452 ((void (*)(val
*, val
*))(var_listnode5
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode5
, var_pexterncallnode3
) /* add on <var_listnode5:Array[Object]>*/;
5455 var15
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction562>*/;
5456 var_listnode5
= var15
;
5457 var16
= NEW_parser_nodes__AExternCalls(&type_parser_nodes__AExternCalls
);
5458 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__AExternCalls__init_aexterncalls
]))(var16
, var_tkwimportnode2
, var_listnode5
) /* init_aexterncalls on <var16:AExternCalls>*/;
5459 CHECK_NEW_parser_nodes__AExternCalls(var16
);
5460 var_pexterncallsnode1
= var16
;
5461 var_node_list
= var_pexterncallsnode1
;
5462 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction562> */
5463 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
5464 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
5467 /* method parser#ReduceAction562#action for (self: Object, Parser) */
5468 void VIRTUAL_parser__ReduceAction562__action(val
* self
, val
* p0
) {
5469 parser__ReduceAction562__action(self
, p0
);
5472 /* method parser#ReduceAction563#action for (self: ReduceAction563, Parser) */
5473 void parser__ReduceAction563__action(val
* self
, val
* p0
) {
5474 val
* var_p
/* var p: Parser */;
5475 val
* var
/* : null */;
5476 val
* var_node_list
/* var node_list: nullable Object */;
5477 val
* var1
/* : nullable Object */;
5478 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5479 val
* var2
/* : nullable Object */;
5480 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5481 val
* var3
/* : nullable Object */;
5482 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5483 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable Object */;
5484 long var4
/* : Int */;
5485 long var5
/* : Int */;
5488 var_node_list
= var
;
5489 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5490 var_nodearraylist3
= var1
;
5491 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5492 var_nodearraylist2
= var2
;
5493 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5494 var_nodearraylist1
= var3
;
5495 var_pexterncallnode1
= var_nodearraylist3
;
5496 var_node_list
= var_pexterncallnode1
;
5497 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction563> */
5498 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5499 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5502 /* method parser#ReduceAction563#action for (self: Object, Parser) */
5503 void VIRTUAL_parser__ReduceAction563__action(val
* self
, val
* p0
) {
5504 parser__ReduceAction563__action(self
, p0
);
5507 /* method parser#ReduceAction564#action for (self: ReduceAction564, Parser) */
5508 void parser__ReduceAction564__action(val
* self
, val
* p0
) {
5509 val
* var_p
/* var p: Parser */;
5510 val
* var
/* : null */;
5511 val
* var_node_list
/* var node_list: nullable Object */;
5512 val
* var1
/* : nullable Object */;
5513 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5514 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable Object */;
5515 long var2
/* : Int */;
5516 long var3
/* : Int */;
5519 var_node_list
= var
;
5520 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5521 var_nodearraylist1
= var1
;
5522 var_pexterncallnode1
= var_nodearraylist1
;
5523 var_node_list
= var_pexterncallnode1
;
5524 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction564> */
5525 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
5526 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
5529 /* method parser#ReduceAction564#action for (self: Object, Parser) */
5530 void VIRTUAL_parser__ReduceAction564__action(val
* self
, val
* p0
) {
5531 parser__ReduceAction564__action(self
, p0
);
5534 /* method parser#ReduceAction566#action for (self: ReduceAction566, Parser) */
5535 void parser__ReduceAction566__action(val
* self
, val
* p0
) {
5536 val
* var_p
/* var p: Parser */;
5537 val
* var
/* : null */;
5538 val
* var_node_list
/* var node_list: nullable Object */;
5539 val
* var1
/* : nullable Object */;
5540 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5541 val
* var_tkwsupernode2
/* var tkwsupernode2: nullable Object */;
5542 short int var2
/* : Bool */;
5545 val
* var3
/* : ASuperExternCall */;
5546 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ASuperExternCall */;
5547 long var4
/* : Int */;
5548 long var5
/* : Int */;
5551 var_node_list
= var
;
5552 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5553 var_nodearraylist1
= var1
;
5554 var_tkwsupernode2
= var_nodearraylist1
;
5555 /* <var_tkwsupernode2:nullable Object> isa nullable TKwsuper */
5556 cltype
= type_nullable_parser_nodes__TKwsuper
.color
;
5557 idtype
= type_nullable_parser_nodes__TKwsuper
.id
;
5558 if(var_tkwsupernode2
== NULL
) {
5561 if(cltype
>= var_tkwsupernode2
->type
->table_size
) {
5564 var2
= var_tkwsupernode2
->type
->type_table
[cltype
] == idtype
;
5568 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5569 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23416);
5572 var3
= NEW_parser_nodes__ASuperExternCall(&type_parser_nodes__ASuperExternCall
);
5573 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ASuperExternCall__init_asuperexterncall
]))(var3
, var_tkwsupernode2
) /* init_asuperexterncall on <var3:ASuperExternCall>*/;
5574 CHECK_NEW_parser_nodes__ASuperExternCall(var3
);
5575 var_pexterncallnode1
= var3
;
5576 var_node_list
= var_pexterncallnode1
;
5577 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction566> */
5578 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5579 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5582 /* method parser#ReduceAction566#action for (self: Object, Parser) */
5583 void VIRTUAL_parser__ReduceAction566__action(val
* self
, val
* p0
) {
5584 parser__ReduceAction566__action(self
, p0
);
5587 /* method parser#ReduceAction567#action for (self: ReduceAction567, Parser) */
5588 void parser__ReduceAction567__action(val
* self
, val
* p0
) {
5589 val
* var_p
/* var p: Parser */;
5590 val
* var
/* : null */;
5591 val
* var_node_list
/* var node_list: nullable Object */;
5592 val
* var1
/* : nullable Object */;
5593 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5594 val
* var_pmethidnode2
/* var pmethidnode2: nullable Object */;
5595 short int var2
/* : Bool */;
5598 val
* var3
/* : ALocalPropExternCall */;
5599 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ALocalPropExternCall */;
5600 long var4
/* : Int */;
5601 long var5
/* : Int */;
5604 var_node_list
= var
;
5605 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5606 var_nodearraylist1
= var1
;
5607 var_pmethidnode2
= var_nodearraylist1
;
5608 /* <var_pmethidnode2:nullable Object> isa nullable AMethid */
5609 cltype
= type_nullable_parser_nodes__AMethid
.color
;
5610 idtype
= type_nullable_parser_nodes__AMethid
.id
;
5611 if(var_pmethidnode2
== NULL
) {
5614 if(cltype
>= var_pmethidnode2
->type
->table_size
) {
5617 var2
= var_pmethidnode2
->type
->type_table
[cltype
] == idtype
;
5621 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5622 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23431);
5625 var3
= NEW_parser_nodes__ALocalPropExternCall(&type_parser_nodes__ALocalPropExternCall
);
5626 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ALocalPropExternCall__init_alocalpropexterncall
]))(var3
, var_pmethidnode2
) /* init_alocalpropexterncall on <var3:ALocalPropExternCall>*/;
5627 CHECK_NEW_parser_nodes__ALocalPropExternCall(var3
);
5628 var_pexterncallnode1
= var3
;
5629 var_node_list
= var_pexterncallnode1
;
5630 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction567> */
5631 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5632 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5635 /* method parser#ReduceAction567#action for (self: Object, Parser) */
5636 void VIRTUAL_parser__ReduceAction567__action(val
* self
, val
* p0
) {
5637 parser__ReduceAction567__action(self
, p0
);
5640 /* method parser#ReduceAction568#action for (self: ReduceAction568, Parser) */
5641 void parser__ReduceAction568__action(val
* self
, val
* p0
) {
5642 val
* var_p
/* var p: Parser */;
5643 val
* var
/* : null */;
5644 val
* var_node_list
/* var node_list: nullable Object */;
5645 val
* var1
/* : nullable Object */;
5646 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5647 val
* var2
/* : nullable Object */;
5648 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5649 val
* var3
/* : nullable Object */;
5650 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5651 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
5652 short int var4
/* : Bool */;
5655 val
* var_tquadnode3
/* var tquadnode3: nullable Object */;
5656 short int var5
/* : Bool */;
5659 val
* var_pmethidnode4
/* var pmethidnode4: nullable Object */;
5660 short int var8
/* : Bool */;
5663 val
* var11
/* : AFullPropExternCall */;
5664 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AFullPropExternCall */;
5665 long var12
/* : Int */;
5666 long var13
/* : Int */;
5669 var_node_list
= var
;
5670 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5671 var_nodearraylist3
= var1
;
5672 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5673 var_nodearraylist2
= var2
;
5674 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5675 var_nodearraylist1
= var3
;
5676 var_tclassidnode2
= var_nodearraylist1
;
5677 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
5678 cltype
= type_nullable_parser_nodes__TClassid
.color
;
5679 idtype
= type_nullable_parser_nodes__TClassid
.id
;
5680 if(var_tclassidnode2
== NULL
) {
5683 if(cltype
>= var_tclassidnode2
->type
->table_size
) {
5686 var4
= var_tclassidnode2
->type
->type_table
[cltype
] == idtype
;
5690 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5691 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23448);
5694 var_tquadnode3
= var_nodearraylist2
;
5695 /* <var_tquadnode3:nullable Object> isa nullable TQuad */
5696 cltype6
= type_nullable_parser_nodes__TQuad
.color
;
5697 idtype7
= type_nullable_parser_nodes__TQuad
.id
;
5698 if(var_tquadnode3
== NULL
) {
5701 if(cltype6
>= var_tquadnode3
->type
->table_size
) {
5704 var5
= var_tquadnode3
->type
->type_table
[cltype6
] == idtype7
;
5708 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5709 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23450);
5712 var_pmethidnode4
= var_nodearraylist3
;
5713 /* <var_pmethidnode4:nullable Object> isa nullable AMethid */
5714 cltype9
= type_nullable_parser_nodes__AMethid
.color
;
5715 idtype10
= type_nullable_parser_nodes__AMethid
.id
;
5716 if(var_pmethidnode4
== NULL
) {
5719 if(cltype9
>= var_pmethidnode4
->type
->table_size
) {
5722 var8
= var_pmethidnode4
->type
->type_table
[cltype9
] == idtype10
;
5726 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5727 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23452);
5730 var11
= NEW_parser_nodes__AFullPropExternCall(&type_parser_nodes__AFullPropExternCall
);
5731 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AFullPropExternCall__init_afullpropexterncall
]))(var11
, var_tclassidnode2
, var_tquadnode3
, var_pmethidnode4
) /* init_afullpropexterncall on <var11:AFullPropExternCall>*/;
5732 CHECK_NEW_parser_nodes__AFullPropExternCall(var11
);
5733 var_pexterncallnode1
= var11
;
5734 var_node_list
= var_pexterncallnode1
;
5735 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction568> */
5736 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
5737 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
5740 /* method parser#ReduceAction568#action for (self: Object, Parser) */
5741 void VIRTUAL_parser__ReduceAction568__action(val
* self
, val
* p0
) {
5742 parser__ReduceAction568__action(self
, p0
);
5745 /* method parser#ReduceAction569#action for (self: ReduceAction569, Parser) */
5746 void parser__ReduceAction569__action(val
* self
, val
* p0
) {
5747 val
* var_p
/* var p: Parser */;
5748 val
* var
/* : null */;
5749 val
* var_node_list
/* var node_list: nullable Object */;
5750 val
* var1
/* : nullable Object */;
5751 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5752 val
* var_tclassidnode2
/* var tclassidnode2: nullable Object */;
5753 short int var2
/* : Bool */;
5756 val
* var3
/* : AInitPropExternCall */;
5757 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AInitPropExternCall */;
5758 long var4
/* : Int */;
5759 long var5
/* : Int */;
5762 var_node_list
= var
;
5763 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5764 var_nodearraylist1
= var1
;
5765 var_tclassidnode2
= var_nodearraylist1
;
5766 /* <var_tclassidnode2:nullable Object> isa nullable TClassid */
5767 cltype
= type_nullable_parser_nodes__TClassid
.color
;
5768 idtype
= type_nullable_parser_nodes__TClassid
.id
;
5769 if(var_tclassidnode2
== NULL
) {
5772 if(cltype
>= var_tclassidnode2
->type
->table_size
) {
5775 var2
= var_tclassidnode2
->type
->type_table
[cltype
] == idtype
;
5779 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5780 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23469);
5783 var3
= NEW_parser_nodes__AInitPropExternCall(&type_parser_nodes__AInitPropExternCall
);
5784 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AInitPropExternCall__init_ainitpropexterncall
]))(var3
, var_tclassidnode2
) /* init_ainitpropexterncall on <var3:AInitPropExternCall>*/;
5785 CHECK_NEW_parser_nodes__AInitPropExternCall(var3
);
5786 var_pexterncallnode1
= var3
;
5787 var_node_list
= var_pexterncallnode1
;
5788 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction569> */
5789 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
5790 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
5793 /* method parser#ReduceAction569#action for (self: Object, Parser) */
5794 void VIRTUAL_parser__ReduceAction569__action(val
* self
, val
* p0
) {
5795 parser__ReduceAction569__action(self
, p0
);
5798 /* method parser#ReduceAction570#action for (self: ReduceAction570, Parser) */
5799 void parser__ReduceAction570__action(val
* self
, val
* p0
) {
5800 val
* var_p
/* var p: Parser */;
5801 val
* var
/* : null */;
5802 val
* var_node_list
/* var node_list: nullable Object */;
5803 val
* var1
/* : nullable Object */;
5804 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
5805 val
* var2
/* : nullable Object */;
5806 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5807 val
* var3
/* : nullable Object */;
5808 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5809 val
* var4
/* : nullable Object */;
5810 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5811 val
* var5
/* : nullable Object */;
5812 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5813 val
* var6
/* : nullable Object */;
5814 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5815 val
* var7
/* : nullable Object */;
5816 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5817 val
* var8
/* : nullable Object */;
5818 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5819 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
5820 short int var9
/* : Bool */;
5823 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
5824 short int var10
/* : Bool */;
5827 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
5828 short int var13
/* : Bool */;
5831 val
* var16
/* : ACastAsExternCall */;
5832 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable ACastAsExternCall */;
5833 long var17
/* : Int */;
5834 long var18
/* : Int */;
5837 var_node_list
= var
;
5838 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5839 var_nodearraylist8
= var1
;
5840 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5841 var_nodearraylist7
= var2
;
5842 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5843 var_nodearraylist6
= var3
;
5844 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5845 var_nodearraylist5
= var4
;
5846 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5847 var_nodearraylist4
= var5
;
5848 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5849 var_nodearraylist3
= var6
;
5850 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5851 var_nodearraylist2
= var7
;
5852 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5853 var_nodearraylist1
= var8
;
5854 var_ptypenode2
= var_nodearraylist1
;
5855 /* <var_ptypenode2:nullable Object> isa nullable AType */
5856 cltype
= type_nullable_parser_nodes__AType
.color
;
5857 idtype
= type_nullable_parser_nodes__AType
.id
;
5858 if(var_ptypenode2
== NULL
) {
5861 if(cltype
>= var_ptypenode2
->type
->table_size
) {
5864 var9
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
5868 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5869 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23491);
5872 var_tkwasnode3
= var_nodearraylist2
;
5873 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
5874 cltype11
= type_nullable_parser_nodes__TKwas
.color
;
5875 idtype12
= type_nullable_parser_nodes__TKwas
.id
;
5876 if(var_tkwasnode3
== NULL
) {
5879 if(cltype11
>= var_tkwasnode3
->type
->table_size
) {
5882 var10
= var_tkwasnode3
->type
->type_table
[cltype11
] == idtype12
;
5886 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5887 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23493);
5890 var_ptypenode4
= var_nodearraylist6
;
5891 /* <var_ptypenode4:nullable Object> isa nullable AType */
5892 cltype14
= type_nullable_parser_nodes__AType
.color
;
5893 idtype15
= type_nullable_parser_nodes__AType
.id
;
5894 if(var_ptypenode4
== NULL
) {
5897 if(cltype14
>= var_ptypenode4
->type
->table_size
) {
5900 var13
= var_ptypenode4
->type
->type_table
[cltype14
] == idtype15
;
5904 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5905 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23495);
5908 var16
= NEW_parser_nodes__ACastAsExternCall(&type_parser_nodes__ACastAsExternCall
);
5909 ((void (*)(val
*, val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ACastAsExternCall__init_acastasexterncall
]))(var16
, var_ptypenode2
, var_tkwasnode3
, var_ptypenode4
) /* init_acastasexterncall on <var16:ACastAsExternCall>*/;
5910 CHECK_NEW_parser_nodes__ACastAsExternCall(var16
);
5911 var_pexterncallnode1
= var16
;
5912 var_node_list
= var_pexterncallnode1
;
5913 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction570> */
5914 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
5915 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
5918 /* method parser#ReduceAction570#action for (self: Object, Parser) */
5919 void VIRTUAL_parser__ReduceAction570__action(val
* self
, val
* p0
) {
5920 parser__ReduceAction570__action(self
, p0
);
5923 /* method parser#ReduceAction571#action for (self: ReduceAction571, Parser) */
5924 void parser__ReduceAction571__action(val
* self
, val
* p0
) {
5925 val
* var_p
/* var p: Parser */;
5926 val
* var
/* : null */;
5927 val
* var_node_list
/* var node_list: nullable Object */;
5928 val
* var1
/* : nullable Object */;
5929 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5930 val
* var2
/* : nullable Object */;
5931 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5932 val
* var3
/* : nullable Object */;
5933 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5934 val
* var4
/* : nullable Object */;
5935 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5936 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
5937 short int var5
/* : Bool */;
5940 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
5941 short int var6
/* : Bool */;
5944 val
* var_tkwnullablenode4
/* var tkwnullablenode4: nullable Object */;
5945 short int var9
/* : Bool */;
5948 val
* var12
/* : AAsNullableExternCall */;
5949 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNullableExternCall */;
5950 long var13
/* : Int */;
5951 long var14
/* : Int */;
5954 var_node_list
= var
;
5955 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5956 var_nodearraylist4
= var1
;
5957 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5958 var_nodearraylist3
= var2
;
5959 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5960 var_nodearraylist2
= var3
;
5961 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
5962 var_nodearraylist1
= var4
;
5963 var_ptypenode2
= var_nodearraylist1
;
5964 /* <var_ptypenode2:nullable Object> isa nullable AType */
5965 cltype
= type_nullable_parser_nodes__AType
.color
;
5966 idtype
= type_nullable_parser_nodes__AType
.id
;
5967 if(var_ptypenode2
== NULL
) {
5970 if(cltype
>= var_ptypenode2
->type
->table_size
) {
5973 var5
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
5977 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5978 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23515);
5981 var_tkwasnode3
= var_nodearraylist2
;
5982 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
5983 cltype7
= type_nullable_parser_nodes__TKwas
.color
;
5984 idtype8
= type_nullable_parser_nodes__TKwas
.id
;
5985 if(var_tkwasnode3
== NULL
) {
5988 if(cltype7
>= var_tkwasnode3
->type
->table_size
) {
5991 var6
= var_tkwasnode3
->type
->type_table
[cltype7
] == idtype8
;
5995 fprintf(stderr
, "Runtime error: %s", "Assert failed");
5996 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23517);
5999 var_tkwnullablenode4
= var_nodearraylist4
;
6000 /* <var_tkwnullablenode4:nullable Object> isa nullable TKwnullable */
6001 cltype10
= type_nullable_parser_nodes__TKwnullable
.color
;
6002 idtype11
= type_nullable_parser_nodes__TKwnullable
.id
;
6003 if(var_tkwnullablenode4
== NULL
) {
6006 if(cltype10
>= var_tkwnullablenode4
->type
->table_size
) {
6009 var9
= var_tkwnullablenode4
->type
->type_table
[cltype10
] == idtype11
;
6013 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6014 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23519);
6017 var12
= NEW_parser_nodes__AAsNullableExternCall(&type_parser_nodes__AAsNullableExternCall
);
6018 ((void (*)(val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AAsNullableExternCall__init_aasnullableexterncall
]))(var12
, var_ptypenode2
, var_tkwasnode3
, var_tkwnullablenode4
) /* init_aasnullableexterncall on <var12:AAsNullableExternCall>*/;
6019 CHECK_NEW_parser_nodes__AAsNullableExternCall(var12
);
6020 var_pexterncallnode1
= var12
;
6021 var_node_list
= var_pexterncallnode1
;
6022 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction571> */
6023 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
6024 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
6027 /* method parser#ReduceAction571#action for (self: Object, Parser) */
6028 void VIRTUAL_parser__ReduceAction571__action(val
* self
, val
* p0
) {
6029 parser__ReduceAction571__action(self
, p0
);
6032 /* method parser#ReduceAction572#action for (self: ReduceAction572, Parser) */
6033 void parser__ReduceAction572__action(val
* self
, val
* p0
) {
6034 val
* var_p
/* var p: Parser */;
6035 val
* var
/* : null */;
6036 val
* var_node_list
/* var node_list: nullable Object */;
6037 val
* var1
/* : nullable Object */;
6038 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6039 val
* var2
/* : nullable Object */;
6040 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6041 val
* var3
/* : nullable Object */;
6042 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6043 val
* var4
/* : nullable Object */;
6044 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6045 val
* var5
/* : nullable Object */;
6046 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6047 val
* var6
/* : nullable Object */;
6048 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6049 val
* var_ptypenode2
/* var ptypenode2: nullable Object */;
6050 short int var7
/* : Bool */;
6053 val
* var_tkwasnode3
/* var tkwasnode3: nullable Object */;
6054 short int var8
/* : Bool */;
6057 val
* var_tkwnotnode4
/* var tkwnotnode4: nullable Object */;
6058 short int var11
/* : Bool */;
6061 val
* var_tkwnullablenode5
/* var tkwnullablenode5: nullable Object */;
6062 short int var14
/* : Bool */;
6065 val
* var17
/* : AAsNotNullableExternCall */;
6066 val
* var_pexterncallnode1
/* var pexterncallnode1: nullable AAsNotNullableExternCall */;
6067 long var18
/* : Int */;
6068 long var19
/* : Int */;
6071 var_node_list
= var
;
6072 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6073 var_nodearraylist6
= var1
;
6074 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6075 var_nodearraylist5
= var2
;
6076 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6077 var_nodearraylist4
= var3
;
6078 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6079 var_nodearraylist3
= var4
;
6080 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6081 var_nodearraylist2
= var5
;
6082 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6083 var_nodearraylist1
= var6
;
6084 var_ptypenode2
= var_nodearraylist1
;
6085 /* <var_ptypenode2:nullable Object> isa nullable AType */
6086 cltype
= type_nullable_parser_nodes__AType
.color
;
6087 idtype
= type_nullable_parser_nodes__AType
.id
;
6088 if(var_ptypenode2
== NULL
) {
6091 if(cltype
>= var_ptypenode2
->type
->table_size
) {
6094 var7
= var_ptypenode2
->type
->type_table
[cltype
] == idtype
;
6098 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6099 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23541);
6102 var_tkwasnode3
= var_nodearraylist2
;
6103 /* <var_tkwasnode3:nullable Object> isa nullable TKwas */
6104 cltype9
= type_nullable_parser_nodes__TKwas
.color
;
6105 idtype10
= type_nullable_parser_nodes__TKwas
.id
;
6106 if(var_tkwasnode3
== NULL
) {
6109 if(cltype9
>= var_tkwasnode3
->type
->table_size
) {
6112 var8
= var_tkwasnode3
->type
->type_table
[cltype9
] == idtype10
;
6116 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6117 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23543);
6120 var_tkwnotnode4
= var_nodearraylist4
;
6121 /* <var_tkwnotnode4:nullable Object> isa nullable TKwnot */
6122 cltype12
= type_nullable_parser_nodes__TKwnot
.color
;
6123 idtype13
= type_nullable_parser_nodes__TKwnot
.id
;
6124 if(var_tkwnotnode4
== NULL
) {
6127 if(cltype12
>= var_tkwnotnode4
->type
->table_size
) {
6130 var11
= var_tkwnotnode4
->type
->type_table
[cltype12
] == idtype13
;
6134 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6135 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23545);
6138 var_tkwnullablenode5
= var_nodearraylist6
;
6139 /* <var_tkwnullablenode5:nullable Object> isa nullable TKwnullable */
6140 cltype15
= type_nullable_parser_nodes__TKwnullable
.color
;
6141 idtype16
= type_nullable_parser_nodes__TKwnullable
.id
;
6142 if(var_tkwnullablenode5
== NULL
) {
6145 if(cltype15
>= var_tkwnullablenode5
->type
->table_size
) {
6148 var14
= var_tkwnullablenode5
->type
->type_table
[cltype15
] == idtype16
;
6152 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6153 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23547);
6156 var17
= NEW_parser_nodes__AAsNotNullableExternCall(&type_parser_nodes__AAsNotNullableExternCall
);
6157 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AAsNotNullableExternCall__init_aasnotnullableexterncall
]))(var17
, var_ptypenode2
, var_tkwasnode3
, var_tkwnotnode4
, var_tkwnullablenode5
) /* init_aasnotnullableexterncall on <var17:AAsNotNullableExternCall>*/;
6158 CHECK_NEW_parser_nodes__AAsNotNullableExternCall(var17
);
6159 var_pexterncallnode1
= var17
;
6160 var_node_list
= var_pexterncallnode1
;
6161 var18
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction572> */
6162 var19
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var18
) /* go_to on <var_p:Parser>*/;
6163 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var19
, var_node_list
) /* push on <var_p:Parser>*/;
6166 /* method parser#ReduceAction572#action for (self: Object, Parser) */
6167 void VIRTUAL_parser__ReduceAction572__action(val
* self
, val
* p0
) {
6168 parser__ReduceAction572__action(self
, p0
);
6171 /* method parser#ReduceAction573#action for (self: ReduceAction573, Parser) */
6172 void parser__ReduceAction573__action(val
* self
, val
* p0
) {
6173 val
* var_p
/* var p: Parser */;
6174 val
* var
/* : null */;
6175 val
* var_node_list
/* var node_list: nullable Object */;
6176 val
* var1
/* : nullable Object */;
6177 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6178 val
* var2
/* : nullable Object */;
6179 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6180 val
* var_tkwinnode2
/* var tkwinnode2: nullable Object */;
6181 short int var3
/* : Bool */;
6184 val
* var_tstringnode3
/* var tstringnode3: nullable Object */;
6185 short int var4
/* : Bool */;
6188 val
* var7
/* : AInLanguage */;
6189 val
* var_pinlanguagenode1
/* var pinlanguagenode1: nullable AInLanguage */;
6190 long var8
/* : Int */;
6191 long var9
/* : Int */;
6194 var_node_list
= var
;
6195 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6196 var_nodearraylist2
= var1
;
6197 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6198 var_nodearraylist1
= var2
;
6199 var_tkwinnode2
= var_nodearraylist1
;
6200 /* <var_tkwinnode2:nullable Object> isa nullable TKwin */
6201 cltype
= type_nullable_parser_nodes__TKwin
.color
;
6202 idtype
= type_nullable_parser_nodes__TKwin
.id
;
6203 if(var_tkwinnode2
== NULL
) {
6206 if(cltype
>= var_tkwinnode2
->type
->table_size
) {
6209 var3
= var_tkwinnode2
->type
->type_table
[cltype
] == idtype
;
6213 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6214 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23566);
6217 var_tstringnode3
= var_nodearraylist2
;
6218 /* <var_tstringnode3:nullable Object> isa nullable TString */
6219 cltype5
= type_nullable_parser_nodes__TString
.color
;
6220 idtype6
= type_nullable_parser_nodes__TString
.id
;
6221 if(var_tstringnode3
== NULL
) {
6224 if(cltype5
>= var_tstringnode3
->type
->table_size
) {
6227 var4
= var_tstringnode3
->type
->type_table
[cltype5
] == idtype6
;
6231 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6232 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23568);
6235 var7
= NEW_parser_nodes__AInLanguage(&type_parser_nodes__AInLanguage
);
6236 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AInLanguage__init_ainlanguage
]))(var7
, var_tkwinnode2
, var_tstringnode3
) /* init_ainlanguage on <var7:AInLanguage>*/;
6237 CHECK_NEW_parser_nodes__AInLanguage(var7
);
6238 var_pinlanguagenode1
= var7
;
6239 var_node_list
= var_pinlanguagenode1
;
6240 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction573> */
6241 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6242 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6245 /* method parser#ReduceAction573#action for (self: Object, Parser) */
6246 void VIRTUAL_parser__ReduceAction573__action(val
* self
, val
* p0
) {
6247 parser__ReduceAction573__action(self
, p0
);
6250 /* method parser#ReduceAction574#action for (self: ReduceAction574, Parser) */
6251 void parser__ReduceAction574__action(val
* self
, val
* p0
) {
6252 val
* var_p
/* var p: Parser */;
6253 val
* var
/* : null */;
6254 val
* var_node_list
/* var node_list: nullable Object */;
6255 val
* var1
/* : nullable Object */;
6256 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6257 val
* var_texterncodesegmentnode3
/* var texterncodesegmentnode3: nullable Object */;
6258 short int var2
/* : Bool */;
6261 val
* var3
/* : AExternCodeBlock */;
6262 val
* var4
/* : null */;
6263 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable AExternCodeBlock */;
6264 long var5
/* : Int */;
6265 long var6
/* : Int */;
6268 var_node_list
= var
;
6269 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6270 var_nodearraylist1
= var1
;
6271 var_texterncodesegmentnode3
= var_nodearraylist1
;
6272 /* <var_texterncodesegmentnode3:nullable Object> isa nullable TExternCodeSegment */
6273 cltype
= type_nullable_parser_nodes__TExternCodeSegment
.color
;
6274 idtype
= type_nullable_parser_nodes__TExternCodeSegment
.id
;
6275 if(var_texterncodesegmentnode3
== NULL
) {
6278 if(cltype
>= var_texterncodesegmentnode3
->type
->table_size
) {
6281 var2
= var_texterncodesegmentnode3
->type
->type_table
[cltype
] == idtype
;
6285 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6286 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23584);
6289 var3
= NEW_parser_nodes__AExternCodeBlock(&type_parser_nodes__AExternCodeBlock
);
6291 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AExternCodeBlock__init_aexterncodeblock
]))(var3
, var4
, var_texterncodesegmentnode3
) /* init_aexterncodeblock on <var3:AExternCodeBlock>*/;
6292 CHECK_NEW_parser_nodes__AExternCodeBlock(var3
);
6293 var_pexterncodeblocknode1
= var3
;
6294 var_node_list
= var_pexterncodeblocknode1
;
6295 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction574> */
6296 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
6297 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
6300 /* method parser#ReduceAction574#action for (self: Object, Parser) */
6301 void VIRTUAL_parser__ReduceAction574__action(val
* self
, val
* p0
) {
6302 parser__ReduceAction574__action(self
, p0
);
6305 /* method parser#ReduceAction575#action for (self: ReduceAction575, Parser) */
6306 void parser__ReduceAction575__action(val
* self
, val
* p0
) {
6307 val
* var_p
/* var p: Parser */;
6308 val
* var
/* : null */;
6309 val
* var_node_list
/* var node_list: nullable Object */;
6310 val
* var1
/* : nullable Object */;
6311 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6312 val
* var2
/* : nullable Object */;
6313 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6314 val
* var_pinlanguagenode2
/* var pinlanguagenode2: nullable Object */;
6315 short int var3
/* : Bool */;
6318 val
* var_texterncodesegmentnode3
/* var texterncodesegmentnode3: nullable Object */;
6319 short int var4
/* : Bool */;
6322 val
* var7
/* : AExternCodeBlock */;
6323 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable AExternCodeBlock */;
6324 long var8
/* : Int */;
6325 long var9
/* : Int */;
6328 var_node_list
= var
;
6329 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6330 var_nodearraylist2
= var1
;
6331 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6332 var_nodearraylist1
= var2
;
6333 var_pinlanguagenode2
= var_nodearraylist1
;
6334 /* <var_pinlanguagenode2:nullable Object> isa nullable AInLanguage */
6335 cltype
= type_nullable_parser_nodes__AInLanguage
.color
;
6336 idtype
= type_nullable_parser_nodes__AInLanguage
.id
;
6337 if(var_pinlanguagenode2
== NULL
) {
6340 if(cltype
>= var_pinlanguagenode2
->type
->table_size
) {
6343 var3
= var_pinlanguagenode2
->type
->type_table
[cltype
] == idtype
;
6347 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6348 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23601);
6351 var_texterncodesegmentnode3
= var_nodearraylist2
;
6352 /* <var_texterncodesegmentnode3:nullable Object> isa nullable TExternCodeSegment */
6353 cltype5
= type_nullable_parser_nodes__TExternCodeSegment
.color
;
6354 idtype6
= type_nullable_parser_nodes__TExternCodeSegment
.id
;
6355 if(var_texterncodesegmentnode3
== NULL
) {
6358 if(cltype5
>= var_texterncodesegmentnode3
->type
->table_size
) {
6361 var4
= var_texterncodesegmentnode3
->type
->type_table
[cltype5
] == idtype6
;
6365 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6366 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23603);
6369 var7
= NEW_parser_nodes__AExternCodeBlock(&type_parser_nodes__AExternCodeBlock
);
6370 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AExternCodeBlock__init_aexterncodeblock
]))(var7
, var_pinlanguagenode2
, var_texterncodesegmentnode3
) /* init_aexterncodeblock on <var7:AExternCodeBlock>*/;
6371 CHECK_NEW_parser_nodes__AExternCodeBlock(var7
);
6372 var_pexterncodeblocknode1
= var7
;
6373 var_node_list
= var_pexterncodeblocknode1
;
6374 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction575> */
6375 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
6376 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
6379 /* method parser#ReduceAction575#action for (self: Object, Parser) */
6380 void VIRTUAL_parser__ReduceAction575__action(val
* self
, val
* p0
) {
6381 parser__ReduceAction575__action(self
, p0
);
6384 /* method parser#ReduceAction576#action for (self: ReduceAction576, Parser) */
6385 void parser__ReduceAction576__action(val
* self
, val
* p0
) {
6386 val
* var_p
/* var p: Parser */;
6387 val
* var
/* : null */;
6388 val
* var_node_list
/* var node_list: nullable Object */;
6389 val
* var1
/* : nullable Object */;
6390 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6391 val
* var2
/* : nullable Object */;
6392 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6393 val
* var_pexterncodeblocknode1
/* var pexterncodeblocknode1: nullable Object */;
6394 long var3
/* : Int */;
6395 long var4
/* : Int */;
6398 var_node_list
= var
;
6399 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6400 var_nodearraylist2
= var1
;
6401 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6402 var_nodearraylist1
= var2
;
6403 var_pexterncodeblocknode1
= var_nodearraylist2
;
6404 var_node_list
= var_pexterncodeblocknode1
;
6405 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction576> */
6406 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
6407 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
6410 /* method parser#ReduceAction576#action for (self: Object, Parser) */
6411 void VIRTUAL_parser__ReduceAction576__action(val
* self
, val
* p0
) {
6412 parser__ReduceAction576__action(self
, p0
);
6415 /* method parser#ReduceAction577#action for (self: ReduceAction577, Parser) */
6416 void parser__ReduceAction577__action(val
* self
, val
* p0
) {
6417 val
* var_p
/* var p: Parser */;
6418 val
* var
/* : null */;
6419 val
* var_node_list
/* var node_list: nullable Object */;
6420 val
* var1
/* : nullable Object */;
6421 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6422 val
* var2
/* : Array[Object] */;
6423 val
* var_listnode4
/* var listnode4: Array[Object] */;
6424 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6425 short int var3
/* : Bool */;
6428 val
* var4
/* : AType */;
6429 val
* var5
/* : null */;
6430 val
* var6
/* : null */;
6431 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6432 long var7
/* : Int */;
6433 long var8
/* : Int */;
6436 var_node_list
= var
;
6437 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6438 var_nodearraylist1
= var1
;
6439 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
6440 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
6441 CHECK_NEW_array__Array(var2
);
6442 var_listnode4
= var2
;
6443 var_tclassidnode3
= var_nodearraylist1
;
6444 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6445 cltype
= type_nullable_parser_nodes__TClassid
.color
;
6446 idtype
= type_nullable_parser_nodes__TClassid
.id
;
6447 if(var_tclassidnode3
== NULL
) {
6450 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
6453 var3
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
6457 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6458 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23632);
6461 var4
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6464 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var4
, var5
, var_tclassidnode3
, var_listnode4
, var6
) /* init_atype on <var4:AType>*/;
6465 CHECK_NEW_parser_nodes__AType(var4
);
6466 var_ptypenode1
= var4
;
6467 var_node_list
= var_ptypenode1
;
6468 var7
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction577> */
6469 var8
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var7
) /* go_to on <var_p:Parser>*/;
6470 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var8
, var_node_list
) /* push on <var_p:Parser>*/;
6473 /* method parser#ReduceAction577#action for (self: Object, Parser) */
6474 void VIRTUAL_parser__ReduceAction577__action(val
* self
, val
* p0
) {
6475 parser__ReduceAction577__action(self
, p0
);
6478 /* method parser#ReduceAction578#action for (self: ReduceAction578, Parser) */
6479 void parser__ReduceAction578__action(val
* self
, val
* p0
) {
6480 val
* var_p
/* var p: Parser */;
6481 val
* var
/* : null */;
6482 val
* var_node_list
/* var node_list: nullable Object */;
6483 val
* var1
/* : nullable Object */;
6484 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6485 val
* var2
/* : nullable Object */;
6486 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6487 val
* var3
/* : Array[Object] */;
6488 val
* var_listnode4
/* var listnode4: Array[Object] */;
6489 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
6490 short int var4
/* : Bool */;
6493 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6494 short int var5
/* : Bool */;
6497 val
* var8
/* : AType */;
6498 val
* var9
/* : null */;
6499 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6500 long var10
/* : Int */;
6501 long var11
/* : Int */;
6504 var_node_list
= var
;
6505 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6506 var_nodearraylist2
= var1
;
6507 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6508 var_nodearraylist1
= var2
;
6509 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6510 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6511 CHECK_NEW_array__Array(var3
);
6512 var_listnode4
= var3
;
6513 var_tkwnullablenode2
= var_nodearraylist1
;
6514 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
6515 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
6516 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
6517 if(var_tkwnullablenode2
== NULL
) {
6520 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
6523 var4
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
6527 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6528 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23652);
6531 var_tclassidnode3
= var_nodearraylist2
;
6532 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6533 cltype6
= type_nullable_parser_nodes__TClassid
.color
;
6534 idtype7
= type_nullable_parser_nodes__TClassid
.id
;
6535 if(var_tclassidnode3
== NULL
) {
6538 if(cltype6
>= var_tclassidnode3
->type
->table_size
) {
6541 var5
= var_tclassidnode3
->type
->type_table
[cltype6
] == idtype7
;
6545 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6546 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23654);
6549 var8
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6551 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var8
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode4
, var9
) /* init_atype on <var8:AType>*/;
6552 CHECK_NEW_parser_nodes__AType(var8
);
6553 var_ptypenode1
= var8
;
6554 var_node_list
= var_ptypenode1
;
6555 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction578> */
6556 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
6557 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
6560 /* method parser#ReduceAction578#action for (self: Object, Parser) */
6561 void VIRTUAL_parser__ReduceAction578__action(val
* self
, val
* p0
) {
6562 parser__ReduceAction578__action(self
, p0
);
6565 /* method parser#ReduceAction579#action for (self: ReduceAction579, Parser) */
6566 void parser__ReduceAction579__action(val
* self
, val
* p0
) {
6567 val
* var_p
/* var p: Parser */;
6568 val
* var
/* : null */;
6569 val
* var_node_list
/* var node_list: nullable Object */;
6570 val
* var1
/* : nullable Object */;
6571 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6572 val
* var2
/* : nullable Object */;
6573 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6574 val
* var3
/* : Array[Object] */;
6575 val
* var_listnode4
/* var listnode4: Array[Object] */;
6576 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6577 short int var4
/* : Bool */;
6580 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
6581 short int var5
/* : Bool */;
6584 val
* var8
/* : AType */;
6585 val
* var9
/* : null */;
6586 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6587 long var10
/* : Int */;
6588 long var11
/* : Int */;
6591 var_node_list
= var
;
6592 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6593 var_nodearraylist2
= var1
;
6594 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6595 var_nodearraylist1
= var2
;
6596 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
6597 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
6598 CHECK_NEW_array__Array(var3
);
6599 var_listnode4
= var3
;
6600 var_tclassidnode3
= var_nodearraylist1
;
6601 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6602 cltype
= type_nullable_parser_nodes__TClassid
.color
;
6603 idtype
= type_nullable_parser_nodes__TClassid
.id
;
6604 if(var_tclassidnode3
== NULL
) {
6607 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
6610 var4
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
6614 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6615 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23674);
6618 var_pannotationsnode5
= var_nodearraylist2
;
6619 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
6620 cltype6
= type_nullable_parser_nodes__AAnnotations
.color
;
6621 idtype7
= type_nullable_parser_nodes__AAnnotations
.id
;
6622 if(var_pannotationsnode5
== NULL
) {
6625 if(cltype6
>= var_pannotationsnode5
->type
->table_size
) {
6628 var5
= var_pannotationsnode5
->type
->type_table
[cltype6
] == idtype7
;
6632 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6633 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23676);
6636 var8
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6638 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var8
, var9
, var_tclassidnode3
, var_listnode4
, var_pannotationsnode5
) /* init_atype on <var8:AType>*/;
6639 CHECK_NEW_parser_nodes__AType(var8
);
6640 var_ptypenode1
= var8
;
6641 var_node_list
= var_ptypenode1
;
6642 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction579> */
6643 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
6644 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
6647 /* method parser#ReduceAction579#action for (self: Object, Parser) */
6648 void VIRTUAL_parser__ReduceAction579__action(val
* self
, val
* p0
) {
6649 parser__ReduceAction579__action(self
, p0
);
6652 /* method parser#ReduceAction580#action for (self: ReduceAction580, Parser) */
6653 void parser__ReduceAction580__action(val
* self
, val
* p0
) {
6654 val
* var_p
/* var p: Parser */;
6655 val
* var
/* : null */;
6656 val
* var_node_list
/* var node_list: nullable Object */;
6657 val
* var1
/* : nullable Object */;
6658 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6659 val
* var2
/* : nullable Object */;
6660 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6661 val
* var3
/* : nullable Object */;
6662 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6663 val
* var4
/* : Array[Object] */;
6664 val
* var_listnode4
/* var listnode4: Array[Object] */;
6665 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
6666 short int var5
/* : Bool */;
6669 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6670 short int var6
/* : Bool */;
6673 val
* var_pannotationsnode5
/* var pannotationsnode5: nullable Object */;
6674 short int var9
/* : Bool */;
6677 val
* var12
/* : AType */;
6678 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6679 long var13
/* : Int */;
6680 long var14
/* : Int */;
6683 var_node_list
= var
;
6684 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6685 var_nodearraylist3
= var1
;
6686 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6687 var_nodearraylist2
= var2
;
6688 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6689 var_nodearraylist1
= var3
;
6690 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
6691 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
6692 CHECK_NEW_array__Array(var4
);
6693 var_listnode4
= var4
;
6694 var_tkwnullablenode2
= var_nodearraylist1
;
6695 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
6696 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
6697 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
6698 if(var_tkwnullablenode2
== NULL
) {
6701 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
6704 var5
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
6708 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6709 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23697);
6712 var_tclassidnode3
= var_nodearraylist2
;
6713 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6714 cltype7
= type_nullable_parser_nodes__TClassid
.color
;
6715 idtype8
= type_nullable_parser_nodes__TClassid
.id
;
6716 if(var_tclassidnode3
== NULL
) {
6719 if(cltype7
>= var_tclassidnode3
->type
->table_size
) {
6722 var6
= var_tclassidnode3
->type
->type_table
[cltype7
] == idtype8
;
6726 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6727 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23699);
6730 var_pannotationsnode5
= var_nodearraylist3
;
6731 /* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
6732 cltype10
= type_nullable_parser_nodes__AAnnotations
.color
;
6733 idtype11
= type_nullable_parser_nodes__AAnnotations
.id
;
6734 if(var_pannotationsnode5
== NULL
) {
6737 if(cltype10
>= var_pannotationsnode5
->type
->table_size
) {
6740 var9
= var_pannotationsnode5
->type
->type_table
[cltype10
] == idtype11
;
6744 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6745 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23701);
6748 var12
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6749 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var12
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode4
, var_pannotationsnode5
) /* init_atype on <var12:AType>*/;
6750 CHECK_NEW_parser_nodes__AType(var12
);
6751 var_ptypenode1
= var12
;
6752 var_node_list
= var_ptypenode1
;
6753 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction580> */
6754 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
6755 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
6758 /* method parser#ReduceAction580#action for (self: Object, Parser) */
6759 void VIRTUAL_parser__ReduceAction580__action(val
* self
, val
* p0
) {
6760 parser__ReduceAction580__action(self
, p0
);
6763 /* method parser#ReduceAction581#action for (self: ReduceAction581, Parser) */
6764 void parser__ReduceAction581__action(val
* self
, val
* p0
) {
6765 val
* var_p
/* var p: Parser */;
6766 val
* var
/* : null */;
6767 val
* var_node_list
/* var node_list: nullable Object */;
6768 val
* var1
/* : nullable Object */;
6769 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6770 val
* var2
/* : nullable Object */;
6771 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6772 val
* var3
/* : nullable Object */;
6773 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6774 val
* var4
/* : nullable Object */;
6775 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6776 val
* var5
/* : nullable Object */;
6777 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6778 val
* var6
/* : nullable Object */;
6779 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6780 val
* var7
/* : Array[Object] */;
6781 val
* var_listnode5
/* var listnode5: Array[Object] */;
6782 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6783 short int var8
/* : Bool */;
6786 val
* var_listnode4
/* var listnode4: nullable Object */;
6787 short int var9
/* : Bool */;
6790 val
* var12
/* : Array[Object] */;
6791 val
* var13
/* : AType */;
6792 val
* var14
/* : null */;
6793 val
* var15
/* : null */;
6794 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6795 long var16
/* : Int */;
6796 long var17
/* : Int */;
6799 var_node_list
= var
;
6800 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6801 var_nodearraylist6
= var1
;
6802 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6803 var_nodearraylist5
= var2
;
6804 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6805 var_nodearraylist4
= var3
;
6806 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6807 var_nodearraylist3
= var4
;
6808 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6809 var_nodearraylist2
= var5
;
6810 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6811 var_nodearraylist1
= var6
;
6812 var7
= NEW_array__Array(&type_array__Arraykernel__Object
);
6813 ((void (*)(val
*))(var7
->class->vft
[COLOR_array__Array__init
]))(var7
) /* init on <var7:Array[Object]>*/;
6814 CHECK_NEW_array__Array(var7
);
6815 var_listnode5
= var7
;
6816 var_tclassidnode3
= var_nodearraylist1
;
6817 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6818 cltype
= type_nullable_parser_nodes__TClassid
.color
;
6819 idtype
= type_nullable_parser_nodes__TClassid
.id
;
6820 if(var_tclassidnode3
== NULL
) {
6823 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
6826 var8
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
6830 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6831 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23725);
6834 var_listnode4
= var_nodearraylist4
;
6835 /* <var_listnode4:nullable Object> isa Array[Object] */
6836 cltype10
= type_array__Arraykernel__Object
.color
;
6837 idtype11
= type_array__Arraykernel__Object
.id
;
6838 if(var_listnode4
== NULL
) {
6841 if(cltype10
>= var_listnode4
->type
->table_size
) {
6844 var9
= var_listnode4
->type
->type_table
[cltype10
] == idtype11
;
6848 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6849 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23727);
6852 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction581>*/;
6853 var_listnode5
= var12
;
6854 var13
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6857 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var13
, var14
, var_tclassidnode3
, var_listnode5
, var15
) /* init_atype on <var13:AType>*/;
6858 CHECK_NEW_parser_nodes__AType(var13
);
6859 var_ptypenode1
= var13
;
6860 var_node_list
= var_ptypenode1
;
6861 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction581> */
6862 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
6863 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
6866 /* method parser#ReduceAction581#action for (self: Object, Parser) */
6867 void VIRTUAL_parser__ReduceAction581__action(val
* self
, val
* p0
) {
6868 parser__ReduceAction581__action(self
, p0
);
6871 /* method parser#ReduceAction582#action for (self: ReduceAction582, Parser) */
6872 void parser__ReduceAction582__action(val
* self
, val
* p0
) {
6873 val
* var_p
/* var p: Parser */;
6874 val
* var
/* : null */;
6875 val
* var_node_list
/* var node_list: nullable Object */;
6876 val
* var1
/* : nullable Object */;
6877 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6878 val
* var2
/* : nullable Object */;
6879 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6880 val
* var3
/* : nullable Object */;
6881 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6882 val
* var4
/* : nullable Object */;
6883 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6884 val
* var5
/* : nullable Object */;
6885 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6886 val
* var6
/* : nullable Object */;
6887 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6888 val
* var7
/* : nullable Object */;
6889 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6890 val
* var8
/* : Array[Object] */;
6891 val
* var_listnode5
/* var listnode5: Array[Object] */;
6892 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
6893 short int var9
/* : Bool */;
6896 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
6897 short int var10
/* : Bool */;
6900 val
* var_listnode4
/* var listnode4: nullable Object */;
6901 short int var13
/* : Bool */;
6904 val
* var16
/* : Array[Object] */;
6905 val
* var17
/* : AType */;
6906 val
* var18
/* : null */;
6907 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
6908 long var19
/* : Int */;
6909 long var20
/* : Int */;
6912 var_node_list
= var
;
6913 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6914 var_nodearraylist7
= var1
;
6915 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6916 var_nodearraylist6
= var2
;
6917 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6918 var_nodearraylist5
= var3
;
6919 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6920 var_nodearraylist4
= var4
;
6921 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6922 var_nodearraylist3
= var5
;
6923 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6924 var_nodearraylist2
= var6
;
6925 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
6926 var_nodearraylist1
= var7
;
6927 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
6928 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
6929 CHECK_NEW_array__Array(var8
);
6930 var_listnode5
= var8
;
6931 var_tkwnullablenode2
= var_nodearraylist1
;
6932 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
6933 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
6934 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
6935 if(var_tkwnullablenode2
== NULL
) {
6938 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
6941 var9
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
6945 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6946 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23753);
6949 var_tclassidnode3
= var_nodearraylist2
;
6950 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
6951 cltype11
= type_nullable_parser_nodes__TClassid
.color
;
6952 idtype12
= type_nullable_parser_nodes__TClassid
.id
;
6953 if(var_tclassidnode3
== NULL
) {
6956 if(cltype11
>= var_tclassidnode3
->type
->table_size
) {
6959 var10
= var_tclassidnode3
->type
->type_table
[cltype11
] == idtype12
;
6963 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6964 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23755);
6967 var_listnode4
= var_nodearraylist5
;
6968 /* <var_listnode4:nullable Object> isa Array[Object] */
6969 cltype14
= type_array__Arraykernel__Object
.color
;
6970 idtype15
= type_array__Arraykernel__Object
.id
;
6971 if(var_listnode4
== NULL
) {
6974 if(cltype14
>= var_listnode4
->type
->table_size
) {
6977 var13
= var_listnode4
->type
->type_table
[cltype14
] == idtype15
;
6981 fprintf(stderr
, "Runtime error: %s", "Assert failed");
6982 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23757);
6985 var16
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction582>*/;
6986 var_listnode5
= var16
;
6987 var17
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
6989 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var17
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode5
, var18
) /* init_atype on <var17:AType>*/;
6990 CHECK_NEW_parser_nodes__AType(var17
);
6991 var_ptypenode1
= var17
;
6992 var_node_list
= var_ptypenode1
;
6993 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction582> */
6994 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
6995 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
6998 /* method parser#ReduceAction582#action for (self: Object, Parser) */
6999 void VIRTUAL_parser__ReduceAction582__action(val
* self
, val
* p0
) {
7000 parser__ReduceAction582__action(self
, p0
);
7003 /* method parser#ReduceAction583#action for (self: ReduceAction583, Parser) */
7004 void parser__ReduceAction583__action(val
* self
, val
* p0
) {
7005 val
* var_p
/* var p: Parser */;
7006 val
* var
/* : null */;
7007 val
* var_node_list
/* var node_list: nullable Object */;
7008 val
* var1
/* : nullable Object */;
7009 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7010 val
* var2
/* : nullable Object */;
7011 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7012 val
* var3
/* : nullable Object */;
7013 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7014 val
* var4
/* : nullable Object */;
7015 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7016 val
* var5
/* : nullable Object */;
7017 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7018 val
* var6
/* : nullable Object */;
7019 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7020 val
* var7
/* : nullable Object */;
7021 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7022 val
* var8
/* : Array[Object] */;
7023 val
* var_listnode5
/* var listnode5: Array[Object] */;
7024 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
7025 short int var9
/* : Bool */;
7028 val
* var_listnode4
/* var listnode4: nullable Object */;
7029 short int var10
/* : Bool */;
7032 val
* var13
/* : Array[Object] */;
7033 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
7034 short int var14
/* : Bool */;
7037 val
* var17
/* : AType */;
7038 val
* var18
/* : null */;
7039 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
7040 long var19
/* : Int */;
7041 long var20
/* : Int */;
7044 var_node_list
= var
;
7045 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7046 var_nodearraylist7
= var1
;
7047 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7048 var_nodearraylist6
= var2
;
7049 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7050 var_nodearraylist5
= var3
;
7051 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7052 var_nodearraylist4
= var4
;
7053 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7054 var_nodearraylist3
= var5
;
7055 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7056 var_nodearraylist2
= var6
;
7057 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7058 var_nodearraylist1
= var7
;
7059 var8
= NEW_array__Array(&type_array__Arraykernel__Object
);
7060 ((void (*)(val
*))(var8
->class->vft
[COLOR_array__Array__init
]))(var8
) /* init on <var8:Array[Object]>*/;
7061 CHECK_NEW_array__Array(var8
);
7062 var_listnode5
= var8
;
7063 var_tclassidnode3
= var_nodearraylist1
;
7064 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
7065 cltype
= type_nullable_parser_nodes__TClassid
.color
;
7066 idtype
= type_nullable_parser_nodes__TClassid
.id
;
7067 if(var_tclassidnode3
== NULL
) {
7070 if(cltype
>= var_tclassidnode3
->type
->table_size
) {
7073 var9
= var_tclassidnode3
->type
->type_table
[cltype
] == idtype
;
7077 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7078 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23783);
7081 var_listnode4
= var_nodearraylist4
;
7082 /* <var_listnode4:nullable Object> isa Array[Object] */
7083 cltype11
= type_array__Arraykernel__Object
.color
;
7084 idtype12
= type_array__Arraykernel__Object
.id
;
7085 if(var_listnode4
== NULL
) {
7088 if(cltype11
>= var_listnode4
->type
->table_size
) {
7091 var10
= var_listnode4
->type
->type_table
[cltype11
] == idtype12
;
7095 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7096 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23785);
7099 var13
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction583>*/;
7100 var_listnode5
= var13
;
7101 var_pannotationsnode6
= var_nodearraylist7
;
7102 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
7103 cltype15
= type_nullable_parser_nodes__AAnnotations
.color
;
7104 idtype16
= type_nullable_parser_nodes__AAnnotations
.id
;
7105 if(var_pannotationsnode6
== NULL
) {
7108 if(cltype15
>= var_pannotationsnode6
->type
->table_size
) {
7111 var14
= var_pannotationsnode6
->type
->type_table
[cltype15
] == idtype16
;
7115 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7116 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23788);
7119 var17
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
7121 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var17
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var17
, var18
, var_tclassidnode3
, var_listnode5
, var_pannotationsnode6
) /* init_atype on <var17:AType>*/;
7122 CHECK_NEW_parser_nodes__AType(var17
);
7123 var_ptypenode1
= var17
;
7124 var_node_list
= var_ptypenode1
;
7125 var19
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction583> */
7126 var20
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var19
) /* go_to on <var_p:Parser>*/;
7127 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var20
, var_node_list
) /* push on <var_p:Parser>*/;
7130 /* method parser#ReduceAction583#action for (self: Object, Parser) */
7131 void VIRTUAL_parser__ReduceAction583__action(val
* self
, val
* p0
) {
7132 parser__ReduceAction583__action(self
, p0
);
7135 /* method parser#ReduceAction584#action for (self: ReduceAction584, Parser) */
7136 void parser__ReduceAction584__action(val
* self
, val
* p0
) {
7137 val
* var_p
/* var p: Parser */;
7138 val
* var
/* : null */;
7139 val
* var_node_list
/* var node_list: nullable Object */;
7140 val
* var1
/* : nullable Object */;
7141 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7142 val
* var2
/* : nullable Object */;
7143 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7144 val
* var3
/* : nullable Object */;
7145 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7146 val
* var4
/* : nullable Object */;
7147 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7148 val
* var5
/* : nullable Object */;
7149 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7150 val
* var6
/* : nullable Object */;
7151 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7152 val
* var7
/* : nullable Object */;
7153 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7154 val
* var8
/* : nullable Object */;
7155 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7156 val
* var9
/* : Array[Object] */;
7157 val
* var_listnode5
/* var listnode5: Array[Object] */;
7158 val
* var_tkwnullablenode2
/* var tkwnullablenode2: nullable Object */;
7159 short int var10
/* : Bool */;
7162 val
* var_tclassidnode3
/* var tclassidnode3: nullable Object */;
7163 short int var11
/* : Bool */;
7166 val
* var_listnode4
/* var listnode4: nullable Object */;
7167 short int var14
/* : Bool */;
7170 val
* var17
/* : Array[Object] */;
7171 val
* var_pannotationsnode6
/* var pannotationsnode6: nullable Object */;
7172 short int var18
/* : Bool */;
7175 val
* var21
/* : AType */;
7176 val
* var_ptypenode1
/* var ptypenode1: nullable AType */;
7177 long var22
/* : Int */;
7178 long var23
/* : Int */;
7181 var_node_list
= var
;
7182 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7183 var_nodearraylist8
= var1
;
7184 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7185 var_nodearraylist7
= var2
;
7186 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7187 var_nodearraylist6
= var3
;
7188 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7189 var_nodearraylist5
= var4
;
7190 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7191 var_nodearraylist4
= var5
;
7192 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7193 var_nodearraylist3
= var6
;
7194 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7195 var_nodearraylist2
= var7
;
7196 var8
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7197 var_nodearraylist1
= var8
;
7198 var9
= NEW_array__Array(&type_array__Arraykernel__Object
);
7199 ((void (*)(val
*))(var9
->class->vft
[COLOR_array__Array__init
]))(var9
) /* init on <var9:Array[Object]>*/;
7200 CHECK_NEW_array__Array(var9
);
7201 var_listnode5
= var9
;
7202 var_tkwnullablenode2
= var_nodearraylist1
;
7203 /* <var_tkwnullablenode2:nullable Object> isa nullable TKwnullable */
7204 cltype
= type_nullable_parser_nodes__TKwnullable
.color
;
7205 idtype
= type_nullable_parser_nodes__TKwnullable
.id
;
7206 if(var_tkwnullablenode2
== NULL
) {
7209 if(cltype
>= var_tkwnullablenode2
->type
->table_size
) {
7212 var10
= var_tkwnullablenode2
->type
->type_table
[cltype
] == idtype
;
7216 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7217 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23814);
7220 var_tclassidnode3
= var_nodearraylist2
;
7221 /* <var_tclassidnode3:nullable Object> isa nullable TClassid */
7222 cltype12
= type_nullable_parser_nodes__TClassid
.color
;
7223 idtype13
= type_nullable_parser_nodes__TClassid
.id
;
7224 if(var_tclassidnode3
== NULL
) {
7227 if(cltype12
>= var_tclassidnode3
->type
->table_size
) {
7230 var11
= var_tclassidnode3
->type
->type_table
[cltype12
] == idtype13
;
7234 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7235 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23816);
7238 var_listnode4
= var_nodearraylist5
;
7239 /* <var_listnode4:nullable Object> isa Array[Object] */
7240 cltype15
= type_array__Arraykernel__Object
.color
;
7241 idtype16
= type_array__Arraykernel__Object
.id
;
7242 if(var_listnode4
== NULL
) {
7245 if(cltype15
>= var_listnode4
->type
->table_size
) {
7248 var14
= var_listnode4
->type
->type_table
[cltype15
] == idtype16
;
7252 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7253 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23818);
7256 var17
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode5
, var_listnode4
) /* concat on <self:ReduceAction584>*/;
7257 var_listnode5
= var17
;
7258 var_pannotationsnode6
= var_nodearraylist8
;
7259 /* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
7260 cltype19
= type_nullable_parser_nodes__AAnnotations
.color
;
7261 idtype20
= type_nullable_parser_nodes__AAnnotations
.id
;
7262 if(var_pannotationsnode6
== NULL
) {
7265 if(cltype19
>= var_pannotationsnode6
->type
->table_size
) {
7268 var18
= var_pannotationsnode6
->type
->type_table
[cltype19
] == idtype20
;
7272 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7273 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23821);
7276 var21
= NEW_parser_nodes__AType(&type_parser_nodes__AType
);
7277 ((void (*)(val
*, val
*, val
*, val
*, val
*))(var21
->class->vft
[COLOR_parser_prod__AType__init_atype
]))(var21
, var_tkwnullablenode2
, var_tclassidnode3
, var_listnode5
, var_pannotationsnode6
) /* init_atype on <var21:AType>*/;
7278 CHECK_NEW_parser_nodes__AType(var21
);
7279 var_ptypenode1
= var21
;
7280 var_node_list
= var_ptypenode1
;
7281 var22
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction584> */
7282 var23
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var22
) /* go_to on <var_p:Parser>*/;
7283 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var23
, var_node_list
) /* push on <var_p:Parser>*/;
7286 /* method parser#ReduceAction584#action for (self: Object, Parser) */
7287 void VIRTUAL_parser__ReduceAction584__action(val
* self
, val
* p0
) {
7288 parser__ReduceAction584__action(self
, p0
);
7291 /* method parser#ReduceAction585#action for (self: ReduceAction585, Parser) */
7292 void parser__ReduceAction585__action(val
* self
, val
* p0
) {
7293 val
* var_p
/* var p: Parser */;
7294 val
* var
/* : null */;
7295 val
* var_node_list
/* var node_list: nullable Object */;
7296 val
* var1
/* : nullable Object */;
7297 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7298 val
* var2
/* : Array[Object] */;
7299 val
* var_listnode2
/* var listnode2: Array[Object] */;
7300 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
7301 val
* var3
/* : null */;
7302 short int var4
/* : Bool */;
7303 long var5
/* : Int */;
7304 long var6
/* : Int */;
7307 var_node_list
= var
;
7308 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7309 var_nodearraylist1
= var1
;
7310 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
7311 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
7312 CHECK_NEW_array__Array(var2
);
7313 var_listnode2
= var2
;
7314 var_ptypenode1
= var_nodearraylist1
;
7316 if (var_ptypenode1
== NULL
) {
7317 var4
= 0; /* is null */
7319 var4
= 1; /* arg is null and recv is not */
7322 ((void (*)(val
*, val
*))(var_listnode2
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode2
, var_ptypenode1
) /* add on <var_listnode2:Array[Object]>*/;
7325 var_node_list
= var_listnode2
;
7326 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction585> */
7327 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
7328 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
7331 /* method parser#ReduceAction585#action for (self: Object, Parser) */
7332 void VIRTUAL_parser__ReduceAction585__action(val
* self
, val
* p0
) {
7333 parser__ReduceAction585__action(self
, p0
);
7336 /* method parser#ReduceAction586#action for (self: ReduceAction586, Parser) */
7337 void parser__ReduceAction586__action(val
* self
, val
* p0
) {
7338 val
* var_p
/* var p: Parser */;
7339 val
* var
/* : null */;
7340 val
* var_node_list
/* var node_list: nullable Object */;
7341 val
* var1
/* : nullable Object */;
7342 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7343 val
* var2
/* : nullable Object */;
7344 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7345 val
* var3
/* : Array[Object] */;
7346 val
* var_listnode3
/* var listnode3: Array[Object] */;
7347 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
7348 val
* var_listnode2
/* var listnode2: nullable Object */;
7349 short int var4
/* : Bool */;
7352 val
* var5
/* : null */;
7353 short int var6
/* : Bool */;
7354 val
* var7
/* : Array[Object] */;
7355 long var8
/* : Int */;
7356 long var9
/* : Int */;
7359 var_node_list
= var
;
7360 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7361 var_nodearraylist2
= var1
;
7362 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7363 var_nodearraylist1
= var2
;
7364 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7365 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7366 CHECK_NEW_array__Array(var3
);
7367 var_listnode3
= var3
;
7368 var_ptypenode1
= var_nodearraylist1
;
7369 var_listnode2
= var_nodearraylist2
;
7370 /* <var_listnode2:nullable Object> isa Array[Object] */
7371 cltype
= type_array__Arraykernel__Object
.color
;
7372 idtype
= type_array__Arraykernel__Object
.id
;
7373 if(var_listnode2
== NULL
) {
7376 if(cltype
>= var_listnode2
->type
->table_size
) {
7379 var4
= var_listnode2
->type
->type_table
[cltype
] == idtype
;
7383 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7384 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23857);
7388 if (var_ptypenode1
== NULL
) {
7389 var6
= 0; /* is null */
7391 var6
= 1; /* arg is null and recv is not */
7394 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_ptypenode1
) /* add on <var_listnode3:Array[Object]>*/;
7397 var7
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode3
, var_listnode2
) /* concat on <self:ReduceAction586>*/;
7398 var_listnode3
= var7
;
7399 var_node_list
= var_listnode3
;
7400 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction586> */
7401 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
7402 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
7405 /* method parser#ReduceAction586#action for (self: Object, Parser) */
7406 void VIRTUAL_parser__ReduceAction586__action(val
* self
, val
* p0
) {
7407 parser__ReduceAction586__action(self
, p0
);
7410 /* method parser#ReduceAction587#action for (self: ReduceAction587, Parser) */
7411 void parser__ReduceAction587__action(val
* self
, val
* p0
) {
7412 val
* var_p
/* var p: Parser */;
7413 val
* var
/* : null */;
7414 val
* var_node_list
/* var node_list: nullable Object */;
7415 val
* var1
/* : nullable Object */;
7416 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7417 val
* var2
/* : nullable Object */;
7418 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7419 val
* var3
/* : nullable Object */;
7420 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7421 val
* var_ptypenode1
/* var ptypenode1: nullable Object */;
7422 long var4
/* : Int */;
7423 long var5
/* : Int */;
7426 var_node_list
= var
;
7427 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7428 var_nodearraylist3
= var1
;
7429 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7430 var_nodearraylist2
= var2
;
7431 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7432 var_nodearraylist1
= var3
;
7433 var_ptypenode1
= var_nodearraylist3
;
7434 var_node_list
= var_ptypenode1
;
7435 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction587> */
7436 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
7437 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
7440 /* method parser#ReduceAction587#action for (self: Object, Parser) */
7441 void VIRTUAL_parser__ReduceAction587__action(val
* self
, val
* p0
) {
7442 parser__ReduceAction587__action(self
, p0
);
7445 /* method parser#ReduceAction589#action for (self: ReduceAction589, Parser) */
7446 void parser__ReduceAction589__action(val
* self
, val
* p0
) {
7447 val
* var_p
/* var p: Parser */;
7448 val
* var
/* : null */;
7449 val
* var_node_list
/* var node_list: nullable Object */;
7450 val
* var1
/* : nullable Object */;
7451 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7452 val
* var2
/* : nullable Object */;
7453 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7454 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
7455 long var3
/* : Int */;
7456 long var4
/* : Int */;
7459 var_node_list
= var
;
7460 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7461 var_nodearraylist2
= var1
;
7462 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7463 var_nodearraylist1
= var2
;
7464 var_pexprnode1
= var_nodearraylist2
;
7465 var_node_list
= var_pexprnode1
;
7466 var3
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction589> */
7467 var4
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var3
) /* go_to on <var_p:Parser>*/;
7468 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var4
, var_node_list
) /* push on <var_p:Parser>*/;
7471 /* method parser#ReduceAction589#action for (self: Object, Parser) */
7472 void VIRTUAL_parser__ReduceAction589__action(val
* self
, val
* p0
) {
7473 parser__ReduceAction589__action(self
, p0
);
7476 /* method parser#ReduceAction590#action for (self: ReduceAction590, Parser) */
7477 void parser__ReduceAction590__action(val
* self
, val
* p0
) {
7478 val
* var_p
/* var p: Parser */;
7479 val
* var
/* : null */;
7480 val
* var_node_list
/* var node_list: nullable Object */;
7481 val
* var1
/* : nullable Object */;
7482 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7483 val
* var2
/* : nullable Object */;
7484 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7485 val
* var3
/* : Array[Object] */;
7486 val
* var_listnode2
/* var listnode2: Array[Object] */;
7487 val
* var_tkwendnode3
/* var tkwendnode3: nullable Object */;
7488 short int var4
/* : Bool */;
7491 val
* var5
/* : ABlockExpr */;
7492 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7493 long var6
/* : Int */;
7494 long var7
/* : Int */;
7497 var_node_list
= var
;
7498 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7499 var_nodearraylist2
= var1
;
7500 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7501 var_nodearraylist1
= var2
;
7502 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7503 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7504 CHECK_NEW_array__Array(var3
);
7505 var_listnode2
= var3
;
7506 var_tkwendnode3
= var_nodearraylist2
;
7507 /* <var_tkwendnode3:nullable Object> isa nullable TKwend */
7508 cltype
= type_nullable_parser_nodes__TKwend
.color
;
7509 idtype
= type_nullable_parser_nodes__TKwend
.id
;
7510 if(var_tkwendnode3
== NULL
) {
7513 if(cltype
>= var_tkwendnode3
->type
->table_size
) {
7516 var4
= var_tkwendnode3
->type
->type_table
[cltype
] == idtype
;
7520 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7521 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23900);
7524 var5
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7525 ((void (*)(val
*, val
*, val
*))(var5
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var5
, var_listnode2
, var_tkwendnode3
) /* init_ablockexpr on <var5:ABlockExpr>*/;
7526 CHECK_NEW_parser_nodes__ABlockExpr(var5
);
7527 var_pexprnode1
= var5
;
7528 var_node_list
= var_pexprnode1
;
7529 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction590> */
7530 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
7531 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
7534 /* method parser#ReduceAction590#action for (self: Object, Parser) */
7535 void VIRTUAL_parser__ReduceAction590__action(val
* self
, val
* p0
) {
7536 parser__ReduceAction590__action(self
, p0
);
7539 /* method parser#ReduceAction591#action for (self: ReduceAction591, Parser) */
7540 void parser__ReduceAction591__action(val
* self
, val
* p0
) {
7541 val
* var_p
/* var p: Parser */;
7542 val
* var
/* : null */;
7543 val
* var_node_list
/* var node_list: nullable Object */;
7544 val
* var1
/* : nullable Object */;
7545 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7546 val
* var2
/* : Array[Object] */;
7547 val
* var_listnode2
/* var listnode2: Array[Object] */;
7548 val
* var_tkwendnode3
/* var tkwendnode3: nullable Object */;
7549 short int var3
/* : Bool */;
7552 val
* var4
/* : ABlockExpr */;
7553 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7554 long var5
/* : Int */;
7555 long var6
/* : Int */;
7558 var_node_list
= var
;
7559 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7560 var_nodearraylist1
= var1
;
7561 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
7562 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
7563 CHECK_NEW_array__Array(var2
);
7564 var_listnode2
= var2
;
7565 var_tkwendnode3
= var_nodearraylist1
;
7566 /* <var_tkwendnode3:nullable Object> isa nullable TKwend */
7567 cltype
= type_nullable_parser_nodes__TKwend
.color
;
7568 idtype
= type_nullable_parser_nodes__TKwend
.id
;
7569 if(var_tkwendnode3
== NULL
) {
7572 if(cltype
>= var_tkwendnode3
->type
->table_size
) {
7575 var3
= var_tkwendnode3
->type
->type_table
[cltype
] == idtype
;
7579 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7580 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23917);
7583 var4
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7584 ((void (*)(val
*, val
*, val
*))(var4
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var4
, var_listnode2
, var_tkwendnode3
) /* init_ablockexpr on <var4:ABlockExpr>*/;
7585 CHECK_NEW_parser_nodes__ABlockExpr(var4
);
7586 var_pexprnode1
= var4
;
7587 var_node_list
= var_pexprnode1
;
7588 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction591> */
7589 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
7590 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
7593 /* method parser#ReduceAction591#action for (self: Object, Parser) */
7594 void VIRTUAL_parser__ReduceAction591__action(val
* self
, val
* p0
) {
7595 parser__ReduceAction591__action(self
, p0
);
7598 /* method parser#ReduceAction592#action for (self: ReduceAction592, Parser) */
7599 void parser__ReduceAction592__action(val
* self
, val
* p0
) {
7600 val
* var_p
/* var p: Parser */;
7601 val
* var
/* : null */;
7602 val
* var_node_list
/* var node_list: nullable Object */;
7603 val
* var1
/* : nullable Object */;
7604 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7605 val
* var_pexprnode1
/* var pexprnode1: nullable Object */;
7606 long var2
/* : Int */;
7607 long var3
/* : Int */;
7610 var_node_list
= var
;
7611 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7612 var_nodearraylist1
= var1
;
7613 var_pexprnode1
= var_nodearraylist1
;
7614 var_node_list
= var_pexprnode1
;
7615 var2
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction592> */
7616 var3
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var2
) /* go_to on <var_p:Parser>*/;
7617 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var3
, var_node_list
) /* push on <var_p:Parser>*/;
7620 /* method parser#ReduceAction592#action for (self: Object, Parser) */
7621 void VIRTUAL_parser__ReduceAction592__action(val
* self
, val
* p0
) {
7622 parser__ReduceAction592__action(self
, p0
);
7625 /* method parser#ReduceAction593#action for (self: ReduceAction593, Parser) */
7626 void parser__ReduceAction593__action(val
* self
, val
* p0
) {
7627 val
* var_p
/* var p: Parser */;
7628 val
* var
/* : null */;
7629 val
* var_node_list
/* var node_list: nullable Object */;
7630 val
* var1
/* : nullable Object */;
7631 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7632 val
* var2
/* : Array[Object] */;
7633 val
* var_listnode3
/* var listnode3: Array[Object] */;
7634 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7635 short int var3
/* : Bool */;
7638 val
* var4
/* : null */;
7639 short int var5
/* : Bool */;
7640 val
* var6
/* : ABlockExpr */;
7641 val
* var7
/* : null */;
7642 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7643 long var8
/* : Int */;
7644 long var9
/* : Int */;
7647 var_node_list
= var
;
7648 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7649 var_nodearraylist1
= var1
;
7650 var2
= NEW_array__Array(&type_array__Arraykernel__Object
);
7651 ((void (*)(val
*))(var2
->class->vft
[COLOR_array__Array__init
]))(var2
) /* init on <var2:Array[Object]>*/;
7652 CHECK_NEW_array__Array(var2
);
7653 var_listnode3
= var2
;
7654 var_pexprnode2
= var_nodearraylist1
;
7655 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7656 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7657 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7658 if(var_pexprnode2
== NULL
) {
7661 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7664 var3
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7668 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7669 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23945);
7673 if (var_pexprnode2
== NULL
) {
7674 var5
= 0; /* is null */
7676 var5
= 1; /* arg is null and recv is not */
7679 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
7682 var6
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7684 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var6
, var_listnode3
, var7
) /* init_ablockexpr on <var6:ABlockExpr>*/;
7685 CHECK_NEW_parser_nodes__ABlockExpr(var6
);
7686 var_pexprnode1
= var6
;
7687 var_node_list
= var_pexprnode1
;
7688 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction593> */
7689 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
7690 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
7693 /* method parser#ReduceAction593#action for (self: Object, Parser) */
7694 void VIRTUAL_parser__ReduceAction593__action(val
* self
, val
* p0
) {
7695 parser__ReduceAction593__action(self
, p0
);
7698 /* method parser#ReduceAction594#action for (self: ReduceAction594, Parser) */
7699 void parser__ReduceAction594__action(val
* self
, val
* p0
) {
7700 val
* var_p
/* var p: Parser */;
7701 val
* var
/* : null */;
7702 val
* var_node_list
/* var node_list: nullable Object */;
7703 val
* var1
/* : nullable Object */;
7704 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7705 val
* var2
/* : nullable Object */;
7706 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7707 val
* var3
/* : Array[Object] */;
7708 val
* var_listnode4
/* var listnode4: Array[Object] */;
7709 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7710 short int var4
/* : Bool */;
7713 val
* var_listnode3
/* var listnode3: nullable Object */;
7714 short int var5
/* : Bool */;
7717 val
* var8
/* : null */;
7718 short int var9
/* : Bool */;
7719 val
* var10
/* : Array[Object] */;
7720 val
* var11
/* : ABlockExpr */;
7721 val
* var12
/* : null */;
7722 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7723 long var13
/* : Int */;
7724 long var14
/* : Int */;
7727 var_node_list
= var
;
7728 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7729 var_nodearraylist2
= var1
;
7730 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7731 var_nodearraylist1
= var2
;
7732 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7733 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7734 CHECK_NEW_array__Array(var3
);
7735 var_listnode4
= var3
;
7736 var_pexprnode2
= var_nodearraylist1
;
7737 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7738 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7739 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7740 if(var_pexprnode2
== NULL
) {
7743 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7746 var4
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7750 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7751 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23966);
7754 var_listnode3
= var_nodearraylist2
;
7755 /* <var_listnode3:nullable Object> isa Array[Object] */
7756 cltype6
= type_array__Arraykernel__Object
.color
;
7757 idtype7
= type_array__Arraykernel__Object
.id
;
7758 if(var_listnode3
== NULL
) {
7761 if(cltype6
>= var_listnode3
->type
->table_size
) {
7764 var5
= var_listnode3
->type
->type_table
[cltype6
] == idtype7
;
7768 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7769 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23968);
7773 if (var_pexprnode2
== NULL
) {
7774 var9
= 0; /* is null */
7776 var9
= 1; /* arg is null and recv is not */
7779 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
7782 var10
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction594>*/;
7783 var_listnode4
= var10
;
7784 var11
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7786 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var11
, var_listnode4
, var12
) /* init_ablockexpr on <var11:ABlockExpr>*/;
7787 CHECK_NEW_parser_nodes__ABlockExpr(var11
);
7788 var_pexprnode1
= var11
;
7789 var_node_list
= var_pexprnode1
;
7790 var13
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction594> */
7791 var14
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var13
) /* go_to on <var_p:Parser>*/;
7792 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var14
, var_node_list
) /* push on <var_p:Parser>*/;
7795 /* method parser#ReduceAction594#action for (self: Object, Parser) */
7796 void VIRTUAL_parser__ReduceAction594__action(val
* self
, val
* p0
) {
7797 parser__ReduceAction594__action(self
, p0
);
7800 /* method parser#ReduceAction595#action for (self: ReduceAction595, Parser) */
7801 void parser__ReduceAction595__action(val
* self
, val
* p0
) {
7802 val
* var_p
/* var p: Parser */;
7803 val
* var
/* : null */;
7804 val
* var_node_list
/* var node_list: nullable Object */;
7805 val
* var1
/* : nullable Object */;
7806 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7807 val
* var2
/* : nullable Object */;
7808 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7809 val
* var3
/* : Array[Object] */;
7810 val
* var_listnode3
/* var listnode3: Array[Object] */;
7811 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7812 short int var4
/* : Bool */;
7815 val
* var5
/* : null */;
7816 short int var6
/* : Bool */;
7817 val
* var7
/* : ABlockExpr */;
7818 val
* var8
/* : null */;
7819 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7820 long var9
/* : Int */;
7821 long var10
/* : Int */;
7824 var_node_list
= var
;
7825 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7826 var_nodearraylist2
= var1
;
7827 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7828 var_nodearraylist1
= var2
;
7829 var3
= NEW_array__Array(&type_array__Arraykernel__Object
);
7830 ((void (*)(val
*))(var3
->class->vft
[COLOR_array__Array__init
]))(var3
) /* init on <var3:Array[Object]>*/;
7831 CHECK_NEW_array__Array(var3
);
7832 var_listnode3
= var3
;
7833 var_pexprnode2
= var_nodearraylist1
;
7834 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7835 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7836 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7837 if(var_pexprnode2
== NULL
) {
7840 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7843 var4
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7847 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7848 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 23990);
7852 if (var_pexprnode2
== NULL
) {
7853 var6
= 0; /* is null */
7855 var6
= 1; /* arg is null and recv is not */
7858 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
7861 var7
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7863 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var7
, var_listnode3
, var8
) /* init_ablockexpr on <var7:ABlockExpr>*/;
7864 CHECK_NEW_parser_nodes__ABlockExpr(var7
);
7865 var_pexprnode1
= var7
;
7866 var_node_list
= var_pexprnode1
;
7867 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction595> */
7868 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
7869 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
7872 /* method parser#ReduceAction595#action for (self: Object, Parser) */
7873 void VIRTUAL_parser__ReduceAction595__action(val
* self
, val
* p0
) {
7874 parser__ReduceAction595__action(self
, p0
);
7877 /* method parser#ReduceAction596#action for (self: ReduceAction596, Parser) */
7878 void parser__ReduceAction596__action(val
* self
, val
* p0
) {
7879 val
* var_p
/* var p: Parser */;
7880 val
* var
/* : null */;
7881 val
* var_node_list
/* var node_list: nullable Object */;
7882 val
* var1
/* : nullable Object */;
7883 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7884 val
* var2
/* : nullable Object */;
7885 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7886 val
* var3
/* : nullable Object */;
7887 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7888 val
* var4
/* : Array[Object] */;
7889 val
* var_listnode4
/* var listnode4: Array[Object] */;
7890 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7891 short int var5
/* : Bool */;
7894 val
* var_listnode3
/* var listnode3: nullable Object */;
7895 short int var6
/* : Bool */;
7898 val
* var9
/* : null */;
7899 short int var10
/* : Bool */;
7900 val
* var11
/* : Array[Object] */;
7901 val
* var12
/* : ABlockExpr */;
7902 val
* var13
/* : null */;
7903 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
7904 long var14
/* : Int */;
7905 long var15
/* : Int */;
7908 var_node_list
= var
;
7909 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7910 var_nodearraylist3
= var1
;
7911 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7912 var_nodearraylist2
= var2
;
7913 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
7914 var_nodearraylist1
= var3
;
7915 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
7916 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
7917 CHECK_NEW_array__Array(var4
);
7918 var_listnode4
= var4
;
7919 var_pexprnode2
= var_nodearraylist1
;
7920 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7921 cltype
= type_nullable_parser_nodes__AExpr
.color
;
7922 idtype
= type_nullable_parser_nodes__AExpr
.id
;
7923 if(var_pexprnode2
== NULL
) {
7926 if(cltype
>= var_pexprnode2
->type
->table_size
) {
7929 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
7933 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7934 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24012);
7937 var_listnode3
= var_nodearraylist2
;
7938 /* <var_listnode3:nullable Object> isa Array[Object] */
7939 cltype7
= type_array__Arraykernel__Object
.color
;
7940 idtype8
= type_array__Arraykernel__Object
.id
;
7941 if(var_listnode3
== NULL
) {
7944 if(cltype7
>= var_listnode3
->type
->table_size
) {
7947 var6
= var_listnode3
->type
->type_table
[cltype7
] == idtype8
;
7951 fprintf(stderr
, "Runtime error: %s", "Assert failed");
7952 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24014);
7956 if (var_pexprnode2
== NULL
) {
7957 var10
= 0; /* is null */
7959 var10
= 1; /* arg is null and recv is not */
7962 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
7965 var11
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction596>*/;
7966 var_listnode4
= var11
;
7967 var12
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
7969 ((void (*)(val
*, val
*, val
*))(var12
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var12
, var_listnode4
, var13
) /* init_ablockexpr on <var12:ABlockExpr>*/;
7970 CHECK_NEW_parser_nodes__ABlockExpr(var12
);
7971 var_pexprnode1
= var12
;
7972 var_node_list
= var_pexprnode1
;
7973 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction596> */
7974 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
7975 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
7978 /* method parser#ReduceAction596#action for (self: Object, Parser) */
7979 void VIRTUAL_parser__ReduceAction596__action(val
* self
, val
* p0
) {
7980 parser__ReduceAction596__action(self
, p0
);
7983 /* method parser#ReduceAction597#action for (self: ReduceAction597, Parser) */
7984 void parser__ReduceAction597__action(val
* self
, val
* p0
) {
7985 val
* var_p
/* var p: Parser */;
7986 val
* var
/* : null */;
7987 val
* var_node_list
/* var node_list: nullable Object */;
7988 val
* var1
/* : nullable Object */;
7989 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7990 val
* var2
/* : nullable Object */;
7991 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7992 val
* var3
/* : nullable Object */;
7993 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7994 val
* var4
/* : Array[Object] */;
7995 val
* var_listnode3
/* var listnode3: Array[Object] */;
7996 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7997 short int var5
/* : Bool */;
8000 val
* var6
/* : null */;
8001 short int var7
/* : Bool */;
8002 val
* var_tkwendnode4
/* var tkwendnode4: nullable Object */;
8003 short int var8
/* : Bool */;
8006 val
* var11
/* : ABlockExpr */;
8007 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
8008 long var12
/* : Int */;
8009 long var13
/* : Int */;
8012 var_node_list
= var
;
8013 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8014 var_nodearraylist3
= var1
;
8015 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8016 var_nodearraylist2
= var2
;
8017 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8018 var_nodearraylist1
= var3
;
8019 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
8020 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
8021 CHECK_NEW_array__Array(var4
);
8022 var_listnode3
= var4
;
8023 var_pexprnode2
= var_nodearraylist1
;
8024 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8025 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8026 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8027 if(var_pexprnode2
== NULL
) {
8030 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8033 var5
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8037 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8038 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24037);
8042 if (var_pexprnode2
== NULL
) {
8043 var7
= 0; /* is null */
8045 var7
= 1; /* arg is null and recv is not */
8048 ((void (*)(val
*, val
*))(var_listnode3
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode3
, var_pexprnode2
) /* add on <var_listnode3:Array[Object]>*/;
8051 var_tkwendnode4
= var_nodearraylist3
;
8052 /* <var_tkwendnode4:nullable Object> isa nullable TKwend */
8053 cltype9
= type_nullable_parser_nodes__TKwend
.color
;
8054 idtype10
= type_nullable_parser_nodes__TKwend
.id
;
8055 if(var_tkwendnode4
== NULL
) {
8058 if(cltype9
>= var_tkwendnode4
->type
->table_size
) {
8061 var8
= var_tkwendnode4
->type
->type_table
[cltype9
] == idtype10
;
8065 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8066 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24042);
8069 var11
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
8070 ((void (*)(val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var11
, var_listnode3
, var_tkwendnode4
) /* init_ablockexpr on <var11:ABlockExpr>*/;
8071 CHECK_NEW_parser_nodes__ABlockExpr(var11
);
8072 var_pexprnode1
= var11
;
8073 var_node_list
= var_pexprnode1
;
8074 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction597> */
8075 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
8076 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
8079 /* method parser#ReduceAction597#action for (self: Object, Parser) */
8080 void VIRTUAL_parser__ReduceAction597__action(val
* self
, val
* p0
) {
8081 parser__ReduceAction597__action(self
, p0
);
8084 /* method parser#ReduceAction598#action for (self: ReduceAction598, Parser) */
8085 void parser__ReduceAction598__action(val
* self
, val
* p0
) {
8086 val
* var_p
/* var p: Parser */;
8087 val
* var
/* : null */;
8088 val
* var_node_list
/* var node_list: nullable Object */;
8089 val
* var1
/* : nullable Object */;
8090 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8091 val
* var2
/* : nullable Object */;
8092 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8093 val
* var3
/* : nullable Object */;
8094 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8095 val
* var4
/* : nullable Object */;
8096 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8097 val
* var5
/* : Array[Object] */;
8098 val
* var_listnode4
/* var listnode4: Array[Object] */;
8099 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8100 short int var6
/* : Bool */;
8103 val
* var_listnode3
/* var listnode3: nullable Object */;
8104 short int var7
/* : Bool */;
8107 val
* var10
/* : null */;
8108 short int var11
/* : Bool */;
8109 val
* var12
/* : Array[Object] */;
8110 val
* var_tkwendnode5
/* var tkwendnode5: nullable Object */;
8111 short int var13
/* : Bool */;
8114 val
* var16
/* : ABlockExpr */;
8115 val
* var_pexprnode1
/* var pexprnode1: nullable ABlockExpr */;
8116 long var17
/* : Int */;
8117 long var18
/* : Int */;
8120 var_node_list
= var
;
8121 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8122 var_nodearraylist4
= var1
;
8123 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8124 var_nodearraylist3
= var2
;
8125 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8126 var_nodearraylist2
= var3
;
8127 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8128 var_nodearraylist1
= var4
;
8129 var5
= NEW_array__Array(&type_array__Arraykernel__Object
);
8130 ((void (*)(val
*))(var5
->class->vft
[COLOR_array__Array__init
]))(var5
) /* init on <var5:Array[Object]>*/;
8131 CHECK_NEW_array__Array(var5
);
8132 var_listnode4
= var5
;
8133 var_pexprnode2
= var_nodearraylist1
;
8134 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8135 cltype
= type_nullable_parser_nodes__AExpr
.color
;
8136 idtype
= type_nullable_parser_nodes__AExpr
.id
;
8137 if(var_pexprnode2
== NULL
) {
8140 if(cltype
>= var_pexprnode2
->type
->table_size
) {
8143 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
8147 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8148 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24062);
8151 var_listnode3
= var_nodearraylist2
;
8152 /* <var_listnode3:nullable Object> isa Array[Object] */
8153 cltype8
= type_array__Arraykernel__Object
.color
;
8154 idtype9
= type_array__Arraykernel__Object
.id
;
8155 if(var_listnode3
== NULL
) {
8158 if(cltype8
>= var_listnode3
->type
->table_size
) {
8161 var7
= var_listnode3
->type
->type_table
[cltype8
] == idtype9
;
8165 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8166 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24064);
8170 if (var_pexprnode2
== NULL
) {
8171 var11
= 0; /* is null */
8173 var11
= 1; /* arg is null and recv is not */
8176 ((void (*)(val
*, val
*))(var_listnode4
->class->vft
[COLOR_abstract_collection__SimpleCollection__add
]))(var_listnode4
, var_pexprnode2
) /* add on <var_listnode4:Array[Object]>*/;
8179 var12
= ((val
* (*)(val
*, val
*, val
*))(self
->class->vft
[COLOR_parser__ReduceAction__concat
]))(self
, var_listnode4
, var_listnode3
) /* concat on <self:ReduceAction598>*/;
8180 var_listnode4
= var12
;
8181 var_tkwendnode5
= var_nodearraylist4
;
8182 /* <var_tkwendnode5:nullable Object> isa nullable TKwend */
8183 cltype14
= type_nullable_parser_nodes__TKwend
.color
;
8184 idtype15
= type_nullable_parser_nodes__TKwend
.id
;
8185 if(var_tkwendnode5
== NULL
) {
8188 if(cltype14
>= var_tkwendnode5
->type
->table_size
) {
8191 var13
= var_tkwendnode5
->type
->type_table
[cltype14
] == idtype15
;
8195 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8196 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24070);
8199 var16
= NEW_parser_nodes__ABlockExpr(&type_parser_nodes__ABlockExpr
);
8200 ((void (*)(val
*, val
*, val
*))(var16
->class->vft
[COLOR_parser_prod__ABlockExpr__init_ablockexpr
]))(var16
, var_listnode4
, var_tkwendnode5
) /* init_ablockexpr on <var16:ABlockExpr>*/;
8201 CHECK_NEW_parser_nodes__ABlockExpr(var16
);
8202 var_pexprnode1
= var16
;
8203 var_node_list
= var_pexprnode1
;
8204 var17
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction598> */
8205 var18
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var17
) /* go_to on <var_p:Parser>*/;
8206 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var18
, var_node_list
) /* push on <var_p:Parser>*/;
8209 /* method parser#ReduceAction598#action for (self: Object, Parser) */
8210 void VIRTUAL_parser__ReduceAction598__action(val
* self
, val
* p0
) {
8211 parser__ReduceAction598__action(self
, p0
);
8214 /* method parser#ReduceAction602#action for (self: ReduceAction602, Parser) */
8215 void parser__ReduceAction602__action(val
* self
, val
* p0
) {
8216 val
* var_p
/* var p: Parser */;
8217 val
* var
/* : null */;
8218 val
* var_node_list
/* var node_list: nullable Object */;
8219 val
* var1
/* : nullable Object */;
8220 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8221 val
* var_tkwreturnnode2
/* var tkwreturnnode2: nullable Object */;
8222 short int var2
/* : Bool */;
8225 val
* var3
/* : AReturnExpr */;
8226 val
* var4
/* : null */;
8227 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
8228 long var5
/* : Int */;
8229 long var6
/* : Int */;
8232 var_node_list
= var
;
8233 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8234 var_nodearraylist1
= var1
;
8235 var_tkwreturnnode2
= var_nodearraylist1
;
8236 /* <var_tkwreturnnode2:nullable Object> isa nullable TKwreturn */
8237 cltype
= type_nullable_parser_nodes__TKwreturn
.color
;
8238 idtype
= type_nullable_parser_nodes__TKwreturn
.id
;
8239 if(var_tkwreturnnode2
== NULL
) {
8242 if(cltype
>= var_tkwreturnnode2
->type
->table_size
) {
8245 var2
= var_tkwreturnnode2
->type
->type_table
[cltype
] == idtype
;
8249 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8250 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24086);
8253 var3
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
8255 ((void (*)(val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var3
, var_tkwreturnnode2
, var4
) /* init_areturnexpr on <var3:AReturnExpr>*/;
8256 CHECK_NEW_parser_nodes__AReturnExpr(var3
);
8257 var_pexprnode1
= var3
;
8258 var_node_list
= var_pexprnode1
;
8259 var5
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction602> */
8260 var6
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var5
) /* go_to on <var_p:Parser>*/;
8261 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var6
, var_node_list
) /* push on <var_p:Parser>*/;
8264 /* method parser#ReduceAction602#action for (self: Object, Parser) */
8265 void VIRTUAL_parser__ReduceAction602__action(val
* self
, val
* p0
) {
8266 parser__ReduceAction602__action(self
, p0
);
8269 /* method parser#ReduceAction603#action for (self: ReduceAction603, Parser) */
8270 void parser__ReduceAction603__action(val
* self
, val
* p0
) {
8271 val
* var_p
/* var p: Parser */;
8272 val
* var
/* : null */;
8273 val
* var_node_list
/* var node_list: nullable Object */;
8274 val
* var1
/* : nullable Object */;
8275 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8276 val
* var2
/* : nullable Object */;
8277 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8278 val
* var_tkwreturnnode2
/* var tkwreturnnode2: nullable Object */;
8279 short int var3
/* : Bool */;
8282 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8283 short int var4
/* : Bool */;
8286 val
* var7
/* : AReturnExpr */;
8287 val
* var_pexprnode1
/* var pexprnode1: nullable AReturnExpr */;
8288 long var8
/* : Int */;
8289 long var9
/* : Int */;
8292 var_node_list
= var
;
8293 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8294 var_nodearraylist2
= var1
;
8295 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8296 var_nodearraylist1
= var2
;
8297 var_tkwreturnnode2
= var_nodearraylist1
;
8298 /* <var_tkwreturnnode2:nullable Object> isa nullable TKwreturn */
8299 cltype
= type_nullable_parser_nodes__TKwreturn
.color
;
8300 idtype
= type_nullable_parser_nodes__TKwreturn
.id
;
8301 if(var_tkwreturnnode2
== NULL
) {
8304 if(cltype
>= var_tkwreturnnode2
->type
->table_size
) {
8307 var3
= var_tkwreturnnode2
->type
->type_table
[cltype
] == idtype
;
8311 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8312 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24103);
8315 var_pexprnode3
= var_nodearraylist2
;
8316 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8317 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
8318 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
8319 if(var_pexprnode3
== NULL
) {
8322 if(cltype5
>= var_pexprnode3
->type
->table_size
) {
8325 var4
= var_pexprnode3
->type
->type_table
[cltype5
] == idtype6
;
8329 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8330 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24105);
8333 var7
= NEW_parser_nodes__AReturnExpr(&type_parser_nodes__AReturnExpr
);
8334 ((void (*)(val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AReturnExpr__init_areturnexpr
]))(var7
, var_tkwreturnnode2
, var_pexprnode3
) /* init_areturnexpr on <var7:AReturnExpr>*/;
8335 CHECK_NEW_parser_nodes__AReturnExpr(var7
);
8336 var_pexprnode1
= var7
;
8337 var_node_list
= var_pexprnode1
;
8338 var8
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction603> */
8339 var9
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var8
) /* go_to on <var_p:Parser>*/;
8340 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var9
, var_node_list
) /* push on <var_p:Parser>*/;
8343 /* method parser#ReduceAction603#action for (self: Object, Parser) */
8344 void VIRTUAL_parser__ReduceAction603__action(val
* self
, val
* p0
) {
8345 parser__ReduceAction603__action(self
, p0
);
8348 /* method parser#ReduceAction604#action for (self: ReduceAction604, Parser) */
8349 void parser__ReduceAction604__action(val
* self
, val
* p0
) {
8350 val
* var_p
/* var p: Parser */;
8351 val
* var
/* : null */;
8352 val
* var_node_list
/* var node_list: nullable Object */;
8353 val
* var1
/* : nullable Object */;
8354 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8355 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
8356 short int var2
/* : Bool */;
8359 val
* var3
/* : ABreakExpr */;
8360 val
* var4
/* : null */;
8361 val
* var5
/* : null */;
8362 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
8363 long var6
/* : Int */;
8364 long var7
/* : Int */;
8367 var_node_list
= var
;
8368 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8369 var_nodearraylist1
= var1
;
8370 var_tkwbreaknode2
= var_nodearraylist1
;
8371 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
8372 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
8373 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
8374 if(var_tkwbreaknode2
== NULL
) {
8377 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
8380 var2
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
8384 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8385 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24121);
8388 var3
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
8391 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var3
, var_tkwbreaknode2
, var4
, var5
) /* init_abreakexpr on <var3:ABreakExpr>*/;
8392 CHECK_NEW_parser_nodes__ABreakExpr(var3
);
8393 var_pexprnode1
= var3
;
8394 var_node_list
= var_pexprnode1
;
8395 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction604> */
8396 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
8397 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
8400 /* method parser#ReduceAction604#action for (self: Object, Parser) */
8401 void VIRTUAL_parser__ReduceAction604__action(val
* self
, val
* p0
) {
8402 parser__ReduceAction604__action(self
, p0
);
8405 /* method parser#ReduceAction605#action for (self: ReduceAction605, Parser) */
8406 void parser__ReduceAction605__action(val
* self
, val
* p0
) {
8407 val
* var_p
/* var p: Parser */;
8408 val
* var
/* : null */;
8409 val
* var_node_list
/* var node_list: nullable Object */;
8410 val
* var1
/* : nullable Object */;
8411 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8412 val
* var2
/* : nullable Object */;
8413 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8414 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
8415 short int var3
/* : Bool */;
8418 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
8419 short int var4
/* : Bool */;
8422 val
* var7
/* : ABreakExpr */;
8423 val
* var8
/* : null */;
8424 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
8425 long var9
/* : Int */;
8426 long var10
/* : Int */;
8429 var_node_list
= var
;
8430 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8431 var_nodearraylist2
= var1
;
8432 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8433 var_nodearraylist1
= var2
;
8434 var_tkwbreaknode2
= var_nodearraylist1
;
8435 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
8436 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
8437 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
8438 if(var_tkwbreaknode2
== NULL
) {
8441 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
8444 var3
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
8448 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8449 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24139);
8452 var_plabelnode3
= var_nodearraylist2
;
8453 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
8454 cltype5
= type_nullable_parser_nodes__ALabel
.color
;
8455 idtype6
= type_nullable_parser_nodes__ALabel
.id
;
8456 if(var_plabelnode3
== NULL
) {
8459 if(cltype5
>= var_plabelnode3
->type
->table_size
) {
8462 var4
= var_plabelnode3
->type
->type_table
[cltype5
] == idtype6
;
8466 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8467 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24141);
8470 var7
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
8472 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var7
, var_tkwbreaknode2
, var_plabelnode3
, var8
) /* init_abreakexpr on <var7:ABreakExpr>*/;
8473 CHECK_NEW_parser_nodes__ABreakExpr(var7
);
8474 var_pexprnode1
= var7
;
8475 var_node_list
= var_pexprnode1
;
8476 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction605> */
8477 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8478 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8481 /* method parser#ReduceAction605#action for (self: Object, Parser) */
8482 void VIRTUAL_parser__ReduceAction605__action(val
* self
, val
* p0
) {
8483 parser__ReduceAction605__action(self
, p0
);
8486 /* method parser#ReduceAction606#action for (self: ReduceAction606, Parser) */
8487 void parser__ReduceAction606__action(val
* self
, val
* p0
) {
8488 val
* var_p
/* var p: Parser */;
8489 val
* var
/* : null */;
8490 val
* var_node_list
/* var node_list: nullable Object */;
8491 val
* var1
/* : nullable Object */;
8492 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8493 val
* var2
/* : nullable Object */;
8494 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8495 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
8496 short int var3
/* : Bool */;
8499 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8500 short int var4
/* : Bool */;
8503 val
* var7
/* : ABreakExpr */;
8504 val
* var8
/* : null */;
8505 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
8506 long var9
/* : Int */;
8507 long var10
/* : Int */;
8510 var_node_list
= var
;
8511 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8512 var_nodearraylist2
= var1
;
8513 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8514 var_nodearraylist1
= var2
;
8515 var_tkwbreaknode2
= var_nodearraylist1
;
8516 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
8517 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
8518 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
8519 if(var_tkwbreaknode2
== NULL
) {
8522 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
8525 var3
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
8529 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8530 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24159);
8533 var_pexprnode4
= var_nodearraylist2
;
8534 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8535 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
8536 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
8537 if(var_pexprnode4
== NULL
) {
8540 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
8543 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
8547 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8548 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24161);
8551 var7
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
8553 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var7
, var_tkwbreaknode2
, var8
, var_pexprnode4
) /* init_abreakexpr on <var7:ABreakExpr>*/;
8554 CHECK_NEW_parser_nodes__ABreakExpr(var7
);
8555 var_pexprnode1
= var7
;
8556 var_node_list
= var_pexprnode1
;
8557 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction606> */
8558 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8559 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8562 /* method parser#ReduceAction606#action for (self: Object, Parser) */
8563 void VIRTUAL_parser__ReduceAction606__action(val
* self
, val
* p0
) {
8564 parser__ReduceAction606__action(self
, p0
);
8567 /* method parser#ReduceAction607#action for (self: ReduceAction607, Parser) */
8568 void parser__ReduceAction607__action(val
* self
, val
* p0
) {
8569 val
* var_p
/* var p: Parser */;
8570 val
* var
/* : null */;
8571 val
* var_node_list
/* var node_list: nullable Object */;
8572 val
* var1
/* : nullable Object */;
8573 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8574 val
* var2
/* : nullable Object */;
8575 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8576 val
* var3
/* : nullable Object */;
8577 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8578 val
* var_tkwbreaknode2
/* var tkwbreaknode2: nullable Object */;
8579 short int var4
/* : Bool */;
8582 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
8583 short int var5
/* : Bool */;
8586 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8587 short int var8
/* : Bool */;
8590 val
* var11
/* : ABreakExpr */;
8591 val
* var_pexprnode1
/* var pexprnode1: nullable ABreakExpr */;
8592 long var12
/* : Int */;
8593 long var13
/* : Int */;
8596 var_node_list
= var
;
8597 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8598 var_nodearraylist3
= var1
;
8599 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8600 var_nodearraylist2
= var2
;
8601 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8602 var_nodearraylist1
= var3
;
8603 var_tkwbreaknode2
= var_nodearraylist1
;
8604 /* <var_tkwbreaknode2:nullable Object> isa nullable TKwbreak */
8605 cltype
= type_nullable_parser_nodes__TKwbreak
.color
;
8606 idtype
= type_nullable_parser_nodes__TKwbreak
.id
;
8607 if(var_tkwbreaknode2
== NULL
) {
8610 if(cltype
>= var_tkwbreaknode2
->type
->table_size
) {
8613 var4
= var_tkwbreaknode2
->type
->type_table
[cltype
] == idtype
;
8617 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8618 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24180);
8621 var_plabelnode3
= var_nodearraylist2
;
8622 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
8623 cltype6
= type_nullable_parser_nodes__ALabel
.color
;
8624 idtype7
= type_nullable_parser_nodes__ALabel
.id
;
8625 if(var_plabelnode3
== NULL
) {
8628 if(cltype6
>= var_plabelnode3
->type
->table_size
) {
8631 var5
= var_plabelnode3
->type
->type_table
[cltype6
] == idtype7
;
8635 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8636 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24182);
8639 var_pexprnode4
= var_nodearraylist3
;
8640 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8641 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
8642 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
8643 if(var_pexprnode4
== NULL
) {
8646 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
8649 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
8653 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8654 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24184);
8657 var11
= NEW_parser_nodes__ABreakExpr(&type_parser_nodes__ABreakExpr
);
8658 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__ABreakExpr__init_abreakexpr
]))(var11
, var_tkwbreaknode2
, var_plabelnode3
, var_pexprnode4
) /* init_abreakexpr on <var11:ABreakExpr>*/;
8659 CHECK_NEW_parser_nodes__ABreakExpr(var11
);
8660 var_pexprnode1
= var11
;
8661 var_node_list
= var_pexprnode1
;
8662 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction607> */
8663 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
8664 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
8667 /* method parser#ReduceAction607#action for (self: Object, Parser) */
8668 void VIRTUAL_parser__ReduceAction607__action(val
* self
, val
* p0
) {
8669 parser__ReduceAction607__action(self
, p0
);
8672 /* method parser#ReduceAction608#action for (self: ReduceAction608, Parser) */
8673 void parser__ReduceAction608__action(val
* self
, val
* p0
) {
8674 val
* var_p
/* var p: Parser */;
8675 val
* var
/* : null */;
8676 val
* var_node_list
/* var node_list: nullable Object */;
8677 val
* var1
/* : nullable Object */;
8678 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8679 val
* var_tkwabortnode2
/* var tkwabortnode2: nullable Object */;
8680 short int var2
/* : Bool */;
8683 val
* var3
/* : AAbortExpr */;
8684 val
* var_pexprnode1
/* var pexprnode1: nullable AAbortExpr */;
8685 long var4
/* : Int */;
8686 long var5
/* : Int */;
8689 var_node_list
= var
;
8690 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8691 var_nodearraylist1
= var1
;
8692 var_tkwabortnode2
= var_nodearraylist1
;
8693 /* <var_tkwabortnode2:nullable Object> isa nullable TKwabort */
8694 cltype
= type_nullable_parser_nodes__TKwabort
.color
;
8695 idtype
= type_nullable_parser_nodes__TKwabort
.id
;
8696 if(var_tkwabortnode2
== NULL
) {
8699 if(cltype
>= var_tkwabortnode2
->type
->table_size
) {
8702 var2
= var_tkwabortnode2
->type
->type_table
[cltype
] == idtype
;
8706 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8707 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24201);
8710 var3
= NEW_parser_nodes__AAbortExpr(&type_parser_nodes__AAbortExpr
);
8711 ((void (*)(val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AAbortExpr__init_aabortexpr
]))(var3
, var_tkwabortnode2
) /* init_aabortexpr on <var3:AAbortExpr>*/;
8712 CHECK_NEW_parser_nodes__AAbortExpr(var3
);
8713 var_pexprnode1
= var3
;
8714 var_node_list
= var_pexprnode1
;
8715 var4
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction608> */
8716 var5
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var4
) /* go_to on <var_p:Parser>*/;
8717 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var5
, var_node_list
) /* push on <var_p:Parser>*/;
8720 /* method parser#ReduceAction608#action for (self: Object, Parser) */
8721 void VIRTUAL_parser__ReduceAction608__action(val
* self
, val
* p0
) {
8722 parser__ReduceAction608__action(self
, p0
);
8725 /* method parser#ReduceAction609#action for (self: ReduceAction609, Parser) */
8726 void parser__ReduceAction609__action(val
* self
, val
* p0
) {
8727 val
* var_p
/* var p: Parser */;
8728 val
* var
/* : null */;
8729 val
* var_node_list
/* var node_list: nullable Object */;
8730 val
* var1
/* : nullable Object */;
8731 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8732 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8733 short int var2
/* : Bool */;
8736 val
* var3
/* : AContinueExpr */;
8737 val
* var4
/* : null */;
8738 val
* var5
/* : null */;
8739 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8740 long var6
/* : Int */;
8741 long var7
/* : Int */;
8744 var_node_list
= var
;
8745 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8746 var_nodearraylist1
= var1
;
8747 var_tkwcontinuenode2
= var_nodearraylist1
;
8748 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8749 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8750 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8751 if(var_tkwcontinuenode2
== NULL
) {
8754 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8757 var2
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8761 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8762 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24216);
8765 var3
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
8768 ((void (*)(val
*, val
*, val
*, val
*))(var3
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var3
, var_tkwcontinuenode2
, var4
, var5
) /* init_acontinueexpr on <var3:AContinueExpr>*/;
8769 CHECK_NEW_parser_nodes__AContinueExpr(var3
);
8770 var_pexprnode1
= var3
;
8771 var_node_list
= var_pexprnode1
;
8772 var6
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction609> */
8773 var7
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var6
) /* go_to on <var_p:Parser>*/;
8774 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var7
, var_node_list
) /* push on <var_p:Parser>*/;
8777 /* method parser#ReduceAction609#action for (self: Object, Parser) */
8778 void VIRTUAL_parser__ReduceAction609__action(val
* self
, val
* p0
) {
8779 parser__ReduceAction609__action(self
, p0
);
8782 /* method parser#ReduceAction610#action for (self: ReduceAction610, Parser) */
8783 void parser__ReduceAction610__action(val
* self
, val
* p0
) {
8784 val
* var_p
/* var p: Parser */;
8785 val
* var
/* : null */;
8786 val
* var_node_list
/* var node_list: nullable Object */;
8787 val
* var1
/* : nullable Object */;
8788 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8789 val
* var2
/* : nullable Object */;
8790 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8791 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8792 short int var3
/* : Bool */;
8795 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
8796 short int var4
/* : Bool */;
8799 val
* var7
/* : AContinueExpr */;
8800 val
* var8
/* : null */;
8801 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8802 long var9
/* : Int */;
8803 long var10
/* : Int */;
8806 var_node_list
= var
;
8807 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8808 var_nodearraylist2
= var1
;
8809 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8810 var_nodearraylist1
= var2
;
8811 var_tkwcontinuenode2
= var_nodearraylist1
;
8812 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8813 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8814 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8815 if(var_tkwcontinuenode2
== NULL
) {
8818 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8821 var3
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8825 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8826 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24234);
8829 var_plabelnode3
= var_nodearraylist2
;
8830 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
8831 cltype5
= type_nullable_parser_nodes__ALabel
.color
;
8832 idtype6
= type_nullable_parser_nodes__ALabel
.id
;
8833 if(var_plabelnode3
== NULL
) {
8836 if(cltype5
>= var_plabelnode3
->type
->table_size
) {
8839 var4
= var_plabelnode3
->type
->type_table
[cltype5
] == idtype6
;
8843 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8844 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24236);
8847 var7
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
8849 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var7
, var_tkwcontinuenode2
, var_plabelnode3
, var8
) /* init_acontinueexpr on <var7:AContinueExpr>*/;
8850 CHECK_NEW_parser_nodes__AContinueExpr(var7
);
8851 var_pexprnode1
= var7
;
8852 var_node_list
= var_pexprnode1
;
8853 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction610> */
8854 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8855 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8858 /* method parser#ReduceAction610#action for (self: Object, Parser) */
8859 void VIRTUAL_parser__ReduceAction610__action(val
* self
, val
* p0
) {
8860 parser__ReduceAction610__action(self
, p0
);
8863 /* method parser#ReduceAction611#action for (self: ReduceAction611, Parser) */
8864 void parser__ReduceAction611__action(val
* self
, val
* p0
) {
8865 val
* var_p
/* var p: Parser */;
8866 val
* var
/* : null */;
8867 val
* var_node_list
/* var node_list: nullable Object */;
8868 val
* var1
/* : nullable Object */;
8869 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8870 val
* var2
/* : nullable Object */;
8871 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8872 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8873 short int var3
/* : Bool */;
8876 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8877 short int var4
/* : Bool */;
8880 val
* var7
/* : AContinueExpr */;
8881 val
* var8
/* : null */;
8882 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8883 long var9
/* : Int */;
8884 long var10
/* : Int */;
8887 var_node_list
= var
;
8888 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8889 var_nodearraylist2
= var1
;
8890 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8891 var_nodearraylist1
= var2
;
8892 var_tkwcontinuenode2
= var_nodearraylist1
;
8893 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8894 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8895 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8896 if(var_tkwcontinuenode2
== NULL
) {
8899 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8902 var3
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8906 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8907 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24254);
8910 var_pexprnode4
= var_nodearraylist2
;
8911 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8912 cltype5
= type_nullable_parser_nodes__AExpr
.color
;
8913 idtype6
= type_nullable_parser_nodes__AExpr
.id
;
8914 if(var_pexprnode4
== NULL
) {
8917 if(cltype5
>= var_pexprnode4
->type
->table_size
) {
8920 var4
= var_pexprnode4
->type
->type_table
[cltype5
] == idtype6
;
8924 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8925 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24256);
8928 var7
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
8930 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var7
, var_tkwcontinuenode2
, var8
, var_pexprnode4
) /* init_acontinueexpr on <var7:AContinueExpr>*/;
8931 CHECK_NEW_parser_nodes__AContinueExpr(var7
);
8932 var_pexprnode1
= var7
;
8933 var_node_list
= var_pexprnode1
;
8934 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction611> */
8935 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
8936 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
8939 /* method parser#ReduceAction611#action for (self: Object, Parser) */
8940 void VIRTUAL_parser__ReduceAction611__action(val
* self
, val
* p0
) {
8941 parser__ReduceAction611__action(self
, p0
);
8944 /* method parser#ReduceAction612#action for (self: ReduceAction612, Parser) */
8945 void parser__ReduceAction612__action(val
* self
, val
* p0
) {
8946 val
* var_p
/* var p: Parser */;
8947 val
* var
/* : null */;
8948 val
* var_node_list
/* var node_list: nullable Object */;
8949 val
* var1
/* : nullable Object */;
8950 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8951 val
* var2
/* : nullable Object */;
8952 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8953 val
* var3
/* : nullable Object */;
8954 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8955 val
* var_tkwcontinuenode2
/* var tkwcontinuenode2: nullable Object */;
8956 short int var4
/* : Bool */;
8959 val
* var_plabelnode3
/* var plabelnode3: nullable Object */;
8960 short int var5
/* : Bool */;
8963 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8964 short int var8
/* : Bool */;
8967 val
* var11
/* : AContinueExpr */;
8968 val
* var_pexprnode1
/* var pexprnode1: nullable AContinueExpr */;
8969 long var12
/* : Int */;
8970 long var13
/* : Int */;
8973 var_node_list
= var
;
8974 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8975 var_nodearraylist3
= var1
;
8976 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8977 var_nodearraylist2
= var2
;
8978 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
8979 var_nodearraylist1
= var3
;
8980 var_tkwcontinuenode2
= var_nodearraylist1
;
8981 /* <var_tkwcontinuenode2:nullable Object> isa nullable TKwcontinue */
8982 cltype
= type_nullable_parser_nodes__TKwcontinue
.color
;
8983 idtype
= type_nullable_parser_nodes__TKwcontinue
.id
;
8984 if(var_tkwcontinuenode2
== NULL
) {
8987 if(cltype
>= var_tkwcontinuenode2
->type
->table_size
) {
8990 var4
= var_tkwcontinuenode2
->type
->type_table
[cltype
] == idtype
;
8994 fprintf(stderr
, "Runtime error: %s", "Assert failed");
8995 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24275);
8998 var_plabelnode3
= var_nodearraylist2
;
8999 /* <var_plabelnode3:nullable Object> isa nullable ALabel */
9000 cltype6
= type_nullable_parser_nodes__ALabel
.color
;
9001 idtype7
= type_nullable_parser_nodes__ALabel
.id
;
9002 if(var_plabelnode3
== NULL
) {
9005 if(cltype6
>= var_plabelnode3
->type
->table_size
) {
9008 var5
= var_plabelnode3
->type
->type_table
[cltype6
] == idtype7
;
9012 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9013 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24277);
9016 var_pexprnode4
= var_nodearraylist3
;
9017 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9018 cltype9
= type_nullable_parser_nodes__AExpr
.color
;
9019 idtype10
= type_nullable_parser_nodes__AExpr
.id
;
9020 if(var_pexprnode4
== NULL
) {
9023 if(cltype9
>= var_pexprnode4
->type
->table_size
) {
9026 var8
= var_pexprnode4
->type
->type_table
[cltype9
] == idtype10
;
9030 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9031 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24279);
9034 var11
= NEW_parser_nodes__AContinueExpr(&type_parser_nodes__AContinueExpr
);
9035 ((void (*)(val
*, val
*, val
*, val
*))(var11
->class->vft
[COLOR_parser_prod__AContinueExpr__init_acontinueexpr
]))(var11
, var_tkwcontinuenode2
, var_plabelnode3
, var_pexprnode4
) /* init_acontinueexpr on <var11:AContinueExpr>*/;
9036 CHECK_NEW_parser_nodes__AContinueExpr(var11
);
9037 var_pexprnode1
= var11
;
9038 var_node_list
= var_pexprnode1
;
9039 var12
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction612> */
9040 var13
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var12
) /* go_to on <var_p:Parser>*/;
9041 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var13
, var_node_list
) /* push on <var_p:Parser>*/;
9044 /* method parser#ReduceAction612#action for (self: Object, Parser) */
9045 void VIRTUAL_parser__ReduceAction612__action(val
* self
, val
* p0
) {
9046 parser__ReduceAction612__action(self
, p0
);
9049 /* method parser#ReduceAction619#action for (self: ReduceAction619, Parser) */
9050 void parser__ReduceAction619__action(val
* self
, val
* p0
) {
9051 val
* var_p
/* var p: Parser */;
9052 val
* var
/* : null */;
9053 val
* var_node_list
/* var node_list: nullable Object */;
9054 val
* var1
/* : nullable Object */;
9055 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9056 val
* var2
/* : nullable Object */;
9057 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9058 val
* var3
/* : nullable Object */;
9059 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9060 val
* var4
/* : nullable Object */;
9061 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9062 val
* var5
/* : nullable Object */;
9063 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9064 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9065 short int var6
/* : Bool */;
9068 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9069 short int var7
/* : Bool */;
9072 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9073 short int var10
/* : Bool */;
9076 val
* var13
/* : ACallExpr */;
9077 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9078 long var14
/* : Int */;
9079 long var15
/* : Int */;
9082 var_node_list
= var
;
9083 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9084 var_nodearraylist5
= var1
;
9085 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9086 var_nodearraylist4
= var2
;
9087 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9088 var_nodearraylist3
= var3
;
9089 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9090 var_nodearraylist2
= var4
;
9091 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9092 var_nodearraylist1
= var5
;
9093 var_pexprnode2
= var_nodearraylist1
;
9094 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9095 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9096 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9097 if(var_pexprnode2
== NULL
) {
9100 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9103 var6
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9107 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9108 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24300);
9111 var_tidnode3
= var_nodearraylist4
;
9112 /* <var_tidnode3:nullable Object> isa nullable TId */
9113 cltype8
= type_nullable_parser_nodes__TId
.color
;
9114 idtype9
= type_nullable_parser_nodes__TId
.id
;
9115 if(var_tidnode3
== NULL
) {
9118 if(cltype8
>= var_tidnode3
->type
->table_size
) {
9121 var7
= var_tidnode3
->type
->type_table
[cltype8
] == idtype9
;
9125 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9126 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24302);
9129 var_pexprsnode4
= var_nodearraylist5
;
9130 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9131 cltype11
= type_nullable_parser_nodes__AExprs
.color
;
9132 idtype12
= type_nullable_parser_nodes__AExprs
.id
;
9133 if(var_pexprsnode4
== NULL
) {
9136 if(cltype11
>= var_pexprsnode4
->type
->table_size
) {
9139 var10
= var_pexprsnode4
->type
->type_table
[cltype11
] == idtype12
;
9143 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9144 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24304);
9147 var13
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9148 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var13
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var13:ACallExpr>*/;
9149 CHECK_NEW_parser_nodes__ACallExpr(var13
);
9150 var_pexprnode1
= var13
;
9151 var_node_list
= var_pexprnode1
;
9152 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction619> */
9153 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
9154 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
9157 /* method parser#ReduceAction619#action for (self: Object, Parser) */
9158 void VIRTUAL_parser__ReduceAction619__action(val
* self
, val
* p0
) {
9159 parser__ReduceAction619__action(self
, p0
);
9162 /* method parser#ReduceAction620#action for (self: ReduceAction620, Parser) */
9163 void parser__ReduceAction620__action(val
* self
, val
* p0
) {
9164 val
* var_p
/* var p: Parser */;
9165 val
* var
/* : null */;
9166 val
* var_node_list
/* var node_list: nullable Object */;
9167 val
* var1
/* : nullable Object */;
9168 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9169 val
* var2
/* : nullable Object */;
9170 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9171 val
* var3
/* : AImplicitSelfExpr */;
9172 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9173 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9174 short int var4
/* : Bool */;
9177 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9178 short int var5
/* : Bool */;
9181 val
* var8
/* : ACallExpr */;
9182 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9183 long var9
/* : Int */;
9184 long var10
/* : Int */;
9187 var_node_list
= var
;
9188 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9189 var_nodearraylist2
= var1
;
9190 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9191 var_nodearraylist1
= var2
;
9192 var3
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9193 ((void (*)(val
*))(var3
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var3
) /* init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/;
9194 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var3
);
9195 var_pexprnode2
= var3
;
9196 var_tidnode3
= var_nodearraylist1
;
9197 /* <var_tidnode3:nullable Object> isa nullable TId */
9198 cltype
= type_nullable_parser_nodes__TId
.color
;
9199 idtype
= type_nullable_parser_nodes__TId
.id
;
9200 if(var_tidnode3
== NULL
) {
9203 if(cltype
>= var_tidnode3
->type
->table_size
) {
9206 var4
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9210 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9211 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24323);
9214 var_pexprsnode4
= var_nodearraylist2
;
9215 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9216 cltype6
= type_nullable_parser_nodes__AExprs
.color
;
9217 idtype7
= type_nullable_parser_nodes__AExprs
.id
;
9218 if(var_pexprsnode4
== NULL
) {
9221 if(cltype6
>= var_pexprsnode4
->type
->table_size
) {
9224 var5
= var_pexprsnode4
->type
->type_table
[cltype6
] == idtype7
;
9228 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9229 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24325);
9232 var8
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9233 ((void (*)(val
*, val
*, val
*, val
*))(var8
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var8
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var8:ACallExpr>*/;
9234 CHECK_NEW_parser_nodes__ACallExpr(var8
);
9235 var_pexprnode1
= var8
;
9236 var_node_list
= var_pexprnode1
;
9237 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction620> */
9238 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
9239 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
9242 /* method parser#ReduceAction620#action for (self: Object, Parser) */
9243 void VIRTUAL_parser__ReduceAction620__action(val
* self
, val
* p0
) {
9244 parser__ReduceAction620__action(self
, p0
);
9247 /* method parser#ReduceAction621#action for (self: ReduceAction621, Parser) */
9248 void parser__ReduceAction621__action(val
* self
, val
* p0
) {
9249 val
* var_p
/* var p: Parser */;
9250 val
* var
/* : null */;
9251 val
* var_node_list
/* var node_list: nullable Object */;
9252 val
* var1
/* : nullable Object */;
9253 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9254 val
* var2
/* : nullable Object */;
9255 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9256 val
* var3
/* : nullable Object */;
9257 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9258 val
* var4
/* : nullable Object */;
9259 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9260 val
* var5
/* : nullable Object */;
9261 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9262 val
* var6
/* : nullable Object */;
9263 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9264 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9265 short int var7
/* : Bool */;
9268 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9269 short int var8
/* : Bool */;
9272 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9273 short int var11
/* : Bool */;
9276 val
* var14
/* : ACallExpr */;
9277 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9278 long var15
/* : Int */;
9279 long var16
/* : Int */;
9282 var_node_list
= var
;
9283 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9284 var_nodearraylist6
= var1
;
9285 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9286 var_nodearraylist5
= var2
;
9287 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9288 var_nodearraylist4
= var3
;
9289 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9290 var_nodearraylist3
= var4
;
9291 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9292 var_nodearraylist2
= var5
;
9293 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9294 var_nodearraylist1
= var6
;
9295 var_pexprnode2
= var_nodearraylist1
;
9296 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9297 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9298 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9299 if(var_pexprnode2
== NULL
) {
9302 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9305 var7
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9309 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9310 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24347);
9313 var_tidnode3
= var_nodearraylist5
;
9314 /* <var_tidnode3:nullable Object> isa nullable TId */
9315 cltype9
= type_nullable_parser_nodes__TId
.color
;
9316 idtype10
= type_nullable_parser_nodes__TId
.id
;
9317 if(var_tidnode3
== NULL
) {
9320 if(cltype9
>= var_tidnode3
->type
->table_size
) {
9323 var8
= var_tidnode3
->type
->type_table
[cltype9
] == idtype10
;
9327 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9328 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24349);
9331 var_pexprsnode4
= var_nodearraylist6
;
9332 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9333 cltype12
= type_nullable_parser_nodes__AExprs
.color
;
9334 idtype13
= type_nullable_parser_nodes__AExprs
.id
;
9335 if(var_pexprsnode4
== NULL
) {
9338 if(cltype12
>= var_pexprsnode4
->type
->table_size
) {
9341 var11
= var_pexprsnode4
->type
->type_table
[cltype12
] == idtype13
;
9345 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9346 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24351);
9349 var14
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9350 ((void (*)(val
*, val
*, val
*, val
*))(var14
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var14
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var14:ACallExpr>*/;
9351 CHECK_NEW_parser_nodes__ACallExpr(var14
);
9352 var_pexprnode1
= var14
;
9353 var_node_list
= var_pexprnode1
;
9354 var15
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction621> */
9355 var16
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var15
) /* go_to on <var_p:Parser>*/;
9356 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var16
, var_node_list
) /* push on <var_p:Parser>*/;
9359 /* method parser#ReduceAction621#action for (self: Object, Parser) */
9360 void VIRTUAL_parser__ReduceAction621__action(val
* self
, val
* p0
) {
9361 parser__ReduceAction621__action(self
, p0
);
9364 /* method parser#ReduceAction622#action for (self: ReduceAction622, Parser) */
9365 void parser__ReduceAction622__action(val
* self
, val
* p0
) {
9366 val
* var_p
/* var p: Parser */;
9367 val
* var
/* : null */;
9368 val
* var_node_list
/* var node_list: nullable Object */;
9369 val
* var1
/* : nullable Object */;
9370 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
9371 val
* var2
/* : nullable Object */;
9372 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
9373 val
* var3
/* : nullable Object */;
9374 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
9375 val
* var4
/* : nullable Object */;
9376 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9377 val
* var5
/* : nullable Object */;
9378 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9379 val
* var6
/* : nullable Object */;
9380 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9381 val
* var7
/* : nullable Object */;
9382 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9383 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9384 short int var8
/* : Bool */;
9387 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9388 short int var9
/* : Bool */;
9391 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9392 short int var12
/* : Bool */;
9395 val
* var15
/* : ACallExpr */;
9396 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9397 long var16
/* : Int */;
9398 long var17
/* : Int */;
9401 var_node_list
= var
;
9402 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9403 var_nodearraylist7
= var1
;
9404 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9405 var_nodearraylist6
= var2
;
9406 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9407 var_nodearraylist5
= var3
;
9408 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9409 var_nodearraylist4
= var4
;
9410 var5
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9411 var_nodearraylist3
= var5
;
9412 var6
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9413 var_nodearraylist2
= var6
;
9414 var7
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9415 var_nodearraylist1
= var7
;
9416 var_pexprnode2
= var_nodearraylist1
;
9417 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9418 cltype
= type_nullable_parser_nodes__AExpr
.color
;
9419 idtype
= type_nullable_parser_nodes__AExpr
.id
;
9420 if(var_pexprnode2
== NULL
) {
9423 if(cltype
>= var_pexprnode2
->type
->table_size
) {
9426 var8
= var_pexprnode2
->type
->type_table
[cltype
] == idtype
;
9430 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9431 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24374);
9434 var_tidnode3
= var_nodearraylist6
;
9435 /* <var_tidnode3:nullable Object> isa nullable TId */
9436 cltype10
= type_nullable_parser_nodes__TId
.color
;
9437 idtype11
= type_nullable_parser_nodes__TId
.id
;
9438 if(var_tidnode3
== NULL
) {
9441 if(cltype10
>= var_tidnode3
->type
->table_size
) {
9444 var9
= var_tidnode3
->type
->type_table
[cltype10
] == idtype11
;
9448 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9449 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24376);
9452 var_pexprsnode4
= var_nodearraylist7
;
9453 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9454 cltype13
= type_nullable_parser_nodes__AExprs
.color
;
9455 idtype14
= type_nullable_parser_nodes__AExprs
.id
;
9456 if(var_pexprsnode4
== NULL
) {
9459 if(cltype13
>= var_pexprsnode4
->type
->table_size
) {
9462 var12
= var_pexprsnode4
->type
->type_table
[cltype13
] == idtype14
;
9466 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9467 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24378);
9470 var15
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9471 ((void (*)(val
*, val
*, val
*, val
*))(var15
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var15
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var15:ACallExpr>*/;
9472 CHECK_NEW_parser_nodes__ACallExpr(var15
);
9473 var_pexprnode1
= var15
;
9474 var_node_list
= var_pexprnode1
;
9475 var16
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction622> */
9476 var17
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var16
) /* go_to on <var_p:Parser>*/;
9477 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var17
, var_node_list
) /* push on <var_p:Parser>*/;
9480 /* method parser#ReduceAction622#action for (self: Object, Parser) */
9481 void VIRTUAL_parser__ReduceAction622__action(val
* self
, val
* p0
) {
9482 parser__ReduceAction622__action(self
, p0
);
9485 /* method parser#ReduceAction624#action for (self: ReduceAction624, Parser) */
9486 void parser__ReduceAction624__action(val
* self
, val
* p0
) {
9487 val
* var_p
/* var p: Parser */;
9488 val
* var
/* : null */;
9489 val
* var_node_list
/* var node_list: nullable Object */;
9490 val
* var1
/* : nullable Object */;
9491 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9492 val
* var2
/* : nullable Object */;
9493 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9494 val
* var3
/* : nullable Object */;
9495 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9496 val
* var4
/* : AImplicitSelfExpr */;
9497 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9498 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9499 short int var5
/* : Bool */;
9502 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9503 short int var6
/* : Bool */;
9506 val
* var9
/* : ACallExpr */;
9507 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9508 long var10
/* : Int */;
9509 long var11
/* : Int */;
9512 var_node_list
= var
;
9513 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9514 var_nodearraylist3
= var1
;
9515 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9516 var_nodearraylist2
= var2
;
9517 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9518 var_nodearraylist1
= var3
;
9519 var4
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9520 ((void (*)(val
*))(var4
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var4
) /* init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/;
9521 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var4
);
9522 var_pexprnode2
= var4
;
9523 var_tidnode3
= var_nodearraylist2
;
9524 /* <var_tidnode3:nullable Object> isa nullable TId */
9525 cltype
= type_nullable_parser_nodes__TId
.color
;
9526 idtype
= type_nullable_parser_nodes__TId
.id
;
9527 if(var_tidnode3
== NULL
) {
9530 if(cltype
>= var_tidnode3
->type
->table_size
) {
9533 var5
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9537 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9538 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24398);
9541 var_pexprsnode4
= var_nodearraylist3
;
9542 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9543 cltype7
= type_nullable_parser_nodes__AExprs
.color
;
9544 idtype8
= type_nullable_parser_nodes__AExprs
.id
;
9545 if(var_pexprsnode4
== NULL
) {
9548 if(cltype7
>= var_pexprsnode4
->type
->table_size
) {
9551 var6
= var_pexprsnode4
->type
->type_table
[cltype7
] == idtype8
;
9555 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9556 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24400);
9559 var9
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9560 ((void (*)(val
*, val
*, val
*, val
*))(var9
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var9
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var9:ACallExpr>*/;
9561 CHECK_NEW_parser_nodes__ACallExpr(var9
);
9562 var_pexprnode1
= var9
;
9563 var_node_list
= var_pexprnode1
;
9564 var10
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction624> */
9565 var11
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var10
) /* go_to on <var_p:Parser>*/;
9566 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var11
, var_node_list
) /* push on <var_p:Parser>*/;
9569 /* method parser#ReduceAction624#action for (self: Object, Parser) */
9570 void VIRTUAL_parser__ReduceAction624__action(val
* self
, val
* p0
) {
9571 parser__ReduceAction624__action(self
, p0
);
9574 /* method parser#ReduceAction625#action for (self: ReduceAction625, Parser) */
9575 void parser__ReduceAction625__action(val
* self
, val
* p0
) {
9576 val
* var_p
/* var p: Parser */;
9577 val
* var
/* : null */;
9578 val
* var_node_list
/* var node_list: nullable Object */;
9579 val
* var1
/* : nullable Object */;
9580 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9581 val
* var2
/* : nullable Object */;
9582 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9583 val
* var3
/* : nullable Object */;
9584 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9585 val
* var4
/* : nullable Object */;
9586 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9587 val
* var5
/* : AImplicitSelfExpr */;
9588 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
9589 val
* var_tidnode3
/* var tidnode3: nullable Object */;
9590 short int var6
/* : Bool */;
9593 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9594 short int var7
/* : Bool */;
9597 val
* var10
/* : ACallExpr */;
9598 val
* var_pexprnode1
/* var pexprnode1: nullable ACallExpr */;
9599 long var11
/* : Int */;
9600 long var12
/* : Int */;
9603 var_node_list
= var
;
9604 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9605 var_nodearraylist4
= var1
;
9606 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9607 var_nodearraylist3
= var2
;
9608 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9609 var_nodearraylist2
= var3
;
9610 var4
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9611 var_nodearraylist1
= var4
;
9612 var5
= NEW_parser_nodes__AImplicitSelfExpr(&type_parser_nodes__AImplicitSelfExpr
);
9613 ((void (*)(val
*))(var5
->class->vft
[COLOR_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr
]))(var5
) /* init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/;
9614 CHECK_NEW_parser_nodes__AImplicitSelfExpr(var5
);
9615 var_pexprnode2
= var5
;
9616 var_tidnode3
= var_nodearraylist3
;
9617 /* <var_tidnode3:nullable Object> isa nullable TId */
9618 cltype
= type_nullable_parser_nodes__TId
.color
;
9619 idtype
= type_nullable_parser_nodes__TId
.id
;
9620 if(var_tidnode3
== NULL
) {
9623 if(cltype
>= var_tidnode3
->type
->table_size
) {
9626 var6
= var_tidnode3
->type
->type_table
[cltype
] == idtype
;
9630 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9631 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24421);
9634 var_pexprsnode4
= var_nodearraylist4
;
9635 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9636 cltype8
= type_nullable_parser_nodes__AExprs
.color
;
9637 idtype9
= type_nullable_parser_nodes__AExprs
.id
;
9638 if(var_pexprsnode4
== NULL
) {
9641 if(cltype8
>= var_pexprsnode4
->type
->table_size
) {
9644 var7
= var_pexprsnode4
->type
->type_table
[cltype8
] == idtype9
;
9648 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9649 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24423);
9652 var10
= NEW_parser_nodes__ACallExpr(&type_parser_nodes__ACallExpr
);
9653 ((void (*)(val
*, val
*, val
*, val
*))(var10
->class->vft
[COLOR_parser_prod__ACallExpr__init_acallexpr
]))(var10
, var_pexprnode2
, var_tidnode3
, var_pexprsnode4
) /* init_acallexpr on <var10:ACallExpr>*/;
9654 CHECK_NEW_parser_nodes__ACallExpr(var10
);
9655 var_pexprnode1
= var10
;
9656 var_node_list
= var_pexprnode1
;
9657 var11
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction625> */
9658 var12
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var11
) /* go_to on <var_p:Parser>*/;
9659 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var12
, var_node_list
) /* push on <var_p:Parser>*/;
9662 /* method parser#ReduceAction625#action for (self: Object, Parser) */
9663 void VIRTUAL_parser__ReduceAction625__action(val
* self
, val
* p0
) {
9664 parser__ReduceAction625__action(self
, p0
);
9667 /* method parser#ReduceAction627#action for (self: ReduceAction627, Parser) */
9668 void parser__ReduceAction627__action(val
* self
, val
* p0
) {
9669 val
* var_p
/* var p: Parser */;
9670 val
* var
/* : null */;
9671 val
* var_node_list
/* var node_list: nullable Object */;
9672 val
* var1
/* : nullable Object */;
9673 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9674 val
* var2
/* : nullable Object */;
9675 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9676 val
* var_tkwsupernode3
/* var tkwsupernode3: nullable Object */;
9677 short int var3
/* : Bool */;
9680 val
* var_pexprsnode4
/* var pexprsnode4: nullable Object */;
9681 short int var4
/* : Bool */;
9684 val
* var7
/* : ASuperExpr */;
9685 val
* var8
/* : null */;
9686 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
9687 long var9
/* : Int */;
9688 long var10
/* : Int */;
9691 var_node_list
= var
;
9692 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9693 var_nodearraylist2
= var1
;
9694 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9695 var_nodearraylist1
= var2
;
9696 var_tkwsupernode3
= var_nodearraylist1
;
9697 /* <var_tkwsupernode3:nullable Object> isa nullable TKwsuper */
9698 cltype
= type_nullable_parser_nodes__TKwsuper
.color
;
9699 idtype
= type_nullable_parser_nodes__TKwsuper
.id
;
9700 if(var_tkwsupernode3
== NULL
) {
9703 if(cltype
>= var_tkwsupernode3
->type
->table_size
) {
9706 var3
= var_tkwsupernode3
->type
->type_table
[cltype
] == idtype
;
9710 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9711 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24441);
9714 var_pexprsnode4
= var_nodearraylist2
;
9715 /* <var_pexprsnode4:nullable Object> isa nullable AExprs */
9716 cltype5
= type_nullable_parser_nodes__AExprs
.color
;
9717 idtype6
= type_nullable_parser_nodes__AExprs
.id
;
9718 if(var_pexprsnode4
== NULL
) {
9721 if(cltype5
>= var_pexprsnode4
->type
->table_size
) {
9724 var4
= var_pexprsnode4
->type
->type_table
[cltype5
] == idtype6
;
9728 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9729 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24443);
9732 var7
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
9734 ((void (*)(val
*, val
*, val
*, val
*))(var7
->class->vft
[COLOR_parser_prod__ASuperExpr__init_asuperexpr
]))(var7
, var8
, var_tkwsupernode3
, var_pexprsnode4
) /* init_asuperexpr on <var7:ASuperExpr>*/;
9735 CHECK_NEW_parser_nodes__ASuperExpr(var7
);
9736 var_pexprnode1
= var7
;
9737 var_node_list
= var_pexprnode1
;
9738 var9
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction627> */
9739 var10
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var9
) /* go_to on <var_p:Parser>*/;
9740 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var10
, var_node_list
) /* push on <var_p:Parser>*/;
9743 /* method parser#ReduceAction627#action for (self: Object, Parser) */
9744 void VIRTUAL_parser__ReduceAction627__action(val
* self
, val
* p0
) {
9745 parser__ReduceAction627__action(self
, p0
);
9748 /* method parser#ReduceAction628#action for (self: ReduceAction628, Parser) */
9749 void parser__ReduceAction628__action(val
* self
, val
* p0
) {
9750 val
* var_p
/* var p: Parser */;
9751 val
* var
/* : null */;
9752 val
* var_node_list
/* var node_list: nullable Object */;
9753 val
* var1
/* : nullable Object */;
9754 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9755 val
* var2
/* : nullable Object */;
9756 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9757 val
* var3
/* : nullable Object */;
9758 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9759 val
* var4
/* : Array[Object] */;
9760 val
* var_listnode3
/* var listnode3: Array[Object] */;
9761 val
* var_tclassidnode4
/* var tclassidnode4: nullable Object */;
9762 short int var5
/* : Bool */;
9765 val
* var6
/* : AQualified */;
9766 val
* var_pqualifiednode2
/* var pqualifiednode2: nullable AQualified */;
9767 val
* var_tkwsupernode5
/* var tkwsupernode5: nullable Object */;
9768 short int var7
/* : Bool */;
9771 val
* var_pexprsnode6
/* var pexprsnode6: nullable Object */;
9772 short int var10
/* : Bool */;
9775 val
* var13
/* : ASuperExpr */;
9776 val
* var_pexprnode1
/* var pexprnode1: nullable ASuperExpr */;
9777 long var14
/* : Int */;
9778 long var15
/* : Int */;
9781 var_node_list
= var
;
9782 var1
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9783 var_nodearraylist3
= var1
;
9784 var2
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9785 var_nodearraylist2
= var2
;
9786 var3
= ((val
* (*)(val
*))(var_p
->class->vft
[COLOR_parser__Parser__pop
]))(var_p
) /* pop on <var_p:Parser>*/;
9787 var_nodearraylist1
= var3
;
9788 var4
= NEW_array__Array(&type_array__Arraykernel__Object
);
9789 ((void (*)(val
*))(var4
->class->vft
[COLOR_array__Array__init
]))(var4
) /* init on <var4:Array[Object]>*/;
9790 CHECK_NEW_array__Array(var4
);
9791 var_listnode3
= var4
;
9792 var_tclassidnode4
= var_nodearraylist1
;
9793 /* <var_tclassidnode4:nullable Object> isa nullable TClassid */
9794 cltype
= type_nullable_parser_nodes__TClassid
.color
;
9795 idtype
= type_nullable_parser_nodes__TClassid
.id
;
9796 if(var_tclassidnode4
== NULL
) {
9799 if(cltype
>= var_tclassidnode4
->type
->table_size
) {
9802 var5
= var_tclassidnode4
->type
->type_table
[cltype
] == idtype
;
9806 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9807 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24463);
9810 var6
= NEW_parser_nodes__AQualified(&type_parser_nodes__AQualified
);
9811 ((void (*)(val
*, val
*, val
*))(var6
->class->vft
[COLOR_parser_prod__AQualified__init_aqualified
]))(var6
, var_listnode3
, var_tclassidnode4
) /* init_aqualified on <var6:AQualified>*/;
9812 CHECK_NEW_parser_nodes__AQualified(var6
);
9813 var_pqualifiednode2
= var6
;
9814 var_tkwsupernode5
= var_nodearraylist2
;
9815 /* <var_tkwsupernode5:nullable Object> isa nullable TKwsuper */
9816 cltype8
= type_nullable_parser_nodes__TKwsuper
.color
;
9817 idtype9
= type_nullable_parser_nodes__TKwsuper
.id
;
9818 if(var_tkwsupernode5
== NULL
) {
9821 if(cltype8
>= var_tkwsupernode5
->type
->table_size
) {
9824 var7
= var_tkwsupernode5
->type
->type_table
[cltype8
] == idtype9
;
9828 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9829 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24469);
9832 var_pexprsnode6
= var_nodearraylist3
;
9833 /* <var_pexprsnode6:nullable Object> isa nullable AExprs */
9834 cltype11
= type_nullable_parser_nodes__AExprs
.color
;
9835 idtype12
= type_nullable_parser_nodes__AExprs
.id
;
9836 if(var_pexprsnode6
== NULL
) {
9839 if(cltype11
>= var_pexprsnode6
->type
->table_size
) {
9842 var10
= var_pexprsnode6
->type
->type_table
[cltype11
] == idtype12
;
9846 fprintf(stderr
, "Runtime error: %s", "Assert failed");
9847 fprintf(stderr
, " (%s:%d)\n", "src/parser/parser.nit", 24471);
9850 var13
= NEW_parser_nodes__ASuperExpr(&type_parser_nodes__ASuperExpr
);
9851 ((void (*)(val
*, val
*, val
*, val
*))(var13
->class->vft
[COLOR_parser_prod__ASuperExpr__init_asuperexpr
]))(var13
, var_pqualifiednode2
, var_tkwsupernode5
, var_pexprsnode6
) /* init_asuperexpr on <var13:ASuperExpr>*/;
9852 CHECK_NEW_parser_nodes__ASuperExpr(var13
);
9853 var_pexprnode1
= var13
;
9854 var_node_list
= var_pexprnode1
;
9855 var14
= self
->attrs
[COLOR_parser__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction628> */
9856 var15
= ((long (*)(val
*, long))(var_p
->class->vft
[COLOR_parser__Parser__go_to
]))(var_p
, var14
) /* go_to on <var_p:Parser>*/;
9857 ((void (*)(val
*, long, val
*))(var_p
->class->vft
[COLOR_parser__Parser__push
]))(var_p
, var15
, var_node_list
) /* push on <var_p:Parser>*/;
9860 /* method parser#ReduceAction628#action for (self: Object, Parser) */
9861 void VIRTUAL_parser__ReduceAction628__action(val
* self
, val
* p0
) {
9862 parser__ReduceAction628__action(self
, p0
);