1 #include "nitc__parser.sep.0.h"
2 /* method parser$ReduceAction234$action for (self: ReduceAction234, Parser) */
3 void nitc__parser___nitc__parser__ReduceAction234___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4 val
* var_p
/* var p: Parser */;
5 val
* var_node_list
/* var node_list: nullable Object */;
6 val
* var
/* : nullable Object */;
7 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
8 val
* var1
/* : nullable Object */;
9 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
10 val
* var2
/* : nullable Object */;
11 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
12 val
* var3
/* : nullable Object */;
13 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
14 val
* var4
/* : nullable Object */;
15 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
16 val
* var5
/* : nullable Object */;
17 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
18 val
* var6
/* : nullable Object */;
19 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
20 val
* var7
/* : nullable Object */;
21 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
22 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
23 short int var8
/* : Bool */;
26 val
* var9
/* : Array[Object] */;
27 val
* var_listnode6
/* var listnode6: Array[Object] */;
28 val
* var_listnode5
/* var listnode5: nullable Object */;
29 short int var10
/* : Bool */;
32 val
* var13
/* : Array[Object] */;
33 val
* var_tclassidnode7
/* var tclassidnode7: nullable Object */;
34 short int var14
/* : Bool */;
37 val
* var17
/* : AQualified */;
38 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
39 val
* var_tidnode8
/* var tidnode8: nullable Object */;
40 short int var18
/* : Bool */;
43 val
* var21
/* : AQid */;
44 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
45 val
* var22
/* : Array[Object] */;
46 val
* var_listnode10
/* var listnode10: Array[Object] */;
47 val
* var23
/* : AListExprs */;
48 val
* var_pexprsnode9
/* var pexprsnode9: nullable AListExprs */;
49 val
* var_passignopnode11
/* var passignopnode11: nullable Object */;
50 short int var24
/* : Bool */;
53 val
* var_pexprnode12
/* var pexprnode12: nullable Object */;
54 short int var27
/* : Bool */;
57 val
* var30
/* : ACallReassignExpr */;
58 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
59 long var31
/* : Int */;
60 long var32
/* : Int */;
62 var_node_list
= ((val
*)NULL
);
64 var
= nitc___nitc__Parser___pop(var_p
);
66 var_nodearraylist8
= var
;
68 var1
= nitc___nitc__Parser___pop(var_p
);
70 var_nodearraylist7
= var1
;
72 var2
= nitc___nitc__Parser___pop(var_p
);
74 var_nodearraylist6
= var2
;
76 var3
= nitc___nitc__Parser___pop(var_p
);
78 var_nodearraylist5
= var3
;
80 var4
= nitc___nitc__Parser___pop(var_p
);
82 var_nodearraylist4
= var4
;
84 var5
= nitc___nitc__Parser___pop(var_p
);
86 var_nodearraylist3
= var5
;
88 var6
= nitc___nitc__Parser___pop(var_p
);
90 var_nodearraylist2
= var6
;
92 var7
= nitc___nitc__Parser___pop(var_p
);
94 var_nodearraylist1
= var7
;
95 var_pexprnode2
= var_nodearraylist1
;
96 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
97 cltype
= type_nullable__nitc__AExpr
.color
;
98 idtype
= type_nullable__nitc__AExpr
.id
;
99 if(var_pexprnode2
== NULL
) {
102 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
105 var8
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
108 if (unlikely(!var8
)) {
109 if(catchStack
.cursor
>= 0){
110 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
112 PRINT_ERROR("Runtime error: %s", "Assert failed");
113 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 6987);
116 var9
= NEW_core__Array(&type_core__Array__core__Object
);
118 core___core__Array___core__kernel__Object__init(var9
); /* Direct call array$Array$init on <var9:Array[Object]>*/
120 var_listnode6
= var9
;
121 var_listnode5
= var_nodearraylist4
;
122 /* <var_listnode5:nullable Object> isa Array[Object] */
123 cltype11
= type_core__Array__core__Object
.color
;
124 idtype12
= type_core__Array__core__Object
.id
;
125 if(var_listnode5
== NULL
) {
128 if(cltype11
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
131 var10
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype11
] == idtype12
;
134 if (unlikely(!var10
)) {
135 if(catchStack
.cursor
>= 0){
136 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
138 PRINT_ERROR("Runtime error: %s", "Assert failed");
139 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 6990);
143 var13
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
145 var_listnode6
= var13
;
146 var_tclassidnode7
= var_nodearraylist5
;
147 /* <var_tclassidnode7:nullable Object> isa nullable TClassid */
148 cltype15
= type_nullable__nitc__TClassid
.color
;
149 idtype16
= type_nullable__nitc__TClassid
.id
;
150 if(var_tclassidnode7
== NULL
) {
153 if(cltype15
>= (((long)var_tclassidnode7
&3)?type_info
[((long)var_tclassidnode7
&3)]:var_tclassidnode7
->type
)->table_size
) {
156 var14
= (((long)var_tclassidnode7
&3)?type_info
[((long)var_tclassidnode7
&3)]:var_tclassidnode7
->type
)->type_table
[cltype15
] == idtype16
;
159 if (unlikely(!var14
)) {
160 if(catchStack
.cursor
>= 0){
161 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
163 PRINT_ERROR("Runtime error: %s", "Assert failed");
164 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 6993);
167 var17
= NEW_nitc__AQualified(&type_nitc__AQualified
);
169 nitc__parser_prod___AQualified___init_aqualified(var17
, var_listnode6
, var_tclassidnode7
); /* Direct call parser_prod$AQualified$init_aqualified on <var17:AQualified>*/
171 var_pqualifiednode4
= var17
;
172 var_tidnode8
= var_nodearraylist6
;
173 /* <var_tidnode8:nullable Object> isa nullable TId */
174 cltype19
= type_nullable__nitc__TId
.color
;
175 idtype20
= type_nullable__nitc__TId
.id
;
176 if(var_tidnode8
== NULL
) {
179 if(cltype19
>= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->table_size
) {
182 var18
= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->type_table
[cltype19
] == idtype20
;
185 if (unlikely(!var18
)) {
186 if(catchStack
.cursor
>= 0){
187 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
189 PRINT_ERROR("Runtime error: %s", "Assert failed");
190 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 6999);
193 var21
= NEW_nitc__AQid(&type_nitc__AQid
);
195 nitc__parser_prod___AQid___init_aqid(var21
, var_pqualifiednode4
, var_tidnode8
); /* Direct call parser_prod$AQid$init_aqid on <var21:AQid>*/
197 var_pqidnode3
= var21
;
198 var22
= NEW_core__Array(&type_core__Array__core__Object
);
200 core___core__Array___core__kernel__Object__init(var22
); /* Direct call array$Array$init on <var22:Array[Object]>*/
202 var_listnode10
= var22
;
203 var23
= NEW_nitc__AListExprs(&type_nitc__AListExprs
);
205 nitc__parser_prod___AListExprs___init_alistexprs(var23
, var_listnode10
); /* Direct call parser_prod$AListExprs$init_alistexprs on <var23:AListExprs>*/
207 var_pexprsnode9
= var23
;
208 var_passignopnode11
= var_nodearraylist7
;
209 /* <var_passignopnode11:nullable Object> isa nullable AAssignOp */
210 cltype25
= type_nullable__nitc__AAssignOp
.color
;
211 idtype26
= type_nullable__nitc__AAssignOp
.id
;
212 if(var_passignopnode11
== NULL
) {
215 if(cltype25
>= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->table_size
) {
218 var24
= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->type_table
[cltype25
] == idtype26
;
221 if (unlikely(!var24
)) {
222 if(catchStack
.cursor
>= 0){
223 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
225 PRINT_ERROR("Runtime error: %s", "Assert failed");
226 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7009);
229 var_pexprnode12
= var_nodearraylist8
;
230 /* <var_pexprnode12:nullable Object> isa nullable AExpr */
231 cltype28
= type_nullable__nitc__AExpr
.color
;
232 idtype29
= type_nullable__nitc__AExpr
.id
;
233 if(var_pexprnode12
== NULL
) {
236 if(cltype28
>= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->table_size
) {
239 var27
= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->type_table
[cltype28
] == idtype29
;
242 if (unlikely(!var27
)) {
243 if(catchStack
.cursor
>= 0){
244 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
246 PRINT_ERROR("Runtime error: %s", "Assert failed");
247 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7011);
250 var30
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
252 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var30
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode9
, var_passignopnode11
, var_pexprnode12
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var30:ACallReassignExpr>*/
254 var_pexprnode1
= var30
;
255 var_node_list
= var_pexprnode1
;
256 var31
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction234> */
258 var32
= nitc___nitc__Parser___go_to(var_p
, var31
);
261 nitc___nitc__Parser___push(var_p
, var32
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
265 /* method parser$ReduceAction235$action for (self: ReduceAction235, Parser) */
266 void nitc__parser___nitc__parser__ReduceAction235___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
267 val
* var_p
/* var p: Parser */;
268 val
* var_node_list
/* var node_list: nullable Object */;
269 val
* var
/* : nullable Object */;
270 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
271 val
* var1
/* : nullable Object */;
272 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
273 val
* var2
/* : nullable Object */;
274 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
275 val
* var3
/* : nullable Object */;
276 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
277 val
* var4
/* : nullable Object */;
278 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
279 val
* var5
/* : nullable Object */;
280 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
281 val
* var6
/* : nullable Object */;
282 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
283 val
* var7
/* : nullable Object */;
284 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
285 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
286 short int var8
/* : Bool */;
289 val
* var9
/* : Array[Object] */;
290 val
* var_listnode6
/* var listnode6: Array[Object] */;
291 val
* var_listnode5
/* var listnode5: nullable Object */;
292 short int var10
/* : Bool */;
295 val
* var13
/* : Array[Object] */;
296 val
* var14
/* : AQualified */;
297 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
298 val
* var_tidnode8
/* var tidnode8: nullable Object */;
299 short int var15
/* : Bool */;
302 val
* var18
/* : AQid */;
303 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
304 val
* var_pexprsnode9
/* var pexprsnode9: nullable Object */;
305 short int var19
/* : Bool */;
308 val
* var_passignopnode10
/* var passignopnode10: nullable Object */;
309 short int var22
/* : Bool */;
312 val
* var_pexprnode11
/* var pexprnode11: nullable Object */;
313 short int var25
/* : Bool */;
316 val
* var28
/* : ACallReassignExpr */;
317 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
318 long var29
/* : Int */;
319 long var30
/* : Int */;
321 var_node_list
= ((val
*)NULL
);
323 var
= nitc___nitc__Parser___pop(var_p
);
325 var_nodearraylist8
= var
;
327 var1
= nitc___nitc__Parser___pop(var_p
);
329 var_nodearraylist7
= var1
;
331 var2
= nitc___nitc__Parser___pop(var_p
);
333 var_nodearraylist6
= var2
;
335 var3
= nitc___nitc__Parser___pop(var_p
);
337 var_nodearraylist5
= var3
;
339 var4
= nitc___nitc__Parser___pop(var_p
);
341 var_nodearraylist4
= var4
;
343 var5
= nitc___nitc__Parser___pop(var_p
);
345 var_nodearraylist3
= var5
;
347 var6
= nitc___nitc__Parser___pop(var_p
);
349 var_nodearraylist2
= var6
;
351 var7
= nitc___nitc__Parser___pop(var_p
);
353 var_nodearraylist1
= var7
;
354 var_pexprnode2
= var_nodearraylist1
;
355 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
356 cltype
= type_nullable__nitc__AExpr
.color
;
357 idtype
= type_nullable__nitc__AExpr
.id
;
358 if(var_pexprnode2
== NULL
) {
361 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
364 var8
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
367 if (unlikely(!var8
)) {
368 if(catchStack
.cursor
>= 0){
369 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
371 PRINT_ERROR("Runtime error: %s", "Assert failed");
372 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7037);
375 var9
= NEW_core__Array(&type_core__Array__core__Object
);
377 core___core__Array___core__kernel__Object__init(var9
); /* Direct call array$Array$init on <var9:Array[Object]>*/
379 var_listnode6
= var9
;
380 var_listnode5
= var_nodearraylist4
;
381 /* <var_listnode5:nullable Object> isa Array[Object] */
382 cltype11
= type_core__Array__core__Object
.color
;
383 idtype12
= type_core__Array__core__Object
.id
;
384 if(var_listnode5
== NULL
) {
387 if(cltype11
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
390 var10
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype11
] == idtype12
;
393 if (unlikely(!var10
)) {
394 if(catchStack
.cursor
>= 0){
395 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
397 PRINT_ERROR("Runtime error: %s", "Assert failed");
398 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7040);
402 var13
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
404 var_listnode6
= var13
;
405 var14
= NEW_nitc__AQualified(&type_nitc__AQualified
);
407 nitc__parser_prod___AQualified___init_aqualified(var14
, var_listnode6
, ((val
*)NULL
)); /* Direct call parser_prod$AQualified$init_aqualified on <var14:AQualified>*/
409 var_pqualifiednode4
= var14
;
410 var_tidnode8
= var_nodearraylist5
;
411 /* <var_tidnode8:nullable Object> isa nullable TId */
412 cltype16
= type_nullable__nitc__TId
.color
;
413 idtype17
= type_nullable__nitc__TId
.id
;
414 if(var_tidnode8
== NULL
) {
417 if(cltype16
>= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->table_size
) {
420 var15
= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->type_table
[cltype16
] == idtype17
;
423 if (unlikely(!var15
)) {
424 if(catchStack
.cursor
>= 0){
425 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
427 PRINT_ERROR("Runtime error: %s", "Assert failed");
428 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7047);
431 var18
= NEW_nitc__AQid(&type_nitc__AQid
);
433 nitc__parser_prod___AQid___init_aqid(var18
, var_pqualifiednode4
, var_tidnode8
); /* Direct call parser_prod$AQid$init_aqid on <var18:AQid>*/
435 var_pqidnode3
= var18
;
436 var_pexprsnode9
= var_nodearraylist6
;
437 /* <var_pexprsnode9:nullable Object> isa nullable AExprs */
438 cltype20
= type_nullable__nitc__AExprs
.color
;
439 idtype21
= type_nullable__nitc__AExprs
.id
;
440 if(var_pexprsnode9
== NULL
) {
443 if(cltype20
>= (((long)var_pexprsnode9
&3)?type_info
[((long)var_pexprsnode9
&3)]:var_pexprsnode9
->type
)->table_size
) {
446 var19
= (((long)var_pexprsnode9
&3)?type_info
[((long)var_pexprsnode9
&3)]:var_pexprsnode9
->type
)->type_table
[cltype20
] == idtype21
;
449 if (unlikely(!var19
)) {
450 if(catchStack
.cursor
>= 0){
451 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
453 PRINT_ERROR("Runtime error: %s", "Assert failed");
454 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7053);
457 var_passignopnode10
= var_nodearraylist7
;
458 /* <var_passignopnode10:nullable Object> isa nullable AAssignOp */
459 cltype23
= type_nullable__nitc__AAssignOp
.color
;
460 idtype24
= type_nullable__nitc__AAssignOp
.id
;
461 if(var_passignopnode10
== NULL
) {
464 if(cltype23
>= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->table_size
) {
467 var22
= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->type_table
[cltype23
] == idtype24
;
470 if (unlikely(!var22
)) {
471 if(catchStack
.cursor
>= 0){
472 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
474 PRINT_ERROR("Runtime error: %s", "Assert failed");
475 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7055);
478 var_pexprnode11
= var_nodearraylist8
;
479 /* <var_pexprnode11:nullable Object> isa nullable AExpr */
480 cltype26
= type_nullable__nitc__AExpr
.color
;
481 idtype27
= type_nullable__nitc__AExpr
.id
;
482 if(var_pexprnode11
== NULL
) {
485 if(cltype26
>= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->table_size
) {
488 var25
= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->type_table
[cltype26
] == idtype27
;
491 if (unlikely(!var25
)) {
492 if(catchStack
.cursor
>= 0){
493 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
495 PRINT_ERROR("Runtime error: %s", "Assert failed");
496 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7057);
499 var28
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
501 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var28
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode9
, var_passignopnode10
, var_pexprnode11
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var28:ACallReassignExpr>*/
503 var_pexprnode1
= var28
;
504 var_node_list
= var_pexprnode1
;
505 var29
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction235> */
507 var30
= nitc___nitc__Parser___go_to(var_p
, var29
);
510 nitc___nitc__Parser___push(var_p
, var30
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
514 /* method parser$ReduceAction236$action for (self: ReduceAction236, Parser) */
515 void nitc__parser___nitc__parser__ReduceAction236___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
516 val
* var_p
/* var p: Parser */;
517 val
* var_node_list
/* var node_list: nullable Object */;
518 val
* var
/* : nullable Object */;
519 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
520 val
* var1
/* : nullable Object */;
521 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
522 val
* var2
/* : nullable Object */;
523 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
524 val
* var3
/* : nullable Object */;
525 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
526 val
* var4
/* : nullable Object */;
527 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
528 val
* var5
/* : nullable Object */;
529 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
530 val
* var6
/* : nullable Object */;
531 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
532 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
533 short int var7
/* : Bool */;
536 val
* var8
/* : Array[Object] */;
537 val
* var_listnode6
/* var listnode6: Array[Object] */;
538 val
* var_listnode5
/* var listnode5: nullable Object */;
539 short int var9
/* : Bool */;
542 val
* var12
/* : Array[Object] */;
543 val
* var13
/* : AQualified */;
544 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
545 val
* var_tidnode8
/* var tidnode8: nullable Object */;
546 short int var14
/* : Bool */;
549 val
* var17
/* : AQid */;
550 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
551 val
* var18
/* : Array[Object] */;
552 val
* var_listnode10
/* var listnode10: Array[Object] */;
553 val
* var19
/* : AListExprs */;
554 val
* var_pexprsnode9
/* var pexprsnode9: nullable AListExprs */;
555 val
* var_passignopnode11
/* var passignopnode11: nullable Object */;
556 short int var20
/* : Bool */;
559 val
* var_pexprnode12
/* var pexprnode12: nullable Object */;
560 short int var23
/* : Bool */;
563 val
* var26
/* : ACallReassignExpr */;
564 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
565 long var27
/* : Int */;
566 long var28
/* : Int */;
568 var_node_list
= ((val
*)NULL
);
570 var
= nitc___nitc__Parser___pop(var_p
);
572 var_nodearraylist7
= var
;
574 var1
= nitc___nitc__Parser___pop(var_p
);
576 var_nodearraylist6
= var1
;
578 var2
= nitc___nitc__Parser___pop(var_p
);
580 var_nodearraylist5
= var2
;
582 var3
= nitc___nitc__Parser___pop(var_p
);
584 var_nodearraylist4
= var3
;
586 var4
= nitc___nitc__Parser___pop(var_p
);
588 var_nodearraylist3
= var4
;
590 var5
= nitc___nitc__Parser___pop(var_p
);
592 var_nodearraylist2
= var5
;
594 var6
= nitc___nitc__Parser___pop(var_p
);
596 var_nodearraylist1
= var6
;
597 var_pexprnode2
= var_nodearraylist1
;
598 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
599 cltype
= type_nullable__nitc__AExpr
.color
;
600 idtype
= type_nullable__nitc__AExpr
.id
;
601 if(var_pexprnode2
== NULL
) {
604 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
607 var7
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
610 if (unlikely(!var7
)) {
611 if(catchStack
.cursor
>= 0){
612 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
614 PRINT_ERROR("Runtime error: %s", "Assert failed");
615 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7082);
618 var8
= NEW_core__Array(&type_core__Array__core__Object
);
620 core___core__Array___core__kernel__Object__init(var8
); /* Direct call array$Array$init on <var8:Array[Object]>*/
622 var_listnode6
= var8
;
623 var_listnode5
= var_nodearraylist4
;
624 /* <var_listnode5:nullable Object> isa Array[Object] */
625 cltype10
= type_core__Array__core__Object
.color
;
626 idtype11
= type_core__Array__core__Object
.id
;
627 if(var_listnode5
== NULL
) {
630 if(cltype10
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
633 var9
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype10
] == idtype11
;
636 if (unlikely(!var9
)) {
637 if(catchStack
.cursor
>= 0){
638 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
640 PRINT_ERROR("Runtime error: %s", "Assert failed");
641 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7085);
645 var12
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
647 var_listnode6
= var12
;
648 var13
= NEW_nitc__AQualified(&type_nitc__AQualified
);
650 nitc__parser_prod___AQualified___init_aqualified(var13
, var_listnode6
, ((val
*)NULL
)); /* Direct call parser_prod$AQualified$init_aqualified on <var13:AQualified>*/
652 var_pqualifiednode4
= var13
;
653 var_tidnode8
= var_nodearraylist5
;
654 /* <var_tidnode8:nullable Object> isa nullable TId */
655 cltype15
= type_nullable__nitc__TId
.color
;
656 idtype16
= type_nullable__nitc__TId
.id
;
657 if(var_tidnode8
== NULL
) {
660 if(cltype15
>= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->table_size
) {
663 var14
= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->type_table
[cltype15
] == idtype16
;
666 if (unlikely(!var14
)) {
667 if(catchStack
.cursor
>= 0){
668 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
670 PRINT_ERROR("Runtime error: %s", "Assert failed");
671 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7092);
674 var17
= NEW_nitc__AQid(&type_nitc__AQid
);
676 nitc__parser_prod___AQid___init_aqid(var17
, var_pqualifiednode4
, var_tidnode8
); /* Direct call parser_prod$AQid$init_aqid on <var17:AQid>*/
678 var_pqidnode3
= var17
;
679 var18
= NEW_core__Array(&type_core__Array__core__Object
);
681 core___core__Array___core__kernel__Object__init(var18
); /* Direct call array$Array$init on <var18:Array[Object]>*/
683 var_listnode10
= var18
;
684 var19
= NEW_nitc__AListExprs(&type_nitc__AListExprs
);
686 nitc__parser_prod___AListExprs___init_alistexprs(var19
, var_listnode10
); /* Direct call parser_prod$AListExprs$init_alistexprs on <var19:AListExprs>*/
688 var_pexprsnode9
= var19
;
689 var_passignopnode11
= var_nodearraylist6
;
690 /* <var_passignopnode11:nullable Object> isa nullable AAssignOp */
691 cltype21
= type_nullable__nitc__AAssignOp
.color
;
692 idtype22
= type_nullable__nitc__AAssignOp
.id
;
693 if(var_passignopnode11
== NULL
) {
696 if(cltype21
>= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->table_size
) {
699 var20
= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->type_table
[cltype21
] == idtype22
;
702 if (unlikely(!var20
)) {
703 if(catchStack
.cursor
>= 0){
704 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
706 PRINT_ERROR("Runtime error: %s", "Assert failed");
707 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7102);
710 var_pexprnode12
= var_nodearraylist7
;
711 /* <var_pexprnode12:nullable Object> isa nullable AExpr */
712 cltype24
= type_nullable__nitc__AExpr
.color
;
713 idtype25
= type_nullable__nitc__AExpr
.id
;
714 if(var_pexprnode12
== NULL
) {
717 if(cltype24
>= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->table_size
) {
720 var23
= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->type_table
[cltype24
] == idtype25
;
723 if (unlikely(!var23
)) {
724 if(catchStack
.cursor
>= 0){
725 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
727 PRINT_ERROR("Runtime error: %s", "Assert failed");
728 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7104);
731 var26
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
733 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var26
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode9
, var_passignopnode11
, var_pexprnode12
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var26:ACallReassignExpr>*/
735 var_pexprnode1
= var26
;
736 var_node_list
= var_pexprnode1
;
737 var27
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction236> */
739 var28
= nitc___nitc__Parser___go_to(var_p
, var27
);
742 nitc___nitc__Parser___push(var_p
, var28
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
746 /* method parser$ReduceAction237$action for (self: ReduceAction237, Parser) */
747 void nitc__parser___nitc__parser__ReduceAction237___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
748 val
* var_p
/* var p: Parser */;
749 val
* var_node_list
/* var node_list: nullable Object */;
750 val
* var
/* : nullable Object */;
751 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
752 val
* var1
/* : nullable Object */;
753 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
754 val
* var2
/* : nullable Object */;
755 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
756 val
* var3
/* : nullable Object */;
757 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
758 val
* var4
/* : AImplicitSelfExpr */;
759 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
760 val
* var_tidnode5
/* var tidnode5: nullable Object */;
761 short int var5
/* : Bool */;
764 val
* var6
/* : AQid */;
765 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
766 val
* var_pexprsnode6
/* var pexprsnode6: nullable Object */;
767 short int var7
/* : Bool */;
770 val
* var_passignopnode7
/* var passignopnode7: nullable Object */;
771 short int var10
/* : Bool */;
774 val
* var_pexprnode8
/* var pexprnode8: nullable Object */;
775 short int var13
/* : Bool */;
778 val
* var16
/* : ACallReassignExpr */;
779 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
780 long var17
/* : Int */;
781 long var18
/* : Int */;
783 var_node_list
= ((val
*)NULL
);
785 var
= nitc___nitc__Parser___pop(var_p
);
787 var_nodearraylist4
= var
;
789 var1
= nitc___nitc__Parser___pop(var_p
);
791 var_nodearraylist3
= var1
;
793 var2
= nitc___nitc__Parser___pop(var_p
);
795 var_nodearraylist2
= var2
;
797 var3
= nitc___nitc__Parser___pop(var_p
);
799 var_nodearraylist1
= var3
;
800 var4
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
802 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var4
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/
804 var_pexprnode2
= var4
;
805 var_tidnode5
= var_nodearraylist1
;
806 /* <var_tidnode5:nullable Object> isa nullable TId */
807 cltype
= type_nullable__nitc__TId
.color
;
808 idtype
= type_nullable__nitc__TId
.id
;
809 if(var_tidnode5
== NULL
) {
812 if(cltype
>= (((long)var_tidnode5
&3)?type_info
[((long)var_tidnode5
&3)]:var_tidnode5
->type
)->table_size
) {
815 var5
= (((long)var_tidnode5
&3)?type_info
[((long)var_tidnode5
&3)]:var_tidnode5
->type
)->type_table
[cltype
] == idtype
;
818 if (unlikely(!var5
)) {
819 if(catchStack
.cursor
>= 0){
820 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
822 PRINT_ERROR("Runtime error: %s", "Assert failed");
823 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7127);
826 var6
= NEW_nitc__AQid(&type_nitc__AQid
);
828 nitc__parser_prod___AQid___init_aqid(var6
, ((val
*)NULL
), var_tidnode5
); /* Direct call parser_prod$AQid$init_aqid on <var6:AQid>*/
830 var_pqidnode3
= var6
;
831 var_pexprsnode6
= var_nodearraylist2
;
832 /* <var_pexprsnode6:nullable Object> isa nullable AExprs */
833 cltype8
= type_nullable__nitc__AExprs
.color
;
834 idtype9
= type_nullable__nitc__AExprs
.id
;
835 if(var_pexprsnode6
== NULL
) {
838 if(cltype8
>= (((long)var_pexprsnode6
&3)?type_info
[((long)var_pexprsnode6
&3)]:var_pexprsnode6
->type
)->table_size
) {
841 var7
= (((long)var_pexprsnode6
&3)?type_info
[((long)var_pexprsnode6
&3)]:var_pexprsnode6
->type
)->type_table
[cltype8
] == idtype9
;
844 if (unlikely(!var7
)) {
845 if(catchStack
.cursor
>= 0){
846 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
848 PRINT_ERROR("Runtime error: %s", "Assert failed");
849 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7133);
852 var_passignopnode7
= var_nodearraylist3
;
853 /* <var_passignopnode7:nullable Object> isa nullable AAssignOp */
854 cltype11
= type_nullable__nitc__AAssignOp
.color
;
855 idtype12
= type_nullable__nitc__AAssignOp
.id
;
856 if(var_passignopnode7
== NULL
) {
859 if(cltype11
>= (((long)var_passignopnode7
&3)?type_info
[((long)var_passignopnode7
&3)]:var_passignopnode7
->type
)->table_size
) {
862 var10
= (((long)var_passignopnode7
&3)?type_info
[((long)var_passignopnode7
&3)]:var_passignopnode7
->type
)->type_table
[cltype11
] == idtype12
;
865 if (unlikely(!var10
)) {
866 if(catchStack
.cursor
>= 0){
867 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
869 PRINT_ERROR("Runtime error: %s", "Assert failed");
870 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7135);
873 var_pexprnode8
= var_nodearraylist4
;
874 /* <var_pexprnode8:nullable Object> isa nullable AExpr */
875 cltype14
= type_nullable__nitc__AExpr
.color
;
876 idtype15
= type_nullable__nitc__AExpr
.id
;
877 if(var_pexprnode8
== NULL
) {
880 if(cltype14
>= (((long)var_pexprnode8
&3)?type_info
[((long)var_pexprnode8
&3)]:var_pexprnode8
->type
)->table_size
) {
883 var13
= (((long)var_pexprnode8
&3)?type_info
[((long)var_pexprnode8
&3)]:var_pexprnode8
->type
)->type_table
[cltype14
] == idtype15
;
886 if (unlikely(!var13
)) {
887 if(catchStack
.cursor
>= 0){
888 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
890 PRINT_ERROR("Runtime error: %s", "Assert failed");
891 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7137);
894 var16
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
896 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var16
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode6
, var_passignopnode7
, var_pexprnode8
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var16:ACallReassignExpr>*/
898 var_pexprnode1
= var16
;
899 var_node_list
= var_pexprnode1
;
900 var17
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction237> */
902 var18
= nitc___nitc__Parser___go_to(var_p
, var17
);
905 nitc___nitc__Parser___push(var_p
, var18
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
909 /* method parser$ReduceAction238$action for (self: ReduceAction238, Parser) */
910 void nitc__parser___nitc__parser__ReduceAction238___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
911 val
* var_p
/* var p: Parser */;
912 val
* var_node_list
/* var node_list: nullable Object */;
913 val
* var
/* : nullable Object */;
914 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
915 val
* var1
/* : nullable Object */;
916 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
917 val
* var2
/* : nullable Object */;
918 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
919 val
* var3
/* : AImplicitSelfExpr */;
920 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
921 val
* var_tidnode5
/* var tidnode5: nullable Object */;
922 short int var4
/* : Bool */;
925 val
* var5
/* : AQid */;
926 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
927 val
* var6
/* : Array[Object] */;
928 val
* var_listnode7
/* var listnode7: Array[Object] */;
929 val
* var7
/* : AListExprs */;
930 val
* var_pexprsnode6
/* var pexprsnode6: nullable AListExprs */;
931 val
* var_passignopnode8
/* var passignopnode8: nullable Object */;
932 short int var8
/* : Bool */;
935 val
* var_pexprnode9
/* var pexprnode9: nullable Object */;
936 short int var11
/* : Bool */;
939 val
* var14
/* : ACallReassignExpr */;
940 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
941 long var15
/* : Int */;
942 long var16
/* : Int */;
944 var_node_list
= ((val
*)NULL
);
946 var
= nitc___nitc__Parser___pop(var_p
);
948 var_nodearraylist3
= var
;
950 var1
= nitc___nitc__Parser___pop(var_p
);
952 var_nodearraylist2
= var1
;
954 var2
= nitc___nitc__Parser___pop(var_p
);
956 var_nodearraylist1
= var2
;
957 var3
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
959 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var3
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var3:AImplicitSelfExpr>*/
961 var_pexprnode2
= var3
;
962 var_tidnode5
= var_nodearraylist1
;
963 /* <var_tidnode5:nullable Object> isa nullable TId */
964 cltype
= type_nullable__nitc__TId
.color
;
965 idtype
= type_nullable__nitc__TId
.id
;
966 if(var_tidnode5
== NULL
) {
969 if(cltype
>= (((long)var_tidnode5
&3)?type_info
[((long)var_tidnode5
&3)]:var_tidnode5
->type
)->table_size
) {
972 var4
= (((long)var_tidnode5
&3)?type_info
[((long)var_tidnode5
&3)]:var_tidnode5
->type
)->type_table
[cltype
] == idtype
;
975 if (unlikely(!var4
)) {
976 if(catchStack
.cursor
>= 0){
977 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
979 PRINT_ERROR("Runtime error: %s", "Assert failed");
980 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7159);
983 var5
= NEW_nitc__AQid(&type_nitc__AQid
);
985 nitc__parser_prod___AQid___init_aqid(var5
, ((val
*)NULL
), var_tidnode5
); /* Direct call parser_prod$AQid$init_aqid on <var5:AQid>*/
987 var_pqidnode3
= var5
;
988 var6
= NEW_core__Array(&type_core__Array__core__Object
);
990 core___core__Array___core__kernel__Object__init(var6
); /* Direct call array$Array$init on <var6:Array[Object]>*/
992 var_listnode7
= var6
;
993 var7
= NEW_nitc__AListExprs(&type_nitc__AListExprs
);
995 nitc__parser_prod___AListExprs___init_alistexprs(var7
, var_listnode7
); /* Direct call parser_prod$AListExprs$init_alistexprs on <var7:AListExprs>*/
997 var_pexprsnode6
= var7
;
998 var_passignopnode8
= var_nodearraylist2
;
999 /* <var_passignopnode8:nullable Object> isa nullable AAssignOp */
1000 cltype9
= type_nullable__nitc__AAssignOp
.color
;
1001 idtype10
= type_nullable__nitc__AAssignOp
.id
;
1002 if(var_passignopnode8
== NULL
) {
1005 if(cltype9
>= (((long)var_passignopnode8
&3)?type_info
[((long)var_passignopnode8
&3)]:var_passignopnode8
->type
)->table_size
) {
1008 var8
= (((long)var_passignopnode8
&3)?type_info
[((long)var_passignopnode8
&3)]:var_passignopnode8
->type
)->type_table
[cltype9
] == idtype10
;
1011 if (unlikely(!var8
)) {
1012 if(catchStack
.cursor
>= 0){
1013 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1015 PRINT_ERROR("Runtime error: %s", "Assert failed");
1016 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7169);
1019 var_pexprnode9
= var_nodearraylist3
;
1020 /* <var_pexprnode9:nullable Object> isa nullable AExpr */
1021 cltype12
= type_nullable__nitc__AExpr
.color
;
1022 idtype13
= type_nullable__nitc__AExpr
.id
;
1023 if(var_pexprnode9
== NULL
) {
1026 if(cltype12
>= (((long)var_pexprnode9
&3)?type_info
[((long)var_pexprnode9
&3)]:var_pexprnode9
->type
)->table_size
) {
1029 var11
= (((long)var_pexprnode9
&3)?type_info
[((long)var_pexprnode9
&3)]:var_pexprnode9
->type
)->type_table
[cltype12
] == idtype13
;
1032 if (unlikely(!var11
)) {
1033 if(catchStack
.cursor
>= 0){
1034 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1036 PRINT_ERROR("Runtime error: %s", "Assert failed");
1037 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7171);
1040 var14
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
1042 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var14
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode6
, var_passignopnode8
, var_pexprnode9
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var14:ACallReassignExpr>*/
1044 var_pexprnode1
= var14
;
1045 var_node_list
= var_pexprnode1
;
1046 var15
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction238> */
1048 var16
= nitc___nitc__Parser___go_to(var_p
, var15
);
1051 nitc___nitc__Parser___push(var_p
, var16
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
1055 /* method parser$ReduceAction239$action for (self: ReduceAction239, Parser) */
1056 void nitc__parser___nitc__parser__ReduceAction239___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1057 val
* var_p
/* var p: Parser */;
1058 val
* var_node_list
/* var node_list: nullable Object */;
1059 val
* var
/* : nullable Object */;
1060 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1061 val
* var1
/* : nullable Object */;
1062 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1063 val
* var2
/* : nullable Object */;
1064 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1065 val
* var3
/* : nullable Object */;
1066 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1067 val
* var4
/* : nullable Object */;
1068 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1069 val
* var5
/* : AImplicitSelfExpr */;
1070 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1071 val
* var6
/* : Array[Object] */;
1072 val
* var_listnode5
/* var listnode5: Array[Object] */;
1073 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
1074 short int var7
/* : Bool */;
1077 val
* var8
/* : AQualified */;
1078 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
1079 val
* var_tidnode7
/* var tidnode7: nullable Object */;
1080 short int var9
/* : Bool */;
1083 val
* var12
/* : AQid */;
1084 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
1085 val
* var_pexprsnode8
/* var pexprsnode8: nullable Object */;
1086 short int var13
/* : Bool */;
1089 val
* var_passignopnode9
/* var passignopnode9: nullable Object */;
1090 short int var16
/* : Bool */;
1093 val
* var_pexprnode10
/* var pexprnode10: nullable Object */;
1094 short int var19
/* : Bool */;
1097 val
* var22
/* : ACallReassignExpr */;
1098 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
1099 long var23
/* : Int */;
1100 long var24
/* : Int */;
1102 var_node_list
= ((val
*)NULL
);
1104 var
= nitc___nitc__Parser___pop(var_p
);
1106 var_nodearraylist5
= var
;
1108 var1
= nitc___nitc__Parser___pop(var_p
);
1110 var_nodearraylist4
= var1
;
1112 var2
= nitc___nitc__Parser___pop(var_p
);
1114 var_nodearraylist3
= var2
;
1116 var3
= nitc___nitc__Parser___pop(var_p
);
1118 var_nodearraylist2
= var3
;
1120 var4
= nitc___nitc__Parser___pop(var_p
);
1122 var_nodearraylist1
= var4
;
1123 var5
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
1125 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var5
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/
1127 var_pexprnode2
= var5
;
1128 var6
= NEW_core__Array(&type_core__Array__core__Object
);
1130 core___core__Array___core__kernel__Object__init(var6
); /* Direct call array$Array$init on <var6:Array[Object]>*/
1132 var_listnode5
= var6
;
1133 var_tclassidnode6
= var_nodearraylist1
;
1134 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
1135 cltype
= type_nullable__nitc__TClassid
.color
;
1136 idtype
= type_nullable__nitc__TClassid
.id
;
1137 if(var_tclassidnode6
== NULL
) {
1140 if(cltype
>= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->table_size
) {
1143 var7
= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->type_table
[cltype
] == idtype
;
1146 if (unlikely(!var7
)) {
1147 if(catchStack
.cursor
>= 0){
1148 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1150 PRINT_ERROR("Runtime error: %s", "Assert failed");
1151 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7196);
1154 var8
= NEW_nitc__AQualified(&type_nitc__AQualified
);
1156 nitc__parser_prod___AQualified___init_aqualified(var8
, var_listnode5
, var_tclassidnode6
); /* Direct call parser_prod$AQualified$init_aqualified on <var8:AQualified>*/
1158 var_pqualifiednode4
= var8
;
1159 var_tidnode7
= var_nodearraylist2
;
1160 /* <var_tidnode7:nullable Object> isa nullable TId */
1161 cltype10
= type_nullable__nitc__TId
.color
;
1162 idtype11
= type_nullable__nitc__TId
.id
;
1163 if(var_tidnode7
== NULL
) {
1166 if(cltype10
>= (((long)var_tidnode7
&3)?type_info
[((long)var_tidnode7
&3)]:var_tidnode7
->type
)->table_size
) {
1169 var9
= (((long)var_tidnode7
&3)?type_info
[((long)var_tidnode7
&3)]:var_tidnode7
->type
)->type_table
[cltype10
] == idtype11
;
1172 if (unlikely(!var9
)) {
1173 if(catchStack
.cursor
>= 0){
1174 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1176 PRINT_ERROR("Runtime error: %s", "Assert failed");
1177 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7202);
1180 var12
= NEW_nitc__AQid(&type_nitc__AQid
);
1182 nitc__parser_prod___AQid___init_aqid(var12
, var_pqualifiednode4
, var_tidnode7
); /* Direct call parser_prod$AQid$init_aqid on <var12:AQid>*/
1184 var_pqidnode3
= var12
;
1185 var_pexprsnode8
= var_nodearraylist3
;
1186 /* <var_pexprsnode8:nullable Object> isa nullable AExprs */
1187 cltype14
= type_nullable__nitc__AExprs
.color
;
1188 idtype15
= type_nullable__nitc__AExprs
.id
;
1189 if(var_pexprsnode8
== NULL
) {
1192 if(cltype14
>= (((long)var_pexprsnode8
&3)?type_info
[((long)var_pexprsnode8
&3)]:var_pexprsnode8
->type
)->table_size
) {
1195 var13
= (((long)var_pexprsnode8
&3)?type_info
[((long)var_pexprsnode8
&3)]:var_pexprsnode8
->type
)->type_table
[cltype14
] == idtype15
;
1198 if (unlikely(!var13
)) {
1199 if(catchStack
.cursor
>= 0){
1200 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1202 PRINT_ERROR("Runtime error: %s", "Assert failed");
1203 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7208);
1206 var_passignopnode9
= var_nodearraylist4
;
1207 /* <var_passignopnode9:nullable Object> isa nullable AAssignOp */
1208 cltype17
= type_nullable__nitc__AAssignOp
.color
;
1209 idtype18
= type_nullable__nitc__AAssignOp
.id
;
1210 if(var_passignopnode9
== NULL
) {
1213 if(cltype17
>= (((long)var_passignopnode9
&3)?type_info
[((long)var_passignopnode9
&3)]:var_passignopnode9
->type
)->table_size
) {
1216 var16
= (((long)var_passignopnode9
&3)?type_info
[((long)var_passignopnode9
&3)]:var_passignopnode9
->type
)->type_table
[cltype17
] == idtype18
;
1219 if (unlikely(!var16
)) {
1220 if(catchStack
.cursor
>= 0){
1221 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1223 PRINT_ERROR("Runtime error: %s", "Assert failed");
1224 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7210);
1227 var_pexprnode10
= var_nodearraylist5
;
1228 /* <var_pexprnode10:nullable Object> isa nullable AExpr */
1229 cltype20
= type_nullable__nitc__AExpr
.color
;
1230 idtype21
= type_nullable__nitc__AExpr
.id
;
1231 if(var_pexprnode10
== NULL
) {
1234 if(cltype20
>= (((long)var_pexprnode10
&3)?type_info
[((long)var_pexprnode10
&3)]:var_pexprnode10
->type
)->table_size
) {
1237 var19
= (((long)var_pexprnode10
&3)?type_info
[((long)var_pexprnode10
&3)]:var_pexprnode10
->type
)->type_table
[cltype20
] == idtype21
;
1240 if (unlikely(!var19
)) {
1241 if(catchStack
.cursor
>= 0){
1242 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1244 PRINT_ERROR("Runtime error: %s", "Assert failed");
1245 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7212);
1248 var22
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
1250 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var22
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode8
, var_passignopnode9
, var_pexprnode10
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var22:ACallReassignExpr>*/
1252 var_pexprnode1
= var22
;
1253 var_node_list
= var_pexprnode1
;
1254 var23
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction239> */
1256 var24
= nitc___nitc__Parser___go_to(var_p
, var23
);
1259 nitc___nitc__Parser___push(var_p
, var24
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
1263 /* method parser$ReduceAction240$action for (self: ReduceAction240, Parser) */
1264 void nitc__parser___nitc__parser__ReduceAction240___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1265 val
* var_p
/* var p: Parser */;
1266 val
* var_node_list
/* var node_list: nullable Object */;
1267 val
* var
/* : nullable Object */;
1268 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1269 val
* var1
/* : nullable Object */;
1270 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1271 val
* var2
/* : nullable Object */;
1272 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1273 val
* var3
/* : nullable Object */;
1274 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1275 val
* var4
/* : AImplicitSelfExpr */;
1276 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1277 val
* var5
/* : Array[Object] */;
1278 val
* var_listnode5
/* var listnode5: Array[Object] */;
1279 val
* var_tclassidnode6
/* var tclassidnode6: nullable Object */;
1280 short int var6
/* : Bool */;
1283 val
* var7
/* : AQualified */;
1284 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
1285 val
* var_tidnode7
/* var tidnode7: nullable Object */;
1286 short int var8
/* : Bool */;
1289 val
* var11
/* : AQid */;
1290 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
1291 val
* var12
/* : Array[Object] */;
1292 val
* var_listnode9
/* var listnode9: Array[Object] */;
1293 val
* var13
/* : AListExprs */;
1294 val
* var_pexprsnode8
/* var pexprsnode8: nullable AListExprs */;
1295 val
* var_passignopnode10
/* var passignopnode10: nullable Object */;
1296 short int var14
/* : Bool */;
1299 val
* var_pexprnode11
/* var pexprnode11: nullable Object */;
1300 short int var17
/* : Bool */;
1303 val
* var20
/* : ACallReassignExpr */;
1304 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
1305 long var21
/* : Int */;
1306 long var22
/* : Int */;
1308 var_node_list
= ((val
*)NULL
);
1310 var
= nitc___nitc__Parser___pop(var_p
);
1312 var_nodearraylist4
= var
;
1314 var1
= nitc___nitc__Parser___pop(var_p
);
1316 var_nodearraylist3
= var1
;
1318 var2
= nitc___nitc__Parser___pop(var_p
);
1320 var_nodearraylist2
= var2
;
1322 var3
= nitc___nitc__Parser___pop(var_p
);
1324 var_nodearraylist1
= var3
;
1325 var4
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
1327 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var4
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/
1329 var_pexprnode2
= var4
;
1330 var5
= NEW_core__Array(&type_core__Array__core__Object
);
1332 core___core__Array___core__kernel__Object__init(var5
); /* Direct call array$Array$init on <var5:Array[Object]>*/
1334 var_listnode5
= var5
;
1335 var_tclassidnode6
= var_nodearraylist1
;
1336 /* <var_tclassidnode6:nullable Object> isa nullable TClassid */
1337 cltype
= type_nullable__nitc__TClassid
.color
;
1338 idtype
= type_nullable__nitc__TClassid
.id
;
1339 if(var_tclassidnode6
== NULL
) {
1342 if(cltype
>= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->table_size
) {
1345 var6
= (((long)var_tclassidnode6
&3)?type_info
[((long)var_tclassidnode6
&3)]:var_tclassidnode6
->type
)->type_table
[cltype
] == idtype
;
1348 if (unlikely(!var6
)) {
1349 if(catchStack
.cursor
>= 0){
1350 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1352 PRINT_ERROR("Runtime error: %s", "Assert failed");
1353 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7236);
1356 var7
= NEW_nitc__AQualified(&type_nitc__AQualified
);
1358 nitc__parser_prod___AQualified___init_aqualified(var7
, var_listnode5
, var_tclassidnode6
); /* Direct call parser_prod$AQualified$init_aqualified on <var7:AQualified>*/
1360 var_pqualifiednode4
= var7
;
1361 var_tidnode7
= var_nodearraylist2
;
1362 /* <var_tidnode7:nullable Object> isa nullable TId */
1363 cltype9
= type_nullable__nitc__TId
.color
;
1364 idtype10
= type_nullable__nitc__TId
.id
;
1365 if(var_tidnode7
== NULL
) {
1368 if(cltype9
>= (((long)var_tidnode7
&3)?type_info
[((long)var_tidnode7
&3)]:var_tidnode7
->type
)->table_size
) {
1371 var8
= (((long)var_tidnode7
&3)?type_info
[((long)var_tidnode7
&3)]:var_tidnode7
->type
)->type_table
[cltype9
] == idtype10
;
1374 if (unlikely(!var8
)) {
1375 if(catchStack
.cursor
>= 0){
1376 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1378 PRINT_ERROR("Runtime error: %s", "Assert failed");
1379 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7242);
1382 var11
= NEW_nitc__AQid(&type_nitc__AQid
);
1384 nitc__parser_prod___AQid___init_aqid(var11
, var_pqualifiednode4
, var_tidnode7
); /* Direct call parser_prod$AQid$init_aqid on <var11:AQid>*/
1386 var_pqidnode3
= var11
;
1387 var12
= NEW_core__Array(&type_core__Array__core__Object
);
1389 core___core__Array___core__kernel__Object__init(var12
); /* Direct call array$Array$init on <var12:Array[Object]>*/
1391 var_listnode9
= var12
;
1392 var13
= NEW_nitc__AListExprs(&type_nitc__AListExprs
);
1394 nitc__parser_prod___AListExprs___init_alistexprs(var13
, var_listnode9
); /* Direct call parser_prod$AListExprs$init_alistexprs on <var13:AListExprs>*/
1396 var_pexprsnode8
= var13
;
1397 var_passignopnode10
= var_nodearraylist3
;
1398 /* <var_passignopnode10:nullable Object> isa nullable AAssignOp */
1399 cltype15
= type_nullable__nitc__AAssignOp
.color
;
1400 idtype16
= type_nullable__nitc__AAssignOp
.id
;
1401 if(var_passignopnode10
== NULL
) {
1404 if(cltype15
>= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->table_size
) {
1407 var14
= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->type_table
[cltype15
] == idtype16
;
1410 if (unlikely(!var14
)) {
1411 if(catchStack
.cursor
>= 0){
1412 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1414 PRINT_ERROR("Runtime error: %s", "Assert failed");
1415 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7252);
1418 var_pexprnode11
= var_nodearraylist4
;
1419 /* <var_pexprnode11:nullable Object> isa nullable AExpr */
1420 cltype18
= type_nullable__nitc__AExpr
.color
;
1421 idtype19
= type_nullable__nitc__AExpr
.id
;
1422 if(var_pexprnode11
== NULL
) {
1425 if(cltype18
>= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->table_size
) {
1428 var17
= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->type_table
[cltype18
] == idtype19
;
1431 if (unlikely(!var17
)) {
1432 if(catchStack
.cursor
>= 0){
1433 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1435 PRINT_ERROR("Runtime error: %s", "Assert failed");
1436 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7254);
1439 var20
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
1441 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var20
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode8
, var_passignopnode10
, var_pexprnode11
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var20:ACallReassignExpr>*/
1443 var_pexprnode1
= var20
;
1444 var_node_list
= var_pexprnode1
;
1445 var21
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction240> */
1447 var22
= nitc___nitc__Parser___go_to(var_p
, var21
);
1450 nitc___nitc__Parser___push(var_p
, var22
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
1454 /* method parser$ReduceAction241$action for (self: ReduceAction241, Parser) */
1455 void nitc__parser___nitc__parser__ReduceAction241___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1456 val
* var_p
/* var p: Parser */;
1457 val
* var_node_list
/* var node_list: nullable Object */;
1458 val
* var
/* : nullable Object */;
1459 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
1460 val
* var1
/* : nullable Object */;
1461 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1462 val
* var2
/* : nullable Object */;
1463 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1464 val
* var3
/* : nullable Object */;
1465 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1466 val
* var4
/* : nullable Object */;
1467 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1468 val
* var5
/* : nullable Object */;
1469 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1470 val
* var6
/* : AImplicitSelfExpr */;
1471 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1472 val
* var7
/* : Array[Object] */;
1473 val
* var_listnode6
/* var listnode6: Array[Object] */;
1474 val
* var_listnode5
/* var listnode5: nullable Object */;
1475 short int var8
/* : Bool */;
1478 val
* var9
/* : Array[Object] */;
1479 val
* var_tclassidnode7
/* var tclassidnode7: nullable Object */;
1480 short int var10
/* : Bool */;
1483 val
* var13
/* : AQualified */;
1484 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
1485 val
* var_tidnode8
/* var tidnode8: nullable Object */;
1486 short int var14
/* : Bool */;
1489 val
* var17
/* : AQid */;
1490 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
1491 val
* var_pexprsnode9
/* var pexprsnode9: nullable Object */;
1492 short int var18
/* : Bool */;
1495 val
* var_passignopnode10
/* var passignopnode10: nullable Object */;
1496 short int var21
/* : Bool */;
1499 val
* var_pexprnode11
/* var pexprnode11: nullable Object */;
1500 short int var24
/* : Bool */;
1503 val
* var27
/* : ACallReassignExpr */;
1504 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
1505 long var28
/* : Int */;
1506 long var29
/* : Int */;
1508 var_node_list
= ((val
*)NULL
);
1510 var
= nitc___nitc__Parser___pop(var_p
);
1512 var_nodearraylist6
= var
;
1514 var1
= nitc___nitc__Parser___pop(var_p
);
1516 var_nodearraylist5
= var1
;
1518 var2
= nitc___nitc__Parser___pop(var_p
);
1520 var_nodearraylist4
= var2
;
1522 var3
= nitc___nitc__Parser___pop(var_p
);
1524 var_nodearraylist3
= var3
;
1526 var4
= nitc___nitc__Parser___pop(var_p
);
1528 var_nodearraylist2
= var4
;
1530 var5
= nitc___nitc__Parser___pop(var_p
);
1532 var_nodearraylist1
= var5
;
1533 var6
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
1535 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var6
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var6:AImplicitSelfExpr>*/
1537 var_pexprnode2
= var6
;
1538 var7
= NEW_core__Array(&type_core__Array__core__Object
);
1540 core___core__Array___core__kernel__Object__init(var7
); /* Direct call array$Array$init on <var7:Array[Object]>*/
1542 var_listnode6
= var7
;
1543 var_listnode5
= var_nodearraylist1
;
1544 /* <var_listnode5:nullable Object> isa Array[Object] */
1545 cltype
= type_core__Array__core__Object
.color
;
1546 idtype
= type_core__Array__core__Object
.id
;
1547 if(var_listnode5
== NULL
) {
1550 if(cltype
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
1553 var8
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype
] == idtype
;
1556 if (unlikely(!var8
)) {
1557 if(catchStack
.cursor
>= 0){
1558 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1560 PRINT_ERROR("Runtime error: %s", "Assert failed");
1561 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7280);
1565 var9
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
1567 var_listnode6
= var9
;
1568 var_tclassidnode7
= var_nodearraylist2
;
1569 /* <var_tclassidnode7:nullable Object> isa nullable TClassid */
1570 cltype11
= type_nullable__nitc__TClassid
.color
;
1571 idtype12
= type_nullable__nitc__TClassid
.id
;
1572 if(var_tclassidnode7
== NULL
) {
1575 if(cltype11
>= (((long)var_tclassidnode7
&3)?type_info
[((long)var_tclassidnode7
&3)]:var_tclassidnode7
->type
)->table_size
) {
1578 var10
= (((long)var_tclassidnode7
&3)?type_info
[((long)var_tclassidnode7
&3)]:var_tclassidnode7
->type
)->type_table
[cltype11
] == idtype12
;
1581 if (unlikely(!var10
)) {
1582 if(catchStack
.cursor
>= 0){
1583 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1585 PRINT_ERROR("Runtime error: %s", "Assert failed");
1586 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7283);
1589 var13
= NEW_nitc__AQualified(&type_nitc__AQualified
);
1591 nitc__parser_prod___AQualified___init_aqualified(var13
, var_listnode6
, var_tclassidnode7
); /* Direct call parser_prod$AQualified$init_aqualified on <var13:AQualified>*/
1593 var_pqualifiednode4
= var13
;
1594 var_tidnode8
= var_nodearraylist3
;
1595 /* <var_tidnode8:nullable Object> isa nullable TId */
1596 cltype15
= type_nullable__nitc__TId
.color
;
1597 idtype16
= type_nullable__nitc__TId
.id
;
1598 if(var_tidnode8
== NULL
) {
1601 if(cltype15
>= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->table_size
) {
1604 var14
= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->type_table
[cltype15
] == idtype16
;
1607 if (unlikely(!var14
)) {
1608 if(catchStack
.cursor
>= 0){
1609 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1611 PRINT_ERROR("Runtime error: %s", "Assert failed");
1612 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7289);
1615 var17
= NEW_nitc__AQid(&type_nitc__AQid
);
1617 nitc__parser_prod___AQid___init_aqid(var17
, var_pqualifiednode4
, var_tidnode8
); /* Direct call parser_prod$AQid$init_aqid on <var17:AQid>*/
1619 var_pqidnode3
= var17
;
1620 var_pexprsnode9
= var_nodearraylist4
;
1621 /* <var_pexprsnode9:nullable Object> isa nullable AExprs */
1622 cltype19
= type_nullable__nitc__AExprs
.color
;
1623 idtype20
= type_nullable__nitc__AExprs
.id
;
1624 if(var_pexprsnode9
== NULL
) {
1627 if(cltype19
>= (((long)var_pexprsnode9
&3)?type_info
[((long)var_pexprsnode9
&3)]:var_pexprsnode9
->type
)->table_size
) {
1630 var18
= (((long)var_pexprsnode9
&3)?type_info
[((long)var_pexprsnode9
&3)]:var_pexprsnode9
->type
)->type_table
[cltype19
] == idtype20
;
1633 if (unlikely(!var18
)) {
1634 if(catchStack
.cursor
>= 0){
1635 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1637 PRINT_ERROR("Runtime error: %s", "Assert failed");
1638 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7295);
1641 var_passignopnode10
= var_nodearraylist5
;
1642 /* <var_passignopnode10:nullable Object> isa nullable AAssignOp */
1643 cltype22
= type_nullable__nitc__AAssignOp
.color
;
1644 idtype23
= type_nullable__nitc__AAssignOp
.id
;
1645 if(var_passignopnode10
== NULL
) {
1648 if(cltype22
>= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->table_size
) {
1651 var21
= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->type_table
[cltype22
] == idtype23
;
1654 if (unlikely(!var21
)) {
1655 if(catchStack
.cursor
>= 0){
1656 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1658 PRINT_ERROR("Runtime error: %s", "Assert failed");
1659 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7297);
1662 var_pexprnode11
= var_nodearraylist6
;
1663 /* <var_pexprnode11:nullable Object> isa nullable AExpr */
1664 cltype25
= type_nullable__nitc__AExpr
.color
;
1665 idtype26
= type_nullable__nitc__AExpr
.id
;
1666 if(var_pexprnode11
== NULL
) {
1669 if(cltype25
>= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->table_size
) {
1672 var24
= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->type_table
[cltype25
] == idtype26
;
1675 if (unlikely(!var24
)) {
1676 if(catchStack
.cursor
>= 0){
1677 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1679 PRINT_ERROR("Runtime error: %s", "Assert failed");
1680 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7299);
1683 var27
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
1685 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var27
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode9
, var_passignopnode10
, var_pexprnode11
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var27:ACallReassignExpr>*/
1687 var_pexprnode1
= var27
;
1688 var_node_list
= var_pexprnode1
;
1689 var28
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction241> */
1691 var29
= nitc___nitc__Parser___go_to(var_p
, var28
);
1694 nitc___nitc__Parser___push(var_p
, var29
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
1698 /* method parser$ReduceAction242$action for (self: ReduceAction242, Parser) */
1699 void nitc__parser___nitc__parser__ReduceAction242___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1700 val
* var_p
/* var p: Parser */;
1701 val
* var_node_list
/* var node_list: nullable Object */;
1702 val
* var
/* : nullable Object */;
1703 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1704 val
* var1
/* : nullable Object */;
1705 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1706 val
* var2
/* : nullable Object */;
1707 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1708 val
* var3
/* : nullable Object */;
1709 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1710 val
* var4
/* : nullable Object */;
1711 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1712 val
* var5
/* : AImplicitSelfExpr */;
1713 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1714 val
* var6
/* : Array[Object] */;
1715 val
* var_listnode6
/* var listnode6: Array[Object] */;
1716 val
* var_listnode5
/* var listnode5: nullable Object */;
1717 short int var7
/* : Bool */;
1720 val
* var8
/* : Array[Object] */;
1721 val
* var_tclassidnode7
/* var tclassidnode7: nullable Object */;
1722 short int var9
/* : Bool */;
1725 val
* var12
/* : AQualified */;
1726 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
1727 val
* var_tidnode8
/* var tidnode8: nullable Object */;
1728 short int var13
/* : Bool */;
1731 val
* var16
/* : AQid */;
1732 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
1733 val
* var17
/* : Array[Object] */;
1734 val
* var_listnode10
/* var listnode10: Array[Object] */;
1735 val
* var18
/* : AListExprs */;
1736 val
* var_pexprsnode9
/* var pexprsnode9: nullable AListExprs */;
1737 val
* var_passignopnode11
/* var passignopnode11: nullable Object */;
1738 short int var19
/* : Bool */;
1741 val
* var_pexprnode12
/* var pexprnode12: nullable Object */;
1742 short int var22
/* : Bool */;
1745 val
* var25
/* : ACallReassignExpr */;
1746 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
1747 long var26
/* : Int */;
1748 long var27
/* : Int */;
1750 var_node_list
= ((val
*)NULL
);
1752 var
= nitc___nitc__Parser___pop(var_p
);
1754 var_nodearraylist5
= var
;
1756 var1
= nitc___nitc__Parser___pop(var_p
);
1758 var_nodearraylist4
= var1
;
1760 var2
= nitc___nitc__Parser___pop(var_p
);
1762 var_nodearraylist3
= var2
;
1764 var3
= nitc___nitc__Parser___pop(var_p
);
1766 var_nodearraylist2
= var3
;
1768 var4
= nitc___nitc__Parser___pop(var_p
);
1770 var_nodearraylist1
= var4
;
1771 var5
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
1773 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var5
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/
1775 var_pexprnode2
= var5
;
1776 var6
= NEW_core__Array(&type_core__Array__core__Object
);
1778 core___core__Array___core__kernel__Object__init(var6
); /* Direct call array$Array$init on <var6:Array[Object]>*/
1780 var_listnode6
= var6
;
1781 var_listnode5
= var_nodearraylist1
;
1782 /* <var_listnode5:nullable Object> isa Array[Object] */
1783 cltype
= type_core__Array__core__Object
.color
;
1784 idtype
= type_core__Array__core__Object
.id
;
1785 if(var_listnode5
== NULL
) {
1788 if(cltype
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
1791 var7
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype
] == idtype
;
1794 if (unlikely(!var7
)) {
1795 if(catchStack
.cursor
>= 0){
1796 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1798 PRINT_ERROR("Runtime error: %s", "Assert failed");
1799 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7324);
1803 var8
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
1805 var_listnode6
= var8
;
1806 var_tclassidnode7
= var_nodearraylist2
;
1807 /* <var_tclassidnode7:nullable Object> isa nullable TClassid */
1808 cltype10
= type_nullable__nitc__TClassid
.color
;
1809 idtype11
= type_nullable__nitc__TClassid
.id
;
1810 if(var_tclassidnode7
== NULL
) {
1813 if(cltype10
>= (((long)var_tclassidnode7
&3)?type_info
[((long)var_tclassidnode7
&3)]:var_tclassidnode7
->type
)->table_size
) {
1816 var9
= (((long)var_tclassidnode7
&3)?type_info
[((long)var_tclassidnode7
&3)]:var_tclassidnode7
->type
)->type_table
[cltype10
] == idtype11
;
1819 if (unlikely(!var9
)) {
1820 if(catchStack
.cursor
>= 0){
1821 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1823 PRINT_ERROR("Runtime error: %s", "Assert failed");
1824 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7327);
1827 var12
= NEW_nitc__AQualified(&type_nitc__AQualified
);
1829 nitc__parser_prod___AQualified___init_aqualified(var12
, var_listnode6
, var_tclassidnode7
); /* Direct call parser_prod$AQualified$init_aqualified on <var12:AQualified>*/
1831 var_pqualifiednode4
= var12
;
1832 var_tidnode8
= var_nodearraylist3
;
1833 /* <var_tidnode8:nullable Object> isa nullable TId */
1834 cltype14
= type_nullable__nitc__TId
.color
;
1835 idtype15
= type_nullable__nitc__TId
.id
;
1836 if(var_tidnode8
== NULL
) {
1839 if(cltype14
>= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->table_size
) {
1842 var13
= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->type_table
[cltype14
] == idtype15
;
1845 if (unlikely(!var13
)) {
1846 if(catchStack
.cursor
>= 0){
1847 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1849 PRINT_ERROR("Runtime error: %s", "Assert failed");
1850 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7333);
1853 var16
= NEW_nitc__AQid(&type_nitc__AQid
);
1855 nitc__parser_prod___AQid___init_aqid(var16
, var_pqualifiednode4
, var_tidnode8
); /* Direct call parser_prod$AQid$init_aqid on <var16:AQid>*/
1857 var_pqidnode3
= var16
;
1858 var17
= NEW_core__Array(&type_core__Array__core__Object
);
1860 core___core__Array___core__kernel__Object__init(var17
); /* Direct call array$Array$init on <var17:Array[Object]>*/
1862 var_listnode10
= var17
;
1863 var18
= NEW_nitc__AListExprs(&type_nitc__AListExprs
);
1865 nitc__parser_prod___AListExprs___init_alistexprs(var18
, var_listnode10
); /* Direct call parser_prod$AListExprs$init_alistexprs on <var18:AListExprs>*/
1867 var_pexprsnode9
= var18
;
1868 var_passignopnode11
= var_nodearraylist4
;
1869 /* <var_passignopnode11:nullable Object> isa nullable AAssignOp */
1870 cltype20
= type_nullable__nitc__AAssignOp
.color
;
1871 idtype21
= type_nullable__nitc__AAssignOp
.id
;
1872 if(var_passignopnode11
== NULL
) {
1875 if(cltype20
>= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->table_size
) {
1878 var19
= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->type_table
[cltype20
] == idtype21
;
1881 if (unlikely(!var19
)) {
1882 if(catchStack
.cursor
>= 0){
1883 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1885 PRINT_ERROR("Runtime error: %s", "Assert failed");
1886 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7343);
1889 var_pexprnode12
= var_nodearraylist5
;
1890 /* <var_pexprnode12:nullable Object> isa nullable AExpr */
1891 cltype23
= type_nullable__nitc__AExpr
.color
;
1892 idtype24
= type_nullable__nitc__AExpr
.id
;
1893 if(var_pexprnode12
== NULL
) {
1896 if(cltype23
>= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->table_size
) {
1899 var22
= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->type_table
[cltype23
] == idtype24
;
1902 if (unlikely(!var22
)) {
1903 if(catchStack
.cursor
>= 0){
1904 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1906 PRINT_ERROR("Runtime error: %s", "Assert failed");
1907 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7345);
1910 var25
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
1912 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var25
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode9
, var_passignopnode11
, var_pexprnode12
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var25:ACallReassignExpr>*/
1914 var_pexprnode1
= var25
;
1915 var_node_list
= var_pexprnode1
;
1916 var26
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction242> */
1918 var27
= nitc___nitc__Parser___go_to(var_p
, var26
);
1921 nitc___nitc__Parser___push(var_p
, var27
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
1925 /* method parser$ReduceAction243$action for (self: ReduceAction243, Parser) */
1926 void nitc__parser___nitc__parser__ReduceAction243___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
1927 val
* var_p
/* var p: Parser */;
1928 val
* var_node_list
/* var node_list: nullable Object */;
1929 val
* var
/* : nullable Object */;
1930 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
1931 val
* var1
/* : nullable Object */;
1932 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
1933 val
* var2
/* : nullable Object */;
1934 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
1935 val
* var3
/* : nullable Object */;
1936 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
1937 val
* var4
/* : nullable Object */;
1938 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
1939 val
* var5
/* : AImplicitSelfExpr */;
1940 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
1941 val
* var6
/* : Array[Object] */;
1942 val
* var_listnode6
/* var listnode6: Array[Object] */;
1943 val
* var_listnode5
/* var listnode5: nullable Object */;
1944 short int var7
/* : Bool */;
1947 val
* var8
/* : Array[Object] */;
1948 val
* var9
/* : AQualified */;
1949 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
1950 val
* var_tidnode8
/* var tidnode8: nullable Object */;
1951 short int var10
/* : Bool */;
1954 val
* var13
/* : AQid */;
1955 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
1956 val
* var_pexprsnode9
/* var pexprsnode9: nullable Object */;
1957 short int var14
/* : Bool */;
1960 val
* var_passignopnode10
/* var passignopnode10: nullable Object */;
1961 short int var17
/* : Bool */;
1964 val
* var_pexprnode11
/* var pexprnode11: nullable Object */;
1965 short int var20
/* : Bool */;
1968 val
* var23
/* : ACallReassignExpr */;
1969 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
1970 long var24
/* : Int */;
1971 long var25
/* : Int */;
1973 var_node_list
= ((val
*)NULL
);
1975 var
= nitc___nitc__Parser___pop(var_p
);
1977 var_nodearraylist5
= var
;
1979 var1
= nitc___nitc__Parser___pop(var_p
);
1981 var_nodearraylist4
= var1
;
1983 var2
= nitc___nitc__Parser___pop(var_p
);
1985 var_nodearraylist3
= var2
;
1987 var3
= nitc___nitc__Parser___pop(var_p
);
1989 var_nodearraylist2
= var3
;
1991 var4
= nitc___nitc__Parser___pop(var_p
);
1993 var_nodearraylist1
= var4
;
1994 var5
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
1996 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var5
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var5:AImplicitSelfExpr>*/
1998 var_pexprnode2
= var5
;
1999 var6
= NEW_core__Array(&type_core__Array__core__Object
);
2001 core___core__Array___core__kernel__Object__init(var6
); /* Direct call array$Array$init on <var6:Array[Object]>*/
2003 var_listnode6
= var6
;
2004 var_listnode5
= var_nodearraylist1
;
2005 /* <var_listnode5:nullable Object> isa Array[Object] */
2006 cltype
= type_core__Array__core__Object
.color
;
2007 idtype
= type_core__Array__core__Object
.id
;
2008 if(var_listnode5
== NULL
) {
2011 if(cltype
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
2014 var7
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype
] == idtype
;
2017 if (unlikely(!var7
)) {
2018 if(catchStack
.cursor
>= 0){
2019 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2021 PRINT_ERROR("Runtime error: %s", "Assert failed");
2022 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7370);
2026 var8
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
2028 var_listnode6
= var8
;
2029 var9
= NEW_nitc__AQualified(&type_nitc__AQualified
);
2031 nitc__parser_prod___AQualified___init_aqualified(var9
, var_listnode6
, ((val
*)NULL
)); /* Direct call parser_prod$AQualified$init_aqualified on <var9:AQualified>*/
2033 var_pqualifiednode4
= var9
;
2034 var_tidnode8
= var_nodearraylist2
;
2035 /* <var_tidnode8:nullable Object> isa nullable TId */
2036 cltype11
= type_nullable__nitc__TId
.color
;
2037 idtype12
= type_nullable__nitc__TId
.id
;
2038 if(var_tidnode8
== NULL
) {
2041 if(cltype11
>= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->table_size
) {
2044 var10
= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->type_table
[cltype11
] == idtype12
;
2047 if (unlikely(!var10
)) {
2048 if(catchStack
.cursor
>= 0){
2049 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2051 PRINT_ERROR("Runtime error: %s", "Assert failed");
2052 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7377);
2055 var13
= NEW_nitc__AQid(&type_nitc__AQid
);
2057 nitc__parser_prod___AQid___init_aqid(var13
, var_pqualifiednode4
, var_tidnode8
); /* Direct call parser_prod$AQid$init_aqid on <var13:AQid>*/
2059 var_pqidnode3
= var13
;
2060 var_pexprsnode9
= var_nodearraylist3
;
2061 /* <var_pexprsnode9:nullable Object> isa nullable AExprs */
2062 cltype15
= type_nullable__nitc__AExprs
.color
;
2063 idtype16
= type_nullable__nitc__AExprs
.id
;
2064 if(var_pexprsnode9
== NULL
) {
2067 if(cltype15
>= (((long)var_pexprsnode9
&3)?type_info
[((long)var_pexprsnode9
&3)]:var_pexprsnode9
->type
)->table_size
) {
2070 var14
= (((long)var_pexprsnode9
&3)?type_info
[((long)var_pexprsnode9
&3)]:var_pexprsnode9
->type
)->type_table
[cltype15
] == idtype16
;
2073 if (unlikely(!var14
)) {
2074 if(catchStack
.cursor
>= 0){
2075 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2077 PRINT_ERROR("Runtime error: %s", "Assert failed");
2078 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7383);
2081 var_passignopnode10
= var_nodearraylist4
;
2082 /* <var_passignopnode10:nullable Object> isa nullable AAssignOp */
2083 cltype18
= type_nullable__nitc__AAssignOp
.color
;
2084 idtype19
= type_nullable__nitc__AAssignOp
.id
;
2085 if(var_passignopnode10
== NULL
) {
2088 if(cltype18
>= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->table_size
) {
2091 var17
= (((long)var_passignopnode10
&3)?type_info
[((long)var_passignopnode10
&3)]:var_passignopnode10
->type
)->type_table
[cltype18
] == idtype19
;
2094 if (unlikely(!var17
)) {
2095 if(catchStack
.cursor
>= 0){
2096 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2098 PRINT_ERROR("Runtime error: %s", "Assert failed");
2099 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7385);
2102 var_pexprnode11
= var_nodearraylist5
;
2103 /* <var_pexprnode11:nullable Object> isa nullable AExpr */
2104 cltype21
= type_nullable__nitc__AExpr
.color
;
2105 idtype22
= type_nullable__nitc__AExpr
.id
;
2106 if(var_pexprnode11
== NULL
) {
2109 if(cltype21
>= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->table_size
) {
2112 var20
= (((long)var_pexprnode11
&3)?type_info
[((long)var_pexprnode11
&3)]:var_pexprnode11
->type
)->type_table
[cltype21
] == idtype22
;
2115 if (unlikely(!var20
)) {
2116 if(catchStack
.cursor
>= 0){
2117 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2119 PRINT_ERROR("Runtime error: %s", "Assert failed");
2120 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7387);
2123 var23
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
2125 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var23
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode9
, var_passignopnode10
, var_pexprnode11
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var23:ACallReassignExpr>*/
2127 var_pexprnode1
= var23
;
2128 var_node_list
= var_pexprnode1
;
2129 var24
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction243> */
2131 var25
= nitc___nitc__Parser___go_to(var_p
, var24
);
2134 nitc___nitc__Parser___push(var_p
, var25
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2138 /* method parser$ReduceAction244$action for (self: ReduceAction244, Parser) */
2139 void nitc__parser___nitc__parser__ReduceAction244___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2140 val
* var_p
/* var p: Parser */;
2141 val
* var_node_list
/* var node_list: nullable Object */;
2142 val
* var
/* : nullable Object */;
2143 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2144 val
* var1
/* : nullable Object */;
2145 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2146 val
* var2
/* : nullable Object */;
2147 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2148 val
* var3
/* : nullable Object */;
2149 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2150 val
* var4
/* : AImplicitSelfExpr */;
2151 val
* var_pexprnode2
/* var pexprnode2: nullable AImplicitSelfExpr */;
2152 val
* var5
/* : Array[Object] */;
2153 val
* var_listnode6
/* var listnode6: Array[Object] */;
2154 val
* var_listnode5
/* var listnode5: nullable Object */;
2155 short int var6
/* : Bool */;
2158 val
* var7
/* : Array[Object] */;
2159 val
* var8
/* : AQualified */;
2160 val
* var_pqualifiednode4
/* var pqualifiednode4: nullable AQualified */;
2161 val
* var_tidnode8
/* var tidnode8: nullable Object */;
2162 short int var9
/* : Bool */;
2165 val
* var12
/* : AQid */;
2166 val
* var_pqidnode3
/* var pqidnode3: nullable AQid */;
2167 val
* var13
/* : Array[Object] */;
2168 val
* var_listnode10
/* var listnode10: Array[Object] */;
2169 val
* var14
/* : AListExprs */;
2170 val
* var_pexprsnode9
/* var pexprsnode9: nullable AListExprs */;
2171 val
* var_passignopnode11
/* var passignopnode11: nullable Object */;
2172 short int var15
/* : Bool */;
2175 val
* var_pexprnode12
/* var pexprnode12: nullable Object */;
2176 short int var18
/* : Bool */;
2179 val
* var21
/* : ACallReassignExpr */;
2180 val
* var_pexprnode1
/* var pexprnode1: nullable ACallReassignExpr */;
2181 long var22
/* : Int */;
2182 long var23
/* : Int */;
2184 var_node_list
= ((val
*)NULL
);
2186 var
= nitc___nitc__Parser___pop(var_p
);
2188 var_nodearraylist4
= var
;
2190 var1
= nitc___nitc__Parser___pop(var_p
);
2192 var_nodearraylist3
= var1
;
2194 var2
= nitc___nitc__Parser___pop(var_p
);
2196 var_nodearraylist2
= var2
;
2198 var3
= nitc___nitc__Parser___pop(var_p
);
2200 var_nodearraylist1
= var3
;
2201 var4
= NEW_nitc__AImplicitSelfExpr(&type_nitc__AImplicitSelfExpr
);
2203 nitc__parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(var4
); /* Direct call parser_prod$AImplicitSelfExpr$init_aimplicitselfexpr on <var4:AImplicitSelfExpr>*/
2205 var_pexprnode2
= var4
;
2206 var5
= NEW_core__Array(&type_core__Array__core__Object
);
2208 core___core__Array___core__kernel__Object__init(var5
); /* Direct call array$Array$init on <var5:Array[Object]>*/
2210 var_listnode6
= var5
;
2211 var_listnode5
= var_nodearraylist1
;
2212 /* <var_listnode5:nullable Object> isa Array[Object] */
2213 cltype
= type_core__Array__core__Object
.color
;
2214 idtype
= type_core__Array__core__Object
.id
;
2215 if(var_listnode5
== NULL
) {
2218 if(cltype
>= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->table_size
) {
2221 var6
= (((long)var_listnode5
&3)?type_info
[((long)var_listnode5
&3)]:var_listnode5
->type
)->type_table
[cltype
] == idtype
;
2224 if (unlikely(!var6
)) {
2225 if(catchStack
.cursor
>= 0){
2226 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2228 PRINT_ERROR("Runtime error: %s", "Assert failed");
2229 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7411);
2233 var7
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode6
, var_listnode5
);
2235 var_listnode6
= var7
;
2236 var8
= NEW_nitc__AQualified(&type_nitc__AQualified
);
2238 nitc__parser_prod___AQualified___init_aqualified(var8
, var_listnode6
, ((val
*)NULL
)); /* Direct call parser_prod$AQualified$init_aqualified on <var8:AQualified>*/
2240 var_pqualifiednode4
= var8
;
2241 var_tidnode8
= var_nodearraylist2
;
2242 /* <var_tidnode8:nullable Object> isa nullable TId */
2243 cltype10
= type_nullable__nitc__TId
.color
;
2244 idtype11
= type_nullable__nitc__TId
.id
;
2245 if(var_tidnode8
== NULL
) {
2248 if(cltype10
>= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->table_size
) {
2251 var9
= (((long)var_tidnode8
&3)?type_info
[((long)var_tidnode8
&3)]:var_tidnode8
->type
)->type_table
[cltype10
] == idtype11
;
2254 if (unlikely(!var9
)) {
2255 if(catchStack
.cursor
>= 0){
2256 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2258 PRINT_ERROR("Runtime error: %s", "Assert failed");
2259 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7418);
2262 var12
= NEW_nitc__AQid(&type_nitc__AQid
);
2264 nitc__parser_prod___AQid___init_aqid(var12
, var_pqualifiednode4
, var_tidnode8
); /* Direct call parser_prod$AQid$init_aqid on <var12:AQid>*/
2266 var_pqidnode3
= var12
;
2267 var13
= NEW_core__Array(&type_core__Array__core__Object
);
2269 core___core__Array___core__kernel__Object__init(var13
); /* Direct call array$Array$init on <var13:Array[Object]>*/
2271 var_listnode10
= var13
;
2272 var14
= NEW_nitc__AListExprs(&type_nitc__AListExprs
);
2274 nitc__parser_prod___AListExprs___init_alistexprs(var14
, var_listnode10
); /* Direct call parser_prod$AListExprs$init_alistexprs on <var14:AListExprs>*/
2276 var_pexprsnode9
= var14
;
2277 var_passignopnode11
= var_nodearraylist3
;
2278 /* <var_passignopnode11:nullable Object> isa nullable AAssignOp */
2279 cltype16
= type_nullable__nitc__AAssignOp
.color
;
2280 idtype17
= type_nullable__nitc__AAssignOp
.id
;
2281 if(var_passignopnode11
== NULL
) {
2284 if(cltype16
>= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->table_size
) {
2287 var15
= (((long)var_passignopnode11
&3)?type_info
[((long)var_passignopnode11
&3)]:var_passignopnode11
->type
)->type_table
[cltype16
] == idtype17
;
2290 if (unlikely(!var15
)) {
2291 if(catchStack
.cursor
>= 0){
2292 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2294 PRINT_ERROR("Runtime error: %s", "Assert failed");
2295 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7428);
2298 var_pexprnode12
= var_nodearraylist4
;
2299 /* <var_pexprnode12:nullable Object> isa nullable AExpr */
2300 cltype19
= type_nullable__nitc__AExpr
.color
;
2301 idtype20
= type_nullable__nitc__AExpr
.id
;
2302 if(var_pexprnode12
== NULL
) {
2305 if(cltype19
>= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->table_size
) {
2308 var18
= (((long)var_pexprnode12
&3)?type_info
[((long)var_pexprnode12
&3)]:var_pexprnode12
->type
)->type_table
[cltype19
] == idtype20
;
2311 if (unlikely(!var18
)) {
2312 if(catchStack
.cursor
>= 0){
2313 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2315 PRINT_ERROR("Runtime error: %s", "Assert failed");
2316 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7430);
2319 var21
= NEW_nitc__ACallReassignExpr(&type_nitc__ACallReassignExpr
);
2321 nitc__parser_prod___ACallReassignExpr___init_acallreassignexpr(var21
, var_pexprnode2
, var_pqidnode3
, var_pexprsnode9
, var_passignopnode11
, var_pexprnode12
); /* Direct call parser_prod$ACallReassignExpr$init_acallreassignexpr on <var21:ACallReassignExpr>*/
2323 var_pexprnode1
= var21
;
2324 var_node_list
= var_pexprnode1
;
2325 var22
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction244> */
2327 var23
= nitc___nitc__Parser___go_to(var_p
, var22
);
2330 nitc___nitc__Parser___push(var_p
, var23
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2334 /* method parser$ReduceAction245$action for (self: ReduceAction245, Parser) */
2335 void nitc__parser___nitc__parser__ReduceAction245___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2336 val
* var_p
/* var p: Parser */;
2337 val
* var_node_list
/* var node_list: nullable Object */;
2338 val
* var
/* : nullable Object */;
2339 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
2340 val
* var1
/* : nullable Object */;
2341 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
2342 val
* var2
/* : nullable Object */;
2343 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
2344 val
* var3
/* : nullable Object */;
2345 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2346 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
2347 short int var4
/* : Bool */;
2350 val
* var_pexprsnode3
/* var pexprsnode3: nullable Object */;
2351 short int var5
/* : Bool */;
2354 val
* var_passignopnode4
/* var passignopnode4: nullable Object */;
2355 short int var8
/* : Bool */;
2358 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
2359 short int var11
/* : Bool */;
2362 val
* var14
/* : ABraReassignExpr */;
2363 val
* var_pexprnode1
/* var pexprnode1: nullable ABraReassignExpr */;
2364 long var15
/* : Int */;
2365 long var16
/* : Int */;
2367 var_node_list
= ((val
*)NULL
);
2369 var
= nitc___nitc__Parser___pop(var_p
);
2371 var_nodearraylist4
= var
;
2373 var1
= nitc___nitc__Parser___pop(var_p
);
2375 var_nodearraylist3
= var1
;
2377 var2
= nitc___nitc__Parser___pop(var_p
);
2379 var_nodearraylist2
= var2
;
2381 var3
= nitc___nitc__Parser___pop(var_p
);
2383 var_nodearraylist1
= var3
;
2384 var_pexprnode2
= var_nodearraylist1
;
2385 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
2386 cltype
= type_nullable__nitc__AExpr
.color
;
2387 idtype
= type_nullable__nitc__AExpr
.id
;
2388 if(var_pexprnode2
== NULL
) {
2391 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
2394 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
2397 if (unlikely(!var4
)) {
2398 if(catchStack
.cursor
>= 0){
2399 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2401 PRINT_ERROR("Runtime error: %s", "Assert failed");
2402 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7452);
2405 var_pexprsnode3
= var_nodearraylist2
;
2406 /* <var_pexprsnode3:nullable Object> isa nullable AExprs */
2407 cltype6
= type_nullable__nitc__AExprs
.color
;
2408 idtype7
= type_nullable__nitc__AExprs
.id
;
2409 if(var_pexprsnode3
== NULL
) {
2412 if(cltype6
>= (((long)var_pexprsnode3
&3)?type_info
[((long)var_pexprsnode3
&3)]:var_pexprsnode3
->type
)->table_size
) {
2415 var5
= (((long)var_pexprsnode3
&3)?type_info
[((long)var_pexprsnode3
&3)]:var_pexprsnode3
->type
)->type_table
[cltype6
] == idtype7
;
2418 if (unlikely(!var5
)) {
2419 if(catchStack
.cursor
>= 0){
2420 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2422 PRINT_ERROR("Runtime error: %s", "Assert failed");
2423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7454);
2426 var_passignopnode4
= var_nodearraylist3
;
2427 /* <var_passignopnode4:nullable Object> isa nullable AAssignOp */
2428 cltype9
= type_nullable__nitc__AAssignOp
.color
;
2429 idtype10
= type_nullable__nitc__AAssignOp
.id
;
2430 if(var_passignopnode4
== NULL
) {
2433 if(cltype9
>= (((long)var_passignopnode4
&3)?type_info
[((long)var_passignopnode4
&3)]:var_passignopnode4
->type
)->table_size
) {
2436 var8
= (((long)var_passignopnode4
&3)?type_info
[((long)var_passignopnode4
&3)]:var_passignopnode4
->type
)->type_table
[cltype9
] == idtype10
;
2439 if (unlikely(!var8
)) {
2440 if(catchStack
.cursor
>= 0){
2441 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2443 PRINT_ERROR("Runtime error: %s", "Assert failed");
2444 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7456);
2447 var_pexprnode5
= var_nodearraylist4
;
2448 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
2449 cltype12
= type_nullable__nitc__AExpr
.color
;
2450 idtype13
= type_nullable__nitc__AExpr
.id
;
2451 if(var_pexprnode5
== NULL
) {
2454 if(cltype12
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
2457 var11
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype12
] == idtype13
;
2460 if (unlikely(!var11
)) {
2461 if(catchStack
.cursor
>= 0){
2462 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2464 PRINT_ERROR("Runtime error: %s", "Assert failed");
2465 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7458);
2468 var14
= NEW_nitc__ABraReassignExpr(&type_nitc__ABraReassignExpr
);
2470 nitc__parser_prod___ABraReassignExpr___init_abrareassignexpr(var14
, var_pexprnode2
, var_pexprsnode3
, var_passignopnode4
, var_pexprnode5
); /* Direct call parser_prod$ABraReassignExpr$init_abrareassignexpr on <var14:ABraReassignExpr>*/
2472 var_pexprnode1
= var14
;
2473 var_node_list
= var_pexprnode1
;
2474 var15
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction245> */
2476 var16
= nitc___nitc__Parser___go_to(var_p
, var15
);
2479 nitc___nitc__Parser___push(var_p
, var16
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2483 /* method parser$ReduceAction246$action for (self: ReduceAction246, Parser) */
2484 void nitc__parser___nitc__parser__ReduceAction246___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2485 val
* var_p
/* var p: Parser */;
2486 val
* var_node_list
/* var node_list: nullable Object */;
2487 val
* var
/* : nullable Object */;
2488 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2489 val
* var_tpluseqnode2
/* var tpluseqnode2: nullable Object */;
2490 short int var1
/* : Bool */;
2493 val
* var2
/* : APlusAssignOp */;
2494 val
* var_passignopnode1
/* var passignopnode1: nullable APlusAssignOp */;
2495 long var3
/* : Int */;
2496 long var4
/* : Int */;
2498 var_node_list
= ((val
*)NULL
);
2500 var
= nitc___nitc__Parser___pop(var_p
);
2502 var_nodearraylist1
= var
;
2503 var_tpluseqnode2
= var_nodearraylist1
;
2504 /* <var_tpluseqnode2:nullable Object> isa nullable TPluseq */
2505 cltype
= type_nullable__nitc__TPluseq
.color
;
2506 idtype
= type_nullable__nitc__TPluseq
.id
;
2507 if(var_tpluseqnode2
== NULL
) {
2510 if(cltype
>= (((long)var_tpluseqnode2
&3)?type_info
[((long)var_tpluseqnode2
&3)]:var_tpluseqnode2
->type
)->table_size
) {
2513 var1
= (((long)var_tpluseqnode2
&3)?type_info
[((long)var_tpluseqnode2
&3)]:var_tpluseqnode2
->type
)->type_table
[cltype
] == idtype
;
2516 if (unlikely(!var1
)) {
2517 if(catchStack
.cursor
>= 0){
2518 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2520 PRINT_ERROR("Runtime error: %s", "Assert failed");
2521 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7476);
2524 var2
= NEW_nitc__APlusAssignOp(&type_nitc__APlusAssignOp
);
2526 nitc__parser_prod___APlusAssignOp___init_aplusassignop(var2
, var_tpluseqnode2
); /* Direct call parser_prod$APlusAssignOp$init_aplusassignop on <var2:APlusAssignOp>*/
2528 var_passignopnode1
= var2
;
2529 var_node_list
= var_passignopnode1
;
2530 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction246> */
2532 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2535 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2539 /* method parser$ReduceAction247$action for (self: ReduceAction247, Parser) */
2540 void nitc__parser___nitc__parser__ReduceAction247___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2541 val
* var_p
/* var p: Parser */;
2542 val
* var_node_list
/* var node_list: nullable Object */;
2543 val
* var
/* : nullable Object */;
2544 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2545 val
* var_tminuseqnode2
/* var tminuseqnode2: nullable Object */;
2546 short int var1
/* : Bool */;
2549 val
* var2
/* : AMinusAssignOp */;
2550 val
* var_passignopnode1
/* var passignopnode1: nullable AMinusAssignOp */;
2551 long var3
/* : Int */;
2552 long var4
/* : Int */;
2554 var_node_list
= ((val
*)NULL
);
2556 var
= nitc___nitc__Parser___pop(var_p
);
2558 var_nodearraylist1
= var
;
2559 var_tminuseqnode2
= var_nodearraylist1
;
2560 /* <var_tminuseqnode2:nullable Object> isa nullable TMinuseq */
2561 cltype
= type_nullable__nitc__TMinuseq
.color
;
2562 idtype
= type_nullable__nitc__TMinuseq
.id
;
2563 if(var_tminuseqnode2
== NULL
) {
2566 if(cltype
>= (((long)var_tminuseqnode2
&3)?type_info
[((long)var_tminuseqnode2
&3)]:var_tminuseqnode2
->type
)->table_size
) {
2569 var1
= (((long)var_tminuseqnode2
&3)?type_info
[((long)var_tminuseqnode2
&3)]:var_tminuseqnode2
->type
)->type_table
[cltype
] == idtype
;
2572 if (unlikely(!var1
)) {
2573 if(catchStack
.cursor
>= 0){
2574 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2576 PRINT_ERROR("Runtime error: %s", "Assert failed");
2577 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7491);
2580 var2
= NEW_nitc__AMinusAssignOp(&type_nitc__AMinusAssignOp
);
2582 nitc__parser_prod___AMinusAssignOp___init_aminusassignop(var2
, var_tminuseqnode2
); /* Direct call parser_prod$AMinusAssignOp$init_aminusassignop on <var2:AMinusAssignOp>*/
2584 var_passignopnode1
= var2
;
2585 var_node_list
= var_passignopnode1
;
2586 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction247> */
2588 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2591 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2595 /* method parser$ReduceAction248$action for (self: ReduceAction248, Parser) */
2596 void nitc__parser___nitc__parser__ReduceAction248___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2597 val
* var_p
/* var p: Parser */;
2598 val
* var_node_list
/* var node_list: nullable Object */;
2599 val
* var
/* : nullable Object */;
2600 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2601 val
* var_tstareqnode2
/* var tstareqnode2: nullable Object */;
2602 short int var1
/* : Bool */;
2605 val
* var2
/* : AStarAssignOp */;
2606 val
* var_passignopnode1
/* var passignopnode1: nullable AStarAssignOp */;
2607 long var3
/* : Int */;
2608 long var4
/* : Int */;
2610 var_node_list
= ((val
*)NULL
);
2612 var
= nitc___nitc__Parser___pop(var_p
);
2614 var_nodearraylist1
= var
;
2615 var_tstareqnode2
= var_nodearraylist1
;
2616 /* <var_tstareqnode2:nullable Object> isa nullable TStareq */
2617 cltype
= type_nullable__nitc__TStareq
.color
;
2618 idtype
= type_nullable__nitc__TStareq
.id
;
2619 if(var_tstareqnode2
== NULL
) {
2622 if(cltype
>= (((long)var_tstareqnode2
&3)?type_info
[((long)var_tstareqnode2
&3)]:var_tstareqnode2
->type
)->table_size
) {
2625 var1
= (((long)var_tstareqnode2
&3)?type_info
[((long)var_tstareqnode2
&3)]:var_tstareqnode2
->type
)->type_table
[cltype
] == idtype
;
2628 if (unlikely(!var1
)) {
2629 if(catchStack
.cursor
>= 0){
2630 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2632 PRINT_ERROR("Runtime error: %s", "Assert failed");
2633 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7506);
2636 var2
= NEW_nitc__AStarAssignOp(&type_nitc__AStarAssignOp
);
2638 nitc__parser_prod___AStarAssignOp___init_astarassignop(var2
, var_tstareqnode2
); /* Direct call parser_prod$AStarAssignOp$init_astarassignop on <var2:AStarAssignOp>*/
2640 var_passignopnode1
= var2
;
2641 var_node_list
= var_passignopnode1
;
2642 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction248> */
2644 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2647 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2651 /* method parser$ReduceAction249$action for (self: ReduceAction249, Parser) */
2652 void nitc__parser___nitc__parser__ReduceAction249___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2653 val
* var_p
/* var p: Parser */;
2654 val
* var_node_list
/* var node_list: nullable Object */;
2655 val
* var
/* : nullable Object */;
2656 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2657 val
* var_tslasheqnode2
/* var tslasheqnode2: nullable Object */;
2658 short int var1
/* : Bool */;
2661 val
* var2
/* : ASlashAssignOp */;
2662 val
* var_passignopnode1
/* var passignopnode1: nullable ASlashAssignOp */;
2663 long var3
/* : Int */;
2664 long var4
/* : Int */;
2666 var_node_list
= ((val
*)NULL
);
2668 var
= nitc___nitc__Parser___pop(var_p
);
2670 var_nodearraylist1
= var
;
2671 var_tslasheqnode2
= var_nodearraylist1
;
2672 /* <var_tslasheqnode2:nullable Object> isa nullable TSlasheq */
2673 cltype
= type_nullable__nitc__TSlasheq
.color
;
2674 idtype
= type_nullable__nitc__TSlasheq
.id
;
2675 if(var_tslasheqnode2
== NULL
) {
2678 if(cltype
>= (((long)var_tslasheqnode2
&3)?type_info
[((long)var_tslasheqnode2
&3)]:var_tslasheqnode2
->type
)->table_size
) {
2681 var1
= (((long)var_tslasheqnode2
&3)?type_info
[((long)var_tslasheqnode2
&3)]:var_tslasheqnode2
->type
)->type_table
[cltype
] == idtype
;
2684 if (unlikely(!var1
)) {
2685 if(catchStack
.cursor
>= 0){
2686 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2688 PRINT_ERROR("Runtime error: %s", "Assert failed");
2689 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7521);
2692 var2
= NEW_nitc__ASlashAssignOp(&type_nitc__ASlashAssignOp
);
2694 nitc__parser_prod___ASlashAssignOp___init_aslashassignop(var2
, var_tslasheqnode2
); /* Direct call parser_prod$ASlashAssignOp$init_aslashassignop on <var2:ASlashAssignOp>*/
2696 var_passignopnode1
= var2
;
2697 var_node_list
= var_passignopnode1
;
2698 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction249> */
2700 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2703 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2707 /* method parser$ReduceAction250$action for (self: ReduceAction250, Parser) */
2708 void nitc__parser___nitc__parser__ReduceAction250___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2709 val
* var_p
/* var p: Parser */;
2710 val
* var_node_list
/* var node_list: nullable Object */;
2711 val
* var
/* : nullable Object */;
2712 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2713 val
* var_tpercenteqnode2
/* var tpercenteqnode2: nullable Object */;
2714 short int var1
/* : Bool */;
2717 val
* var2
/* : APercentAssignOp */;
2718 val
* var_passignopnode1
/* var passignopnode1: nullable APercentAssignOp */;
2719 long var3
/* : Int */;
2720 long var4
/* : Int */;
2722 var_node_list
= ((val
*)NULL
);
2724 var
= nitc___nitc__Parser___pop(var_p
);
2726 var_nodearraylist1
= var
;
2727 var_tpercenteqnode2
= var_nodearraylist1
;
2728 /* <var_tpercenteqnode2:nullable Object> isa nullable TPercenteq */
2729 cltype
= type_nullable__nitc__TPercenteq
.color
;
2730 idtype
= type_nullable__nitc__TPercenteq
.id
;
2731 if(var_tpercenteqnode2
== NULL
) {
2734 if(cltype
>= (((long)var_tpercenteqnode2
&3)?type_info
[((long)var_tpercenteqnode2
&3)]:var_tpercenteqnode2
->type
)->table_size
) {
2737 var1
= (((long)var_tpercenteqnode2
&3)?type_info
[((long)var_tpercenteqnode2
&3)]:var_tpercenteqnode2
->type
)->type_table
[cltype
] == idtype
;
2740 if (unlikely(!var1
)) {
2741 if(catchStack
.cursor
>= 0){
2742 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2744 PRINT_ERROR("Runtime error: %s", "Assert failed");
2745 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7536);
2748 var2
= NEW_nitc__APercentAssignOp(&type_nitc__APercentAssignOp
);
2750 nitc__parser_prod___APercentAssignOp___init_apercentassignop(var2
, var_tpercenteqnode2
); /* Direct call parser_prod$APercentAssignOp$init_apercentassignop on <var2:APercentAssignOp>*/
2752 var_passignopnode1
= var2
;
2753 var_node_list
= var_passignopnode1
;
2754 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction250> */
2756 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2759 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2763 /* method parser$ReduceAction251$action for (self: ReduceAction251, Parser) */
2764 void nitc__parser___nitc__parser__ReduceAction251___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2765 val
* var_p
/* var p: Parser */;
2766 val
* var_node_list
/* var node_list: nullable Object */;
2767 val
* var
/* : nullable Object */;
2768 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2769 val
* var_tstarstareqnode2
/* var tstarstareqnode2: nullable Object */;
2770 short int var1
/* : Bool */;
2773 val
* var2
/* : AStarstarAssignOp */;
2774 val
* var_passignopnode1
/* var passignopnode1: nullable AStarstarAssignOp */;
2775 long var3
/* : Int */;
2776 long var4
/* : Int */;
2778 var_node_list
= ((val
*)NULL
);
2780 var
= nitc___nitc__Parser___pop(var_p
);
2782 var_nodearraylist1
= var
;
2783 var_tstarstareqnode2
= var_nodearraylist1
;
2784 /* <var_tstarstareqnode2:nullable Object> isa nullable TStarstareq */
2785 cltype
= type_nullable__nitc__TStarstareq
.color
;
2786 idtype
= type_nullable__nitc__TStarstareq
.id
;
2787 if(var_tstarstareqnode2
== NULL
) {
2790 if(cltype
>= (((long)var_tstarstareqnode2
&3)?type_info
[((long)var_tstarstareqnode2
&3)]:var_tstarstareqnode2
->type
)->table_size
) {
2793 var1
= (((long)var_tstarstareqnode2
&3)?type_info
[((long)var_tstarstareqnode2
&3)]:var_tstarstareqnode2
->type
)->type_table
[cltype
] == idtype
;
2796 if (unlikely(!var1
)) {
2797 if(catchStack
.cursor
>= 0){
2798 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2800 PRINT_ERROR("Runtime error: %s", "Assert failed");
2801 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7551);
2804 var2
= NEW_nitc__AStarstarAssignOp(&type_nitc__AStarstarAssignOp
);
2806 nitc__parser_prod___AStarstarAssignOp___init_astarstarassignop(var2
, var_tstarstareqnode2
); /* Direct call parser_prod$AStarstarAssignOp$init_astarstarassignop on <var2:AStarstarAssignOp>*/
2808 var_passignopnode1
= var2
;
2809 var_node_list
= var_passignopnode1
;
2810 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction251> */
2812 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2815 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2819 /* method parser$ReduceAction252$action for (self: ReduceAction252, Parser) */
2820 void nitc__parser___nitc__parser__ReduceAction252___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2821 val
* var_p
/* var p: Parser */;
2822 val
* var_node_list
/* var node_list: nullable Object */;
2823 val
* var
/* : nullable Object */;
2824 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2825 val
* var_tpipeeqnode2
/* var tpipeeqnode2: nullable Object */;
2826 short int var1
/* : Bool */;
2829 val
* var2
/* : APipeAssignOp */;
2830 val
* var_passignopnode1
/* var passignopnode1: nullable APipeAssignOp */;
2831 long var3
/* : Int */;
2832 long var4
/* : Int */;
2834 var_node_list
= ((val
*)NULL
);
2836 var
= nitc___nitc__Parser___pop(var_p
);
2838 var_nodearraylist1
= var
;
2839 var_tpipeeqnode2
= var_nodearraylist1
;
2840 /* <var_tpipeeqnode2:nullable Object> isa nullable TPipeeq */
2841 cltype
= type_nullable__nitc__TPipeeq
.color
;
2842 idtype
= type_nullable__nitc__TPipeeq
.id
;
2843 if(var_tpipeeqnode2
== NULL
) {
2846 if(cltype
>= (((long)var_tpipeeqnode2
&3)?type_info
[((long)var_tpipeeqnode2
&3)]:var_tpipeeqnode2
->type
)->table_size
) {
2849 var1
= (((long)var_tpipeeqnode2
&3)?type_info
[((long)var_tpipeeqnode2
&3)]:var_tpipeeqnode2
->type
)->type_table
[cltype
] == idtype
;
2852 if (unlikely(!var1
)) {
2853 if(catchStack
.cursor
>= 0){
2854 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2856 PRINT_ERROR("Runtime error: %s", "Assert failed");
2857 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7566);
2860 var2
= NEW_nitc__APipeAssignOp(&type_nitc__APipeAssignOp
);
2862 nitc__parser_prod___APipeAssignOp___init_apipeassignop(var2
, var_tpipeeqnode2
); /* Direct call parser_prod$APipeAssignOp$init_apipeassignop on <var2:APipeAssignOp>*/
2864 var_passignopnode1
= var2
;
2865 var_node_list
= var_passignopnode1
;
2866 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction252> */
2868 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2871 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2875 /* method parser$ReduceAction253$action for (self: ReduceAction253, Parser) */
2876 void nitc__parser___nitc__parser__ReduceAction253___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2877 val
* var_p
/* var p: Parser */;
2878 val
* var_node_list
/* var node_list: nullable Object */;
2879 val
* var
/* : nullable Object */;
2880 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2881 val
* var_tcareteqnode2
/* var tcareteqnode2: nullable Object */;
2882 short int var1
/* : Bool */;
2885 val
* var2
/* : ACaretAssignOp */;
2886 val
* var_passignopnode1
/* var passignopnode1: nullable ACaretAssignOp */;
2887 long var3
/* : Int */;
2888 long var4
/* : Int */;
2890 var_node_list
= ((val
*)NULL
);
2892 var
= nitc___nitc__Parser___pop(var_p
);
2894 var_nodearraylist1
= var
;
2895 var_tcareteqnode2
= var_nodearraylist1
;
2896 /* <var_tcareteqnode2:nullable Object> isa nullable TCareteq */
2897 cltype
= type_nullable__nitc__TCareteq
.color
;
2898 idtype
= type_nullable__nitc__TCareteq
.id
;
2899 if(var_tcareteqnode2
== NULL
) {
2902 if(cltype
>= (((long)var_tcareteqnode2
&3)?type_info
[((long)var_tcareteqnode2
&3)]:var_tcareteqnode2
->type
)->table_size
) {
2905 var1
= (((long)var_tcareteqnode2
&3)?type_info
[((long)var_tcareteqnode2
&3)]:var_tcareteqnode2
->type
)->type_table
[cltype
] == idtype
;
2908 if (unlikely(!var1
)) {
2909 if(catchStack
.cursor
>= 0){
2910 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2912 PRINT_ERROR("Runtime error: %s", "Assert failed");
2913 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7581);
2916 var2
= NEW_nitc__ACaretAssignOp(&type_nitc__ACaretAssignOp
);
2918 nitc__parser_prod___ACaretAssignOp___init_acaretassignop(var2
, var_tcareteqnode2
); /* Direct call parser_prod$ACaretAssignOp$init_acaretassignop on <var2:ACaretAssignOp>*/
2920 var_passignopnode1
= var2
;
2921 var_node_list
= var_passignopnode1
;
2922 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction253> */
2924 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2927 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2931 /* method parser$ReduceAction254$action for (self: ReduceAction254, Parser) */
2932 void nitc__parser___nitc__parser__ReduceAction254___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2933 val
* var_p
/* var p: Parser */;
2934 val
* var_node_list
/* var node_list: nullable Object */;
2935 val
* var
/* : nullable Object */;
2936 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2937 val
* var_tampeqnode2
/* var tampeqnode2: nullable Object */;
2938 short int var1
/* : Bool */;
2941 val
* var2
/* : AAmpAssignOp */;
2942 val
* var_passignopnode1
/* var passignopnode1: nullable AAmpAssignOp */;
2943 long var3
/* : Int */;
2944 long var4
/* : Int */;
2946 var_node_list
= ((val
*)NULL
);
2948 var
= nitc___nitc__Parser___pop(var_p
);
2950 var_nodearraylist1
= var
;
2951 var_tampeqnode2
= var_nodearraylist1
;
2952 /* <var_tampeqnode2:nullable Object> isa nullable TAmpeq */
2953 cltype
= type_nullable__nitc__TAmpeq
.color
;
2954 idtype
= type_nullable__nitc__TAmpeq
.id
;
2955 if(var_tampeqnode2
== NULL
) {
2958 if(cltype
>= (((long)var_tampeqnode2
&3)?type_info
[((long)var_tampeqnode2
&3)]:var_tampeqnode2
->type
)->table_size
) {
2961 var1
= (((long)var_tampeqnode2
&3)?type_info
[((long)var_tampeqnode2
&3)]:var_tampeqnode2
->type
)->type_table
[cltype
] == idtype
;
2964 if (unlikely(!var1
)) {
2965 if(catchStack
.cursor
>= 0){
2966 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2968 PRINT_ERROR("Runtime error: %s", "Assert failed");
2969 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7596);
2972 var2
= NEW_nitc__AAmpAssignOp(&type_nitc__AAmpAssignOp
);
2974 nitc__parser_prod___AAmpAssignOp___init_aampassignop(var2
, var_tampeqnode2
); /* Direct call parser_prod$AAmpAssignOp$init_aampassignop on <var2:AAmpAssignOp>*/
2976 var_passignopnode1
= var2
;
2977 var_node_list
= var_passignopnode1
;
2978 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction254> */
2980 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
2983 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
2987 /* method parser$ReduceAction255$action for (self: ReduceAction255, Parser) */
2988 void nitc__parser___nitc__parser__ReduceAction255___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
2989 val
* var_p
/* var p: Parser */;
2990 val
* var_node_list
/* var node_list: nullable Object */;
2991 val
* var
/* : nullable Object */;
2992 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
2993 val
* var_tlleqnode2
/* var tlleqnode2: nullable Object */;
2994 short int var1
/* : Bool */;
2997 val
* var2
/* : ALlAssignOp */;
2998 val
* var_passignopnode1
/* var passignopnode1: nullable ALlAssignOp */;
2999 long var3
/* : Int */;
3000 long var4
/* : Int */;
3002 var_node_list
= ((val
*)NULL
);
3004 var
= nitc___nitc__Parser___pop(var_p
);
3006 var_nodearraylist1
= var
;
3007 var_tlleqnode2
= var_nodearraylist1
;
3008 /* <var_tlleqnode2:nullable Object> isa nullable TLleq */
3009 cltype
= type_nullable__nitc__TLleq
.color
;
3010 idtype
= type_nullable__nitc__TLleq
.id
;
3011 if(var_tlleqnode2
== NULL
) {
3014 if(cltype
>= (((long)var_tlleqnode2
&3)?type_info
[((long)var_tlleqnode2
&3)]:var_tlleqnode2
->type
)->table_size
) {
3017 var1
= (((long)var_tlleqnode2
&3)?type_info
[((long)var_tlleqnode2
&3)]:var_tlleqnode2
->type
)->type_table
[cltype
] == idtype
;
3020 if (unlikely(!var1
)) {
3021 if(catchStack
.cursor
>= 0){
3022 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3024 PRINT_ERROR("Runtime error: %s", "Assert failed");
3025 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7611);
3028 var2
= NEW_nitc__ALlAssignOp(&type_nitc__ALlAssignOp
);
3030 nitc__parser_prod___ALlAssignOp___init_allassignop(var2
, var_tlleqnode2
); /* Direct call parser_prod$ALlAssignOp$init_allassignop on <var2:ALlAssignOp>*/
3032 var_passignopnode1
= var2
;
3033 var_node_list
= var_passignopnode1
;
3034 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction255> */
3036 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
3039 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
3043 /* method parser$ReduceAction256$action for (self: ReduceAction256, Parser) */
3044 void nitc__parser___nitc__parser__ReduceAction256___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3045 val
* var_p
/* var p: Parser */;
3046 val
* var_node_list
/* var node_list: nullable Object */;
3047 val
* var
/* : nullable Object */;
3048 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3049 val
* var_tggeqnode2
/* var tggeqnode2: nullable Object */;
3050 short int var1
/* : Bool */;
3053 val
* var2
/* : AGgAssignOp */;
3054 val
* var_passignopnode1
/* var passignopnode1: nullable AGgAssignOp */;
3055 long var3
/* : Int */;
3056 long var4
/* : Int */;
3058 var_node_list
= ((val
*)NULL
);
3060 var
= nitc___nitc__Parser___pop(var_p
);
3062 var_nodearraylist1
= var
;
3063 var_tggeqnode2
= var_nodearraylist1
;
3064 /* <var_tggeqnode2:nullable Object> isa nullable TGgeq */
3065 cltype
= type_nullable__nitc__TGgeq
.color
;
3066 idtype
= type_nullable__nitc__TGgeq
.id
;
3067 if(var_tggeqnode2
== NULL
) {
3070 if(cltype
>= (((long)var_tggeqnode2
&3)?type_info
[((long)var_tggeqnode2
&3)]:var_tggeqnode2
->type
)->table_size
) {
3073 var1
= (((long)var_tggeqnode2
&3)?type_info
[((long)var_tggeqnode2
&3)]:var_tggeqnode2
->type
)->type_table
[cltype
] == idtype
;
3076 if (unlikely(!var1
)) {
3077 if(catchStack
.cursor
>= 0){
3078 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3080 PRINT_ERROR("Runtime error: %s", "Assert failed");
3081 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7626);
3084 var2
= NEW_nitc__AGgAssignOp(&type_nitc__AGgAssignOp
);
3086 nitc__parser_prod___AGgAssignOp___init_aggassignop(var2
, var_tggeqnode2
); /* Direct call parser_prod$AGgAssignOp$init_aggassignop on <var2:AGgAssignOp>*/
3088 var_passignopnode1
= var2
;
3089 var_node_list
= var_passignopnode1
;
3090 var3
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction256> */
3092 var4
= nitc___nitc__Parser___go_to(var_p
, var3
);
3095 nitc___nitc__Parser___push(var_p
, var4
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
3099 /* method parser$ReduceAction257$action for (self: ReduceAction257, Parser) */
3100 void nitc__parser___nitc__parser__ReduceAction257___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3101 val
* var_p
/* var p: Parser */;
3102 val
* var_node_list
/* var node_list: nullable Object */;
3103 val
* var
/* : nullable Object */;
3104 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3105 val
* var1
/* : nullable Object */;
3106 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3107 val
* var2
/* : nullable Object */;
3108 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3109 val
* var_tkwdonode2
/* var tkwdonode2: nullable Object */;
3110 short int var3
/* : Bool */;
3113 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3114 short int var4
/* : Bool */;
3117 val
* var_plabelnode6
/* var plabelnode6: nullable Object */;
3118 short int var7
/* : Bool */;
3121 val
* var10
/* : ADoExpr */;
3122 val
* var_pexprnode1
/* var pexprnode1: nullable ADoExpr */;
3123 long var11
/* : Int */;
3124 long var12
/* : Int */;
3126 var_node_list
= ((val
*)NULL
);
3128 var
= nitc___nitc__Parser___pop(var_p
);
3130 var_nodearraylist3
= var
;
3132 var1
= nitc___nitc__Parser___pop(var_p
);
3134 var_nodearraylist2
= var1
;
3136 var2
= nitc___nitc__Parser___pop(var_p
);
3138 var_nodearraylist1
= var2
;
3139 var_tkwdonode2
= var_nodearraylist1
;
3140 /* <var_tkwdonode2:nullable Object> isa nullable TKwdo */
3141 cltype
= type_nullable__nitc__TKwdo
.color
;
3142 idtype
= type_nullable__nitc__TKwdo
.id
;
3143 if(var_tkwdonode2
== NULL
) {
3146 if(cltype
>= (((long)var_tkwdonode2
&3)?type_info
[((long)var_tkwdonode2
&3)]:var_tkwdonode2
->type
)->table_size
) {
3149 var3
= (((long)var_tkwdonode2
&3)?type_info
[((long)var_tkwdonode2
&3)]:var_tkwdonode2
->type
)->type_table
[cltype
] == idtype
;
3152 if (unlikely(!var3
)) {
3153 if(catchStack
.cursor
>= 0){
3154 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3156 PRINT_ERROR("Runtime error: %s", "Assert failed");
3157 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7643);
3160 var_pexprnode3
= var_nodearraylist2
;
3161 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3162 cltype5
= type_nullable__nitc__AExpr
.color
;
3163 idtype6
= type_nullable__nitc__AExpr
.id
;
3164 if(var_pexprnode3
== NULL
) {
3167 if(cltype5
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
3170 var4
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype5
] == idtype6
;
3173 if (unlikely(!var4
)) {
3174 if(catchStack
.cursor
>= 0){
3175 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3177 PRINT_ERROR("Runtime error: %s", "Assert failed");
3178 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7645);
3181 var_plabelnode6
= var_nodearraylist3
;
3182 /* <var_plabelnode6:nullable Object> isa nullable ALabel */
3183 cltype8
= type_nullable__nitc__ALabel
.color
;
3184 idtype9
= type_nullable__nitc__ALabel
.id
;
3185 if(var_plabelnode6
== NULL
) {
3188 if(cltype8
>= (((long)var_plabelnode6
&3)?type_info
[((long)var_plabelnode6
&3)]:var_plabelnode6
->type
)->table_size
) {
3191 var7
= (((long)var_plabelnode6
&3)?type_info
[((long)var_plabelnode6
&3)]:var_plabelnode6
->type
)->type_table
[cltype8
] == idtype9
;
3194 if (unlikely(!var7
)) {
3195 if(catchStack
.cursor
>= 0){
3196 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3198 PRINT_ERROR("Runtime error: %s", "Assert failed");
3199 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7647);
3202 var10
= NEW_nitc__ADoExpr(&type_nitc__ADoExpr
);
3204 nitc__parser_prod___ADoExpr___init_adoexpr(var10
, var_tkwdonode2
, var_pexprnode3
, ((val
*)NULL
), ((val
*)NULL
), var_plabelnode6
); /* Direct call parser_prod$ADoExpr$init_adoexpr on <var10:ADoExpr>*/
3206 var_pexprnode1
= var10
;
3207 var_node_list
= var_pexprnode1
;
3208 var11
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction257> */
3210 var12
= nitc___nitc__Parser___go_to(var_p
, var11
);
3213 nitc___nitc__Parser___push(var_p
, var12
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
3217 /* method parser$ReduceAction258$action for (self: ReduceAction258, Parser) */
3218 void nitc__parser___nitc__parser__ReduceAction258___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3219 val
* var_p
/* var p: Parser */;
3220 val
* var_node_list
/* var node_list: nullable Object */;
3221 val
* var
/* : nullable Object */;
3222 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3223 val
* var1
/* : nullable Object */;
3224 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3225 val
* var_tkwdonode2
/* var tkwdonode2: nullable Object */;
3226 short int var2
/* : Bool */;
3229 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3230 short int var3
/* : Bool */;
3233 val
* var6
/* : ADoExpr */;
3234 val
* var_pexprnode1
/* var pexprnode1: nullable ADoExpr */;
3235 long var7
/* : Int */;
3236 long var8
/* : Int */;
3238 var_node_list
= ((val
*)NULL
);
3240 var
= nitc___nitc__Parser___pop(var_p
);
3242 var_nodearraylist2
= var
;
3244 var1
= nitc___nitc__Parser___pop(var_p
);
3246 var_nodearraylist1
= var1
;
3247 var_tkwdonode2
= var_nodearraylist1
;
3248 /* <var_tkwdonode2:nullable Object> isa nullable TKwdo */
3249 cltype
= type_nullable__nitc__TKwdo
.color
;
3250 idtype
= type_nullable__nitc__TKwdo
.id
;
3251 if(var_tkwdonode2
== NULL
) {
3254 if(cltype
>= (((long)var_tkwdonode2
&3)?type_info
[((long)var_tkwdonode2
&3)]:var_tkwdonode2
->type
)->table_size
) {
3257 var2
= (((long)var_tkwdonode2
&3)?type_info
[((long)var_tkwdonode2
&3)]:var_tkwdonode2
->type
)->type_table
[cltype
] == idtype
;
3260 if (unlikely(!var2
)) {
3261 if(catchStack
.cursor
>= 0){
3262 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3264 PRINT_ERROR("Runtime error: %s", "Assert failed");
3265 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7667);
3268 var_pexprnode3
= var_nodearraylist2
;
3269 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3270 cltype4
= type_nullable__nitc__AExpr
.color
;
3271 idtype5
= type_nullable__nitc__AExpr
.id
;
3272 if(var_pexprnode3
== NULL
) {
3275 if(cltype4
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
3278 var3
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype4
] == idtype5
;
3281 if (unlikely(!var3
)) {
3282 if(catchStack
.cursor
>= 0){
3283 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3285 PRINT_ERROR("Runtime error: %s", "Assert failed");
3286 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7669);
3289 var6
= NEW_nitc__ADoExpr(&type_nitc__ADoExpr
);
3291 nitc__parser_prod___ADoExpr___init_adoexpr(var6
, var_tkwdonode2
, var_pexprnode3
, ((val
*)NULL
), ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod$ADoExpr$init_adoexpr on <var6:ADoExpr>*/
3293 var_pexprnode1
= var6
;
3294 var_node_list
= var_pexprnode1
;
3295 var7
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction258> */
3297 var8
= nitc___nitc__Parser___go_to(var_p
, var7
);
3300 nitc___nitc__Parser___push(var_p
, var8
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
3304 /* method parser$ReduceAction259$action for (self: ReduceAction259, Parser) */
3305 void nitc__parser___nitc__parser__ReduceAction259___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3306 val
* var_p
/* var p: Parser */;
3307 val
* var_node_list
/* var node_list: nullable Object */;
3308 val
* var
/* : nullable Object */;
3309 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3310 val
* var1
/* : nullable Object */;
3311 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3312 val
* var2
/* : nullable Object */;
3313 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3314 val
* var3
/* : nullable Object */;
3315 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3316 val
* var4
/* : nullable Object */;
3317 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3318 val
* var_tkwdonode2
/* var tkwdonode2: nullable Object */;
3319 short int var5
/* : Bool */;
3322 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3323 short int var6
/* : Bool */;
3326 val
* var_tkwcatchnode4
/* var tkwcatchnode4: nullable Object */;
3327 short int var9
/* : Bool */;
3330 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
3331 short int var12
/* : Bool */;
3334 val
* var15
/* : ADoExpr */;
3335 val
* var_pexprnode1
/* var pexprnode1: nullable ADoExpr */;
3336 long var16
/* : Int */;
3337 long var17
/* : Int */;
3339 var_node_list
= ((val
*)NULL
);
3341 var
= nitc___nitc__Parser___pop(var_p
);
3343 var_nodearraylist5
= var
;
3345 var1
= nitc___nitc__Parser___pop(var_p
);
3347 var_nodearraylist4
= var1
;
3349 var2
= nitc___nitc__Parser___pop(var_p
);
3351 var_nodearraylist3
= var2
;
3353 var3
= nitc___nitc__Parser___pop(var_p
);
3355 var_nodearraylist2
= var3
;
3357 var4
= nitc___nitc__Parser___pop(var_p
);
3359 var_nodearraylist1
= var4
;
3360 var_tkwdonode2
= var_nodearraylist1
;
3361 /* <var_tkwdonode2:nullable Object> isa nullable TKwdo */
3362 cltype
= type_nullable__nitc__TKwdo
.color
;
3363 idtype
= type_nullable__nitc__TKwdo
.id
;
3364 if(var_tkwdonode2
== NULL
) {
3367 if(cltype
>= (((long)var_tkwdonode2
&3)?type_info
[((long)var_tkwdonode2
&3)]:var_tkwdonode2
->type
)->table_size
) {
3370 var5
= (((long)var_tkwdonode2
&3)?type_info
[((long)var_tkwdonode2
&3)]:var_tkwdonode2
->type
)->type_table
[cltype
] == idtype
;
3373 if (unlikely(!var5
)) {
3374 if(catchStack
.cursor
>= 0){
3375 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3377 PRINT_ERROR("Runtime error: %s", "Assert failed");
3378 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7692);
3381 var_pexprnode3
= var_nodearraylist3
;
3382 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3383 cltype7
= type_nullable__nitc__AExpr
.color
;
3384 idtype8
= type_nullable__nitc__AExpr
.id
;
3385 if(var_pexprnode3
== NULL
) {
3388 if(cltype7
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
3391 var6
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype7
] == idtype8
;
3394 if (unlikely(!var6
)) {
3395 if(catchStack
.cursor
>= 0){
3396 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3398 PRINT_ERROR("Runtime error: %s", "Assert failed");
3399 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7694);
3402 var_tkwcatchnode4
= var_nodearraylist4
;
3403 /* <var_tkwcatchnode4:nullable Object> isa nullable TKwcatch */
3404 cltype10
= type_nullable__nitc__TKwcatch
.color
;
3405 idtype11
= type_nullable__nitc__TKwcatch
.id
;
3406 if(var_tkwcatchnode4
== NULL
) {
3409 if(cltype10
>= (((long)var_tkwcatchnode4
&3)?type_info
[((long)var_tkwcatchnode4
&3)]:var_tkwcatchnode4
->type
)->table_size
) {
3412 var9
= (((long)var_tkwcatchnode4
&3)?type_info
[((long)var_tkwcatchnode4
&3)]:var_tkwcatchnode4
->type
)->type_table
[cltype10
] == idtype11
;
3415 if (unlikely(!var9
)) {
3416 if(catchStack
.cursor
>= 0){
3417 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3419 PRINT_ERROR("Runtime error: %s", "Assert failed");
3420 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7696);
3423 var_pexprnode5
= var_nodearraylist5
;
3424 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
3425 cltype13
= type_nullable__nitc__AExpr
.color
;
3426 idtype14
= type_nullable__nitc__AExpr
.id
;
3427 if(var_pexprnode5
== NULL
) {
3430 if(cltype13
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
3433 var12
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype13
] == idtype14
;
3436 if (unlikely(!var12
)) {
3437 if(catchStack
.cursor
>= 0){
3438 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3440 PRINT_ERROR("Runtime error: %s", "Assert failed");
3441 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7698);
3444 var15
= NEW_nitc__ADoExpr(&type_nitc__ADoExpr
);
3446 nitc__parser_prod___ADoExpr___init_adoexpr(var15
, var_tkwdonode2
, var_pexprnode3
, var_tkwcatchnode4
, var_pexprnode5
, ((val
*)NULL
)); /* Direct call parser_prod$ADoExpr$init_adoexpr on <var15:ADoExpr>*/
3448 var_pexprnode1
= var15
;
3449 var_node_list
= var_pexprnode1
;
3450 var16
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction259> */
3452 var17
= nitc___nitc__Parser___go_to(var_p
, var16
);
3455 nitc___nitc__Parser___push(var_p
, var17
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
3459 /* method parser$ReduceAction260$action for (self: ReduceAction260, Parser) */
3460 void nitc__parser___nitc__parser__ReduceAction260___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3461 val
* var_p
/* var p: Parser */;
3462 val
* var_node_list
/* var node_list: nullable Object */;
3463 val
* var
/* : nullable Object */;
3464 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3465 val
* var1
/* : nullable Object */;
3466 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3467 val
* var2
/* : nullable Object */;
3468 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3469 val
* var3
/* : nullable Object */;
3470 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3471 val
* var4
/* : nullable Object */;
3472 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3473 val
* var5
/* : nullable Object */;
3474 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3475 val
* var6
/* : nullable Object */;
3476 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3477 val
* var7
/* : nullable Object */;
3478 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3479 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
3480 short int var8
/* : Bool */;
3483 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3484 short int var9
/* : Bool */;
3487 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
3488 short int var12
/* : Bool */;
3491 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
3492 short int var15
/* : Bool */;
3495 val
* var_tkwelsenode6
/* var tkwelsenode6: nullable Object */;
3496 short int var18
/* : Bool */;
3499 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
3500 short int var21
/* : Bool */;
3503 val
* var24
/* : AIfExpr */;
3504 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
3505 long var25
/* : Int */;
3506 long var26
/* : Int */;
3508 var_node_list
= ((val
*)NULL
);
3510 var
= nitc___nitc__Parser___pop(var_p
);
3512 var_nodearraylist8
= var
;
3514 var1
= nitc___nitc__Parser___pop(var_p
);
3516 var_nodearraylist7
= var1
;
3518 var2
= nitc___nitc__Parser___pop(var_p
);
3520 var_nodearraylist6
= var2
;
3522 var3
= nitc___nitc__Parser___pop(var_p
);
3524 var_nodearraylist5
= var3
;
3526 var4
= nitc___nitc__Parser___pop(var_p
);
3528 var_nodearraylist4
= var4
;
3530 var5
= nitc___nitc__Parser___pop(var_p
);
3532 var_nodearraylist3
= var5
;
3534 var6
= nitc___nitc__Parser___pop(var_p
);
3536 var_nodearraylist2
= var6
;
3538 var7
= nitc___nitc__Parser___pop(var_p
);
3540 var_nodearraylist1
= var7
;
3541 var_tkwifnode2
= var_nodearraylist1
;
3542 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
3543 cltype
= type_nullable__nitc__TKwif
.color
;
3544 idtype
= type_nullable__nitc__TKwif
.id
;
3545 if(var_tkwifnode2
== NULL
) {
3548 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
3551 var8
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
3554 if (unlikely(!var8
)) {
3555 if(catchStack
.cursor
>= 0){
3556 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3558 PRINT_ERROR("Runtime error: %s", "Assert failed");
3559 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7724);
3562 var_pexprnode3
= var_nodearraylist3
;
3563 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3564 cltype10
= type_nullable__nitc__AExpr
.color
;
3565 idtype11
= type_nullable__nitc__AExpr
.id
;
3566 if(var_pexprnode3
== NULL
) {
3569 if(cltype10
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
3572 var9
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype10
] == idtype11
;
3575 if (unlikely(!var9
)) {
3576 if(catchStack
.cursor
>= 0){
3577 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3579 PRINT_ERROR("Runtime error: %s", "Assert failed");
3580 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7726);
3583 var_tkwthennode4
= var_nodearraylist5
;
3584 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
3585 cltype13
= type_nullable__nitc__TKwthen
.color
;
3586 idtype14
= type_nullable__nitc__TKwthen
.id
;
3587 if(var_tkwthennode4
== NULL
) {
3590 if(cltype13
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
3593 var12
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype13
] == idtype14
;
3596 if (unlikely(!var12
)) {
3597 if(catchStack
.cursor
>= 0){
3598 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3600 PRINT_ERROR("Runtime error: %s", "Assert failed");
3601 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7728);
3604 var_pexprnode5
= var_nodearraylist6
;
3605 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
3606 cltype16
= type_nullable__nitc__AExpr
.color
;
3607 idtype17
= type_nullable__nitc__AExpr
.id
;
3608 if(var_pexprnode5
== NULL
) {
3611 if(cltype16
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
3614 var15
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype16
] == idtype17
;
3617 if (unlikely(!var15
)) {
3618 if(catchStack
.cursor
>= 0){
3619 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3621 PRINT_ERROR("Runtime error: %s", "Assert failed");
3622 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7730);
3625 var_tkwelsenode6
= var_nodearraylist7
;
3626 /* <var_tkwelsenode6:nullable Object> isa nullable TKwelse */
3627 cltype19
= type_nullable__nitc__TKwelse
.color
;
3628 idtype20
= type_nullable__nitc__TKwelse
.id
;
3629 if(var_tkwelsenode6
== NULL
) {
3632 if(cltype19
>= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->table_size
) {
3635 var18
= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->type_table
[cltype19
] == idtype20
;
3638 if (unlikely(!var18
)) {
3639 if(catchStack
.cursor
>= 0){
3640 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3642 PRINT_ERROR("Runtime error: %s", "Assert failed");
3643 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7732);
3646 var_pexprnode7
= var_nodearraylist8
;
3647 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
3648 cltype22
= type_nullable__nitc__AExpr
.color
;
3649 idtype23
= type_nullable__nitc__AExpr
.id
;
3650 if(var_pexprnode7
== NULL
) {
3653 if(cltype22
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
3656 var21
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype22
] == idtype23
;
3659 if (unlikely(!var21
)) {
3660 if(catchStack
.cursor
>= 0){
3661 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3663 PRINT_ERROR("Runtime error: %s", "Assert failed");
3664 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7734);
3667 var24
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
3669 nitc__parser_prod___AIfExpr___init_aifexpr(var24
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, var_pexprnode5
, var_tkwelsenode6
, var_pexprnode7
); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var24:AIfExpr>*/
3671 var_pexprnode1
= var24
;
3672 var_node_list
= var_pexprnode1
;
3673 var25
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction260> */
3675 var26
= nitc___nitc__Parser___go_to(var_p
, var25
);
3678 nitc___nitc__Parser___push(var_p
, var26
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
3682 /* method parser$ReduceAction261$action for (self: ReduceAction261, Parser) */
3683 void nitc__parser___nitc__parser__ReduceAction261___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3684 val
* var_p
/* var p: Parser */;
3685 val
* var_node_list
/* var node_list: nullable Object */;
3686 val
* var
/* : nullable Object */;
3687 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3688 val
* var1
/* : nullable Object */;
3689 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3690 val
* var2
/* : nullable Object */;
3691 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3692 val
* var3
/* : nullable Object */;
3693 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3694 val
* var4
/* : nullable Object */;
3695 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3696 val
* var5
/* : nullable Object */;
3697 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3698 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
3699 short int var6
/* : Bool */;
3702 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3703 short int var7
/* : Bool */;
3706 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
3707 short int var10
/* : Bool */;
3710 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
3711 short int var13
/* : Bool */;
3714 val
* var16
/* : AIfExpr */;
3715 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
3716 long var17
/* : Int */;
3717 long var18
/* : Int */;
3719 var_node_list
= ((val
*)NULL
);
3721 var
= nitc___nitc__Parser___pop(var_p
);
3723 var_nodearraylist6
= var
;
3725 var1
= nitc___nitc__Parser___pop(var_p
);
3727 var_nodearraylist5
= var1
;
3729 var2
= nitc___nitc__Parser___pop(var_p
);
3731 var_nodearraylist4
= var2
;
3733 var3
= nitc___nitc__Parser___pop(var_p
);
3735 var_nodearraylist3
= var3
;
3737 var4
= nitc___nitc__Parser___pop(var_p
);
3739 var_nodearraylist2
= var4
;
3741 var5
= nitc___nitc__Parser___pop(var_p
);
3743 var_nodearraylist1
= var5
;
3744 var_tkwifnode2
= var_nodearraylist1
;
3745 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
3746 cltype
= type_nullable__nitc__TKwif
.color
;
3747 idtype
= type_nullable__nitc__TKwif
.id
;
3748 if(var_tkwifnode2
== NULL
) {
3751 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
3754 var6
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
3757 if (unlikely(!var6
)) {
3758 if(catchStack
.cursor
>= 0){
3759 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3761 PRINT_ERROR("Runtime error: %s", "Assert failed");
3762 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7759);
3765 var_pexprnode3
= var_nodearraylist3
;
3766 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3767 cltype8
= type_nullable__nitc__AExpr
.color
;
3768 idtype9
= type_nullable__nitc__AExpr
.id
;
3769 if(var_pexprnode3
== NULL
) {
3772 if(cltype8
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
3775 var7
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype8
] == idtype9
;
3778 if (unlikely(!var7
)) {
3779 if(catchStack
.cursor
>= 0){
3780 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3782 PRINT_ERROR("Runtime error: %s", "Assert failed");
3783 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7761);
3786 var_tkwthennode4
= var_nodearraylist5
;
3787 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
3788 cltype11
= type_nullable__nitc__TKwthen
.color
;
3789 idtype12
= type_nullable__nitc__TKwthen
.id
;
3790 if(var_tkwthennode4
== NULL
) {
3793 if(cltype11
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
3796 var10
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype11
] == idtype12
;
3799 if (unlikely(!var10
)) {
3800 if(catchStack
.cursor
>= 0){
3801 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3803 PRINT_ERROR("Runtime error: %s", "Assert failed");
3804 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7763);
3807 var_pexprnode5
= var_nodearraylist6
;
3808 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
3809 cltype14
= type_nullable__nitc__AExpr
.color
;
3810 idtype15
= type_nullable__nitc__AExpr
.id
;
3811 if(var_pexprnode5
== NULL
) {
3814 if(cltype14
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
3817 var13
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype14
] == idtype15
;
3820 if (unlikely(!var13
)) {
3821 if(catchStack
.cursor
>= 0){
3822 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3824 PRINT_ERROR("Runtime error: %s", "Assert failed");
3825 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7765);
3828 var16
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
3830 nitc__parser_prod___AIfExpr___init_aifexpr(var16
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, var_pexprnode5
, ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var16:AIfExpr>*/
3832 var_pexprnode1
= var16
;
3833 var_node_list
= var_pexprnode1
;
3834 var17
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction261> */
3836 var18
= nitc___nitc__Parser___go_to(var_p
, var17
);
3839 nitc___nitc__Parser___push(var_p
, var18
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
3843 /* method parser$ReduceAction262$action for (self: ReduceAction262, Parser) */
3844 void nitc__parser___nitc__parser__ReduceAction262___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
3845 val
* var_p
/* var p: Parser */;
3846 val
* var_node_list
/* var node_list: nullable Object */;
3847 val
* var
/* : nullable Object */;
3848 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
3849 val
* var1
/* : nullable Object */;
3850 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
3851 val
* var2
/* : nullable Object */;
3852 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
3853 val
* var3
/* : nullable Object */;
3854 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
3855 val
* var4
/* : nullable Object */;
3856 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
3857 val
* var5
/* : nullable Object */;
3858 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
3859 val
* var6
/* : nullable Object */;
3860 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
3861 val
* var7
/* : nullable Object */;
3862 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
3863 val
* var8
/* : nullable Object */;
3864 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
3865 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
3866 short int var9
/* : Bool */;
3869 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
3870 short int var10
/* : Bool */;
3873 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
3874 short int var13
/* : Bool */;
3877 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
3878 short int var16
/* : Bool */;
3881 val
* var_tkwelsenode6
/* var tkwelsenode6: nullable Object */;
3882 short int var19
/* : Bool */;
3885 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
3886 short int var22
/* : Bool */;
3889 val
* var25
/* : AIfExpr */;
3890 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
3891 long var26
/* : Int */;
3892 long var27
/* : Int */;
3894 var_node_list
= ((val
*)NULL
);
3896 var
= nitc___nitc__Parser___pop(var_p
);
3898 var_nodearraylist9
= var
;
3900 var1
= nitc___nitc__Parser___pop(var_p
);
3902 var_nodearraylist8
= var1
;
3904 var2
= nitc___nitc__Parser___pop(var_p
);
3906 var_nodearraylist7
= var2
;
3908 var3
= nitc___nitc__Parser___pop(var_p
);
3910 var_nodearraylist6
= var3
;
3912 var4
= nitc___nitc__Parser___pop(var_p
);
3914 var_nodearraylist5
= var4
;
3916 var5
= nitc___nitc__Parser___pop(var_p
);
3918 var_nodearraylist4
= var5
;
3920 var6
= nitc___nitc__Parser___pop(var_p
);
3922 var_nodearraylist3
= var6
;
3924 var7
= nitc___nitc__Parser___pop(var_p
);
3926 var_nodearraylist2
= var7
;
3928 var8
= nitc___nitc__Parser___pop(var_p
);
3930 var_nodearraylist1
= var8
;
3931 var_tkwifnode2
= var_nodearraylist1
;
3932 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
3933 cltype
= type_nullable__nitc__TKwif
.color
;
3934 idtype
= type_nullable__nitc__TKwif
.id
;
3935 if(var_tkwifnode2
== NULL
) {
3938 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
3941 var9
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
3944 if (unlikely(!var9
)) {
3945 if(catchStack
.cursor
>= 0){
3946 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3948 PRINT_ERROR("Runtime error: %s", "Assert failed");
3949 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7793);
3952 var_pexprnode3
= var_nodearraylist3
;
3953 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
3954 cltype11
= type_nullable__nitc__AExpr
.color
;
3955 idtype12
= type_nullable__nitc__AExpr
.id
;
3956 if(var_pexprnode3
== NULL
) {
3959 if(cltype11
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
3962 var10
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype11
] == idtype12
;
3965 if (unlikely(!var10
)) {
3966 if(catchStack
.cursor
>= 0){
3967 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3969 PRINT_ERROR("Runtime error: %s", "Assert failed");
3970 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7795);
3973 var_tkwthennode4
= var_nodearraylist5
;
3974 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
3975 cltype14
= type_nullable__nitc__TKwthen
.color
;
3976 idtype15
= type_nullable__nitc__TKwthen
.id
;
3977 if(var_tkwthennode4
== NULL
) {
3980 if(cltype14
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
3983 var13
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype14
] == idtype15
;
3986 if (unlikely(!var13
)) {
3987 if(catchStack
.cursor
>= 0){
3988 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3990 PRINT_ERROR("Runtime error: %s", "Assert failed");
3991 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7797);
3994 var_pexprnode5
= var_nodearraylist7
;
3995 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
3996 cltype17
= type_nullable__nitc__AExpr
.color
;
3997 idtype18
= type_nullable__nitc__AExpr
.id
;
3998 if(var_pexprnode5
== NULL
) {
4001 if(cltype17
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
4004 var16
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype17
] == idtype18
;
4007 if (unlikely(!var16
)) {
4008 if(catchStack
.cursor
>= 0){
4009 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4011 PRINT_ERROR("Runtime error: %s", "Assert failed");
4012 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7799);
4015 var_tkwelsenode6
= var_nodearraylist8
;
4016 /* <var_tkwelsenode6:nullable Object> isa nullable TKwelse */
4017 cltype20
= type_nullable__nitc__TKwelse
.color
;
4018 idtype21
= type_nullable__nitc__TKwelse
.id
;
4019 if(var_tkwelsenode6
== NULL
) {
4022 if(cltype20
>= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->table_size
) {
4025 var19
= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->type_table
[cltype20
] == idtype21
;
4028 if (unlikely(!var19
)) {
4029 if(catchStack
.cursor
>= 0){
4030 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4032 PRINT_ERROR("Runtime error: %s", "Assert failed");
4033 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7801);
4036 var_pexprnode7
= var_nodearraylist9
;
4037 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
4038 cltype23
= type_nullable__nitc__AExpr
.color
;
4039 idtype24
= type_nullable__nitc__AExpr
.id
;
4040 if(var_pexprnode7
== NULL
) {
4043 if(cltype23
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
4046 var22
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype23
] == idtype24
;
4049 if (unlikely(!var22
)) {
4050 if(catchStack
.cursor
>= 0){
4051 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4053 PRINT_ERROR("Runtime error: %s", "Assert failed");
4054 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7803);
4057 var25
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
4059 nitc__parser_prod___AIfExpr___init_aifexpr(var25
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, var_pexprnode5
, var_tkwelsenode6
, var_pexprnode7
); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var25:AIfExpr>*/
4061 var_pexprnode1
= var25
;
4062 var_node_list
= var_pexprnode1
;
4063 var26
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction262> */
4065 var27
= nitc___nitc__Parser___go_to(var_p
, var26
);
4068 nitc___nitc__Parser___push(var_p
, var27
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
4072 /* method parser$ReduceAction263$action for (self: ReduceAction263, Parser) */
4073 void nitc__parser___nitc__parser__ReduceAction263___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4074 val
* var_p
/* var p: Parser */;
4075 val
* var_node_list
/* var node_list: nullable Object */;
4076 val
* var
/* : nullable Object */;
4077 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4078 val
* var1
/* : nullable Object */;
4079 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4080 val
* var2
/* : nullable Object */;
4081 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4082 val
* var3
/* : nullable Object */;
4083 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4084 val
* var4
/* : nullable Object */;
4085 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4086 val
* var5
/* : nullable Object */;
4087 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4088 val
* var6
/* : nullable Object */;
4089 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4090 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4091 short int var7
/* : Bool */;
4094 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4095 short int var8
/* : Bool */;
4098 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
4099 short int var11
/* : Bool */;
4102 val
* var_tkwelsenode6
/* var tkwelsenode6: nullable Object */;
4103 short int var14
/* : Bool */;
4106 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
4107 short int var17
/* : Bool */;
4110 val
* var20
/* : AIfExpr */;
4111 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4112 long var21
/* : Int */;
4113 long var22
/* : Int */;
4115 var_node_list
= ((val
*)NULL
);
4117 var
= nitc___nitc__Parser___pop(var_p
);
4119 var_nodearraylist7
= var
;
4121 var1
= nitc___nitc__Parser___pop(var_p
);
4123 var_nodearraylist6
= var1
;
4125 var2
= nitc___nitc__Parser___pop(var_p
);
4127 var_nodearraylist5
= var2
;
4129 var3
= nitc___nitc__Parser___pop(var_p
);
4131 var_nodearraylist4
= var3
;
4133 var4
= nitc___nitc__Parser___pop(var_p
);
4135 var_nodearraylist3
= var4
;
4137 var5
= nitc___nitc__Parser___pop(var_p
);
4139 var_nodearraylist2
= var5
;
4141 var6
= nitc___nitc__Parser___pop(var_p
);
4143 var_nodearraylist1
= var6
;
4144 var_tkwifnode2
= var_nodearraylist1
;
4145 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4146 cltype
= type_nullable__nitc__TKwif
.color
;
4147 idtype
= type_nullable__nitc__TKwif
.id
;
4148 if(var_tkwifnode2
== NULL
) {
4151 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
4154 var7
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
4157 if (unlikely(!var7
)) {
4158 if(catchStack
.cursor
>= 0){
4159 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4161 PRINT_ERROR("Runtime error: %s", "Assert failed");
4162 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7829);
4165 var_pexprnode3
= var_nodearraylist3
;
4166 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4167 cltype9
= type_nullable__nitc__AExpr
.color
;
4168 idtype10
= type_nullable__nitc__AExpr
.id
;
4169 if(var_pexprnode3
== NULL
) {
4172 if(cltype9
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
4175 var8
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype9
] == idtype10
;
4178 if (unlikely(!var8
)) {
4179 if(catchStack
.cursor
>= 0){
4180 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4182 PRINT_ERROR("Runtime error: %s", "Assert failed");
4183 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7831);
4186 var_tkwthennode4
= var_nodearraylist5
;
4187 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
4188 cltype12
= type_nullable__nitc__TKwthen
.color
;
4189 idtype13
= type_nullable__nitc__TKwthen
.id
;
4190 if(var_tkwthennode4
== NULL
) {
4193 if(cltype12
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
4196 var11
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype12
] == idtype13
;
4199 if (unlikely(!var11
)) {
4200 if(catchStack
.cursor
>= 0){
4201 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4203 PRINT_ERROR("Runtime error: %s", "Assert failed");
4204 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7833);
4207 var_tkwelsenode6
= var_nodearraylist6
;
4208 /* <var_tkwelsenode6:nullable Object> isa nullable TKwelse */
4209 cltype15
= type_nullable__nitc__TKwelse
.color
;
4210 idtype16
= type_nullable__nitc__TKwelse
.id
;
4211 if(var_tkwelsenode6
== NULL
) {
4214 if(cltype15
>= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->table_size
) {
4217 var14
= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->type_table
[cltype15
] == idtype16
;
4220 if (unlikely(!var14
)) {
4221 if(catchStack
.cursor
>= 0){
4222 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4224 PRINT_ERROR("Runtime error: %s", "Assert failed");
4225 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7835);
4228 var_pexprnode7
= var_nodearraylist7
;
4229 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
4230 cltype18
= type_nullable__nitc__AExpr
.color
;
4231 idtype19
= type_nullable__nitc__AExpr
.id
;
4232 if(var_pexprnode7
== NULL
) {
4235 if(cltype18
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
4238 var17
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype18
] == idtype19
;
4241 if (unlikely(!var17
)) {
4242 if(catchStack
.cursor
>= 0){
4243 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4245 PRINT_ERROR("Runtime error: %s", "Assert failed");
4246 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7837);
4249 var20
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
4251 nitc__parser_prod___AIfExpr___init_aifexpr(var20
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, ((val
*)NULL
), var_tkwelsenode6
, var_pexprnode7
); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var20:AIfExpr>*/
4253 var_pexprnode1
= var20
;
4254 var_node_list
= var_pexprnode1
;
4255 var21
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction263> */
4257 var22
= nitc___nitc__Parser___go_to(var_p
, var21
);
4260 nitc___nitc__Parser___push(var_p
, var22
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
4264 /* method parser$ReduceAction264$action for (self: ReduceAction264, Parser) */
4265 void nitc__parser___nitc__parser__ReduceAction264___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4266 val
* var_p
/* var p: Parser */;
4267 val
* var_node_list
/* var node_list: nullable Object */;
4268 val
* var
/* : nullable Object */;
4269 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4270 val
* var1
/* : nullable Object */;
4271 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4272 val
* var2
/* : nullable Object */;
4273 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4274 val
* var3
/* : nullable Object */;
4275 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4276 val
* var4
/* : nullable Object */;
4277 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4278 val
* var5
/* : nullable Object */;
4279 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4280 val
* var6
/* : nullable Object */;
4281 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4282 val
* var7
/* : nullable Object */;
4283 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4284 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4285 short int var8
/* : Bool */;
4288 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4289 short int var9
/* : Bool */;
4292 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
4293 short int var12
/* : Bool */;
4296 val
* var_tkwelsenode6
/* var tkwelsenode6: nullable Object */;
4297 short int var15
/* : Bool */;
4300 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
4301 short int var18
/* : Bool */;
4304 val
* var21
/* : AIfExpr */;
4305 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4306 long var22
/* : Int */;
4307 long var23
/* : Int */;
4309 var_node_list
= ((val
*)NULL
);
4311 var
= nitc___nitc__Parser___pop(var_p
);
4313 var_nodearraylist8
= var
;
4315 var1
= nitc___nitc__Parser___pop(var_p
);
4317 var_nodearraylist7
= var1
;
4319 var2
= nitc___nitc__Parser___pop(var_p
);
4321 var_nodearraylist6
= var2
;
4323 var3
= nitc___nitc__Parser___pop(var_p
);
4325 var_nodearraylist5
= var3
;
4327 var4
= nitc___nitc__Parser___pop(var_p
);
4329 var_nodearraylist4
= var4
;
4331 var5
= nitc___nitc__Parser___pop(var_p
);
4333 var_nodearraylist3
= var5
;
4335 var6
= nitc___nitc__Parser___pop(var_p
);
4337 var_nodearraylist2
= var6
;
4339 var7
= nitc___nitc__Parser___pop(var_p
);
4341 var_nodearraylist1
= var7
;
4342 var_tkwifnode2
= var_nodearraylist1
;
4343 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4344 cltype
= type_nullable__nitc__TKwif
.color
;
4345 idtype
= type_nullable__nitc__TKwif
.id
;
4346 if(var_tkwifnode2
== NULL
) {
4349 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
4352 var8
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
4355 if (unlikely(!var8
)) {
4356 if(catchStack
.cursor
>= 0){
4357 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4359 PRINT_ERROR("Runtime error: %s", "Assert failed");
4360 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7864);
4363 var_pexprnode3
= var_nodearraylist3
;
4364 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4365 cltype10
= type_nullable__nitc__AExpr
.color
;
4366 idtype11
= type_nullable__nitc__AExpr
.id
;
4367 if(var_pexprnode3
== NULL
) {
4370 if(cltype10
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
4373 var9
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype10
] == idtype11
;
4376 if (unlikely(!var9
)) {
4377 if(catchStack
.cursor
>= 0){
4378 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4380 PRINT_ERROR("Runtime error: %s", "Assert failed");
4381 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7866);
4384 var_tkwthennode4
= var_nodearraylist5
;
4385 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
4386 cltype13
= type_nullable__nitc__TKwthen
.color
;
4387 idtype14
= type_nullable__nitc__TKwthen
.id
;
4388 if(var_tkwthennode4
== NULL
) {
4391 if(cltype13
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
4394 var12
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype13
] == idtype14
;
4397 if (unlikely(!var12
)) {
4398 if(catchStack
.cursor
>= 0){
4399 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4401 PRINT_ERROR("Runtime error: %s", "Assert failed");
4402 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7868);
4405 var_tkwelsenode6
= var_nodearraylist7
;
4406 /* <var_tkwelsenode6:nullable Object> isa nullable TKwelse */
4407 cltype16
= type_nullable__nitc__TKwelse
.color
;
4408 idtype17
= type_nullable__nitc__TKwelse
.id
;
4409 if(var_tkwelsenode6
== NULL
) {
4412 if(cltype16
>= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->table_size
) {
4415 var15
= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->type_table
[cltype16
] == idtype17
;
4418 if (unlikely(!var15
)) {
4419 if(catchStack
.cursor
>= 0){
4420 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4422 PRINT_ERROR("Runtime error: %s", "Assert failed");
4423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7870);
4426 var_pexprnode7
= var_nodearraylist8
;
4427 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
4428 cltype19
= type_nullable__nitc__AExpr
.color
;
4429 idtype20
= type_nullable__nitc__AExpr
.id
;
4430 if(var_pexprnode7
== NULL
) {
4433 if(cltype19
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
4436 var18
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype19
] == idtype20
;
4439 if (unlikely(!var18
)) {
4440 if(catchStack
.cursor
>= 0){
4441 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4443 PRINT_ERROR("Runtime error: %s", "Assert failed");
4444 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7872);
4447 var21
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
4449 nitc__parser_prod___AIfExpr___init_aifexpr(var21
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, ((val
*)NULL
), var_tkwelsenode6
, var_pexprnode7
); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var21:AIfExpr>*/
4451 var_pexprnode1
= var21
;
4452 var_node_list
= var_pexprnode1
;
4453 var22
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction264> */
4455 var23
= nitc___nitc__Parser___go_to(var_p
, var22
);
4458 nitc___nitc__Parser___push(var_p
, var23
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
4462 /* method parser$ReduceAction265$action for (self: ReduceAction265, Parser) */
4463 void nitc__parser___nitc__parser__ReduceAction265___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4464 val
* var_p
/* var p: Parser */;
4465 val
* var_node_list
/* var node_list: nullable Object */;
4466 val
* var
/* : nullable Object */;
4467 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
4468 val
* var1
/* : nullable Object */;
4469 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4470 val
* var2
/* : nullable Object */;
4471 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4472 val
* var3
/* : nullable Object */;
4473 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4474 val
* var4
/* : nullable Object */;
4475 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4476 val
* var5
/* : nullable Object */;
4477 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4478 val
* var6
/* : nullable Object */;
4479 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4480 val
* var7
/* : nullable Object */;
4481 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4482 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4483 short int var8
/* : Bool */;
4486 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4487 short int var9
/* : Bool */;
4490 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
4491 short int var12
/* : Bool */;
4494 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
4495 short int var15
/* : Bool */;
4498 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
4499 short int var18
/* : Bool */;
4502 val
* var21
/* : AIfExpr */;
4503 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4504 long var22
/* : Int */;
4505 long var23
/* : Int */;
4507 var_node_list
= ((val
*)NULL
);
4509 var
= nitc___nitc__Parser___pop(var_p
);
4511 var_nodearraylist8
= var
;
4513 var1
= nitc___nitc__Parser___pop(var_p
);
4515 var_nodearraylist7
= var1
;
4517 var2
= nitc___nitc__Parser___pop(var_p
);
4519 var_nodearraylist6
= var2
;
4521 var3
= nitc___nitc__Parser___pop(var_p
);
4523 var_nodearraylist5
= var3
;
4525 var4
= nitc___nitc__Parser___pop(var_p
);
4527 var_nodearraylist4
= var4
;
4529 var5
= nitc___nitc__Parser___pop(var_p
);
4531 var_nodearraylist3
= var5
;
4533 var6
= nitc___nitc__Parser___pop(var_p
);
4535 var_nodearraylist2
= var6
;
4537 var7
= nitc___nitc__Parser___pop(var_p
);
4539 var_nodearraylist1
= var7
;
4540 var_tkwifnode2
= var_nodearraylist1
;
4541 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4542 cltype
= type_nullable__nitc__TKwif
.color
;
4543 idtype
= type_nullable__nitc__TKwif
.id
;
4544 if(var_tkwifnode2
== NULL
) {
4547 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
4550 var8
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
4553 if (unlikely(!var8
)) {
4554 if(catchStack
.cursor
>= 0){
4555 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4557 PRINT_ERROR("Runtime error: %s", "Assert failed");
4558 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7899);
4561 var_pexprnode3
= var_nodearraylist3
;
4562 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4563 cltype10
= type_nullable__nitc__AExpr
.color
;
4564 idtype11
= type_nullable__nitc__AExpr
.id
;
4565 if(var_pexprnode3
== NULL
) {
4568 if(cltype10
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
4571 var9
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype10
] == idtype11
;
4574 if (unlikely(!var9
)) {
4575 if(catchStack
.cursor
>= 0){
4576 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4578 PRINT_ERROR("Runtime error: %s", "Assert failed");
4579 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7901);
4582 var_tkwthennode4
= var_nodearraylist5
;
4583 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
4584 cltype13
= type_nullable__nitc__TKwthen
.color
;
4585 idtype14
= type_nullable__nitc__TKwthen
.id
;
4586 if(var_tkwthennode4
== NULL
) {
4589 if(cltype13
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
4592 var12
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype13
] == idtype14
;
4595 if (unlikely(!var12
)) {
4596 if(catchStack
.cursor
>= 0){
4597 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4599 PRINT_ERROR("Runtime error: %s", "Assert failed");
4600 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7903);
4603 var_pexprnode5
= var_nodearraylist7
;
4604 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
4605 cltype16
= type_nullable__nitc__AExpr
.color
;
4606 idtype17
= type_nullable__nitc__AExpr
.id
;
4607 if(var_pexprnode5
== NULL
) {
4610 if(cltype16
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
4613 var15
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype16
] == idtype17
;
4616 if (unlikely(!var15
)) {
4617 if(catchStack
.cursor
>= 0){
4618 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4620 PRINT_ERROR("Runtime error: %s", "Assert failed");
4621 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7905);
4624 var_pexprnode7
= var_nodearraylist8
;
4625 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
4626 cltype19
= type_nullable__nitc__AExpr
.color
;
4627 idtype20
= type_nullable__nitc__AExpr
.id
;
4628 if(var_pexprnode7
== NULL
) {
4631 if(cltype19
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
4634 var18
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype19
] == idtype20
;
4637 if (unlikely(!var18
)) {
4638 if(catchStack
.cursor
>= 0){
4639 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4641 PRINT_ERROR("Runtime error: %s", "Assert failed");
4642 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7907);
4645 var21
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
4647 nitc__parser_prod___AIfExpr___init_aifexpr(var21
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, var_pexprnode5
, ((val
*)NULL
), var_pexprnode7
); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var21:AIfExpr>*/
4649 var_pexprnode1
= var21
;
4650 var_node_list
= var_pexprnode1
;
4651 var22
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction265> */
4653 var23
= nitc___nitc__Parser___go_to(var_p
, var22
);
4656 nitc___nitc__Parser___push(var_p
, var23
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
4660 /* method parser$ReduceAction266$action for (self: ReduceAction266, Parser) */
4661 void nitc__parser___nitc__parser__ReduceAction266___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4662 val
* var_p
/* var p: Parser */;
4663 val
* var_node_list
/* var node_list: nullable Object */;
4664 val
* var
/* : nullable Object */;
4665 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4666 val
* var1
/* : nullable Object */;
4667 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4668 val
* var2
/* : nullable Object */;
4669 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4670 val
* var3
/* : nullable Object */;
4671 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4672 val
* var4
/* : nullable Object */;
4673 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4674 val
* var5
/* : nullable Object */;
4675 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4676 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4677 short int var6
/* : Bool */;
4680 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4681 short int var7
/* : Bool */;
4684 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
4685 short int var10
/* : Bool */;
4688 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
4689 short int var13
/* : Bool */;
4692 val
* var16
/* : AIfExpr */;
4693 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4694 long var17
/* : Int */;
4695 long var18
/* : Int */;
4697 var_node_list
= ((val
*)NULL
);
4699 var
= nitc___nitc__Parser___pop(var_p
);
4701 var_nodearraylist6
= var
;
4703 var1
= nitc___nitc__Parser___pop(var_p
);
4705 var_nodearraylist5
= var1
;
4707 var2
= nitc___nitc__Parser___pop(var_p
);
4709 var_nodearraylist4
= var2
;
4711 var3
= nitc___nitc__Parser___pop(var_p
);
4713 var_nodearraylist3
= var3
;
4715 var4
= nitc___nitc__Parser___pop(var_p
);
4717 var_nodearraylist2
= var4
;
4719 var5
= nitc___nitc__Parser___pop(var_p
);
4721 var_nodearraylist1
= var5
;
4722 var_tkwifnode2
= var_nodearraylist1
;
4723 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4724 cltype
= type_nullable__nitc__TKwif
.color
;
4725 idtype
= type_nullable__nitc__TKwif
.id
;
4726 if(var_tkwifnode2
== NULL
) {
4729 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
4732 var6
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
4735 if (unlikely(!var6
)) {
4736 if(catchStack
.cursor
>= 0){
4737 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4739 PRINT_ERROR("Runtime error: %s", "Assert failed");
4740 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7932);
4743 var_pexprnode3
= var_nodearraylist3
;
4744 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4745 cltype8
= type_nullable__nitc__AExpr
.color
;
4746 idtype9
= type_nullable__nitc__AExpr
.id
;
4747 if(var_pexprnode3
== NULL
) {
4750 if(cltype8
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
4753 var7
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype8
] == idtype9
;
4756 if (unlikely(!var7
)) {
4757 if(catchStack
.cursor
>= 0){
4758 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4760 PRINT_ERROR("Runtime error: %s", "Assert failed");
4761 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7934);
4764 var_tkwthennode4
= var_nodearraylist5
;
4765 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
4766 cltype11
= type_nullable__nitc__TKwthen
.color
;
4767 idtype12
= type_nullable__nitc__TKwthen
.id
;
4768 if(var_tkwthennode4
== NULL
) {
4771 if(cltype11
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
4774 var10
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype11
] == idtype12
;
4777 if (unlikely(!var10
)) {
4778 if(catchStack
.cursor
>= 0){
4779 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4781 PRINT_ERROR("Runtime error: %s", "Assert failed");
4782 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7936);
4785 var_pexprnode7
= var_nodearraylist6
;
4786 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
4787 cltype14
= type_nullable__nitc__AExpr
.color
;
4788 idtype15
= type_nullable__nitc__AExpr
.id
;
4789 if(var_pexprnode7
== NULL
) {
4792 if(cltype14
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
4795 var13
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype14
] == idtype15
;
4798 if (unlikely(!var13
)) {
4799 if(catchStack
.cursor
>= 0){
4800 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4802 PRINT_ERROR("Runtime error: %s", "Assert failed");
4803 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7938);
4806 var16
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
4808 nitc__parser_prod___AIfExpr___init_aifexpr(var16
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, ((val
*)NULL
), ((val
*)NULL
), var_pexprnode7
); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var16:AIfExpr>*/
4810 var_pexprnode1
= var16
;
4811 var_node_list
= var_pexprnode1
;
4812 var17
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction266> */
4814 var18
= nitc___nitc__Parser___go_to(var_p
, var17
);
4817 nitc___nitc__Parser___push(var_p
, var18
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
4821 /* method parser$ReduceAction267$action for (self: ReduceAction267, Parser) */
4822 void nitc__parser___nitc__parser__ReduceAction267___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4823 val
* var_p
/* var p: Parser */;
4824 val
* var_node_list
/* var node_list: nullable Object */;
4825 val
* var
/* : nullable Object */;
4826 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
4827 val
* var1
/* : nullable Object */;
4828 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
4829 val
* var2
/* : nullable Object */;
4830 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
4831 val
* var3
/* : nullable Object */;
4832 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
4833 val
* var4
/* : nullable Object */;
4834 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4835 val
* var5
/* : nullable Object */;
4836 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4837 val
* var6
/* : nullable Object */;
4838 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4839 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
4840 short int var7
/* : Bool */;
4843 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
4844 short int var8
/* : Bool */;
4847 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
4848 short int var11
/* : Bool */;
4851 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
4852 short int var14
/* : Bool */;
4855 val
* var17
/* : AIfExpr */;
4856 val
* var_pexprnode1
/* var pexprnode1: nullable AIfExpr */;
4857 long var18
/* : Int */;
4858 long var19
/* : Int */;
4860 var_node_list
= ((val
*)NULL
);
4862 var
= nitc___nitc__Parser___pop(var_p
);
4864 var_nodearraylist7
= var
;
4866 var1
= nitc___nitc__Parser___pop(var_p
);
4868 var_nodearraylist6
= var1
;
4870 var2
= nitc___nitc__Parser___pop(var_p
);
4872 var_nodearraylist5
= var2
;
4874 var3
= nitc___nitc__Parser___pop(var_p
);
4876 var_nodearraylist4
= var3
;
4878 var4
= nitc___nitc__Parser___pop(var_p
);
4880 var_nodearraylist3
= var4
;
4882 var5
= nitc___nitc__Parser___pop(var_p
);
4884 var_nodearraylist2
= var5
;
4886 var6
= nitc___nitc__Parser___pop(var_p
);
4888 var_nodearraylist1
= var6
;
4889 var_tkwifnode2
= var_nodearraylist1
;
4890 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
4891 cltype
= type_nullable__nitc__TKwif
.color
;
4892 idtype
= type_nullable__nitc__TKwif
.id
;
4893 if(var_tkwifnode2
== NULL
) {
4896 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
4899 var7
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
4902 if (unlikely(!var7
)) {
4903 if(catchStack
.cursor
>= 0){
4904 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4906 PRINT_ERROR("Runtime error: %s", "Assert failed");
4907 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7964);
4910 var_pexprnode3
= var_nodearraylist3
;
4911 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
4912 cltype9
= type_nullable__nitc__AExpr
.color
;
4913 idtype10
= type_nullable__nitc__AExpr
.id
;
4914 if(var_pexprnode3
== NULL
) {
4917 if(cltype9
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
4920 var8
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype9
] == idtype10
;
4923 if (unlikely(!var8
)) {
4924 if(catchStack
.cursor
>= 0){
4925 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4927 PRINT_ERROR("Runtime error: %s", "Assert failed");
4928 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7966);
4931 var_tkwthennode4
= var_nodearraylist5
;
4932 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
4933 cltype12
= type_nullable__nitc__TKwthen
.color
;
4934 idtype13
= type_nullable__nitc__TKwthen
.id
;
4935 if(var_tkwthennode4
== NULL
) {
4938 if(cltype12
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
4941 var11
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype12
] == idtype13
;
4944 if (unlikely(!var11
)) {
4945 if(catchStack
.cursor
>= 0){
4946 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4948 PRINT_ERROR("Runtime error: %s", "Assert failed");
4949 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7968);
4952 var_pexprnode7
= var_nodearraylist7
;
4953 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
4954 cltype15
= type_nullable__nitc__AExpr
.color
;
4955 idtype16
= type_nullable__nitc__AExpr
.id
;
4956 if(var_pexprnode7
== NULL
) {
4959 if(cltype15
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
4962 var14
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype15
] == idtype16
;
4965 if (unlikely(!var14
)) {
4966 if(catchStack
.cursor
>= 0){
4967 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4969 PRINT_ERROR("Runtime error: %s", "Assert failed");
4970 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7970);
4973 var17
= NEW_nitc__AIfExpr(&type_nitc__AIfExpr
);
4975 nitc__parser_prod___AIfExpr___init_aifexpr(var17
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, ((val
*)NULL
), ((val
*)NULL
), var_pexprnode7
); /* Direct call parser_prod$AIfExpr$init_aifexpr on <var17:AIfExpr>*/
4977 var_pexprnode1
= var17
;
4978 var_node_list
= var_pexprnode1
;
4979 var18
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction267> */
4981 var19
= nitc___nitc__Parser___go_to(var_p
, var18
);
4984 nitc___nitc__Parser___push(var_p
, var19
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
4988 /* method parser$ReduceAction269$action for (self: ReduceAction269, Parser) */
4989 void nitc__parser___nitc__parser__ReduceAction269___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
4990 val
* var_p
/* var p: Parser */;
4991 val
* var_node_list
/* var node_list: nullable Object */;
4992 val
* var
/* : nullable Object */;
4993 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
4994 val
* var1
/* : nullable Object */;
4995 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
4996 val
* var2
/* : nullable Object */;
4997 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
4998 val
* var_tkwloopnode2
/* var tkwloopnode2: nullable Object */;
4999 short int var3
/* : Bool */;
5002 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5003 short int var4
/* : Bool */;
5006 val
* var_plabelnode4
/* var plabelnode4: nullable Object */;
5007 short int var7
/* : Bool */;
5010 val
* var10
/* : ALoopExpr */;
5011 val
* var_pexprnode1
/* var pexprnode1: nullable ALoopExpr */;
5012 long var11
/* : Int */;
5013 long var12
/* : Int */;
5015 var_node_list
= ((val
*)NULL
);
5017 var
= nitc___nitc__Parser___pop(var_p
);
5019 var_nodearraylist3
= var
;
5021 var1
= nitc___nitc__Parser___pop(var_p
);
5023 var_nodearraylist2
= var1
;
5025 var2
= nitc___nitc__Parser___pop(var_p
);
5027 var_nodearraylist1
= var2
;
5028 var_tkwloopnode2
= var_nodearraylist1
;
5029 /* <var_tkwloopnode2:nullable Object> isa nullable TKwloop */
5030 cltype
= type_nullable__nitc__TKwloop
.color
;
5031 idtype
= type_nullable__nitc__TKwloop
.id
;
5032 if(var_tkwloopnode2
== NULL
) {
5035 if(cltype
>= (((long)var_tkwloopnode2
&3)?type_info
[((long)var_tkwloopnode2
&3)]:var_tkwloopnode2
->type
)->table_size
) {
5038 var3
= (((long)var_tkwloopnode2
&3)?type_info
[((long)var_tkwloopnode2
&3)]:var_tkwloopnode2
->type
)->type_table
[cltype
] == idtype
;
5041 if (unlikely(!var3
)) {
5042 if(catchStack
.cursor
>= 0){
5043 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5045 PRINT_ERROR("Runtime error: %s", "Assert failed");
5046 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7992);
5049 var_pexprnode3
= var_nodearraylist2
;
5050 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5051 cltype5
= type_nullable__nitc__AExpr
.color
;
5052 idtype6
= type_nullable__nitc__AExpr
.id
;
5053 if(var_pexprnode3
== NULL
) {
5056 if(cltype5
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
5059 var4
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype5
] == idtype6
;
5062 if (unlikely(!var4
)) {
5063 if(catchStack
.cursor
>= 0){
5064 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5066 PRINT_ERROR("Runtime error: %s", "Assert failed");
5067 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7994);
5070 var_plabelnode4
= var_nodearraylist3
;
5071 /* <var_plabelnode4:nullable Object> isa nullable ALabel */
5072 cltype8
= type_nullable__nitc__ALabel
.color
;
5073 idtype9
= type_nullable__nitc__ALabel
.id
;
5074 if(var_plabelnode4
== NULL
) {
5077 if(cltype8
>= (((long)var_plabelnode4
&3)?type_info
[((long)var_plabelnode4
&3)]:var_plabelnode4
->type
)->table_size
) {
5080 var7
= (((long)var_plabelnode4
&3)?type_info
[((long)var_plabelnode4
&3)]:var_plabelnode4
->type
)->type_table
[cltype8
] == idtype9
;
5083 if (unlikely(!var7
)) {
5084 if(catchStack
.cursor
>= 0){
5085 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5087 PRINT_ERROR("Runtime error: %s", "Assert failed");
5088 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 7996);
5091 var10
= NEW_nitc__ALoopExpr(&type_nitc__ALoopExpr
);
5093 nitc__parser_prod___ALoopExpr___init_aloopexpr(var10
, var_tkwloopnode2
, var_pexprnode3
, var_plabelnode4
); /* Direct call parser_prod$ALoopExpr$init_aloopexpr on <var10:ALoopExpr>*/
5095 var_pexprnode1
= var10
;
5096 var_node_list
= var_pexprnode1
;
5097 var11
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction269> */
5099 var12
= nitc___nitc__Parser___go_to(var_p
, var11
);
5102 nitc___nitc__Parser___push(var_p
, var12
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
5106 /* method parser$ReduceAction270$action for (self: ReduceAction270, Parser) */
5107 void nitc__parser___nitc__parser__ReduceAction270___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5108 val
* var_p
/* var p: Parser */;
5109 val
* var_node_list
/* var node_list: nullable Object */;
5110 val
* var
/* : nullable Object */;
5111 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5112 val
* var1
/* : nullable Object */;
5113 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5114 val
* var_tkwloopnode2
/* var tkwloopnode2: nullable Object */;
5115 short int var2
/* : Bool */;
5118 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5119 short int var3
/* : Bool */;
5122 val
* var6
/* : ALoopExpr */;
5123 val
* var_pexprnode1
/* var pexprnode1: nullable ALoopExpr */;
5124 long var7
/* : Int */;
5125 long var8
/* : Int */;
5127 var_node_list
= ((val
*)NULL
);
5129 var
= nitc___nitc__Parser___pop(var_p
);
5131 var_nodearraylist2
= var
;
5133 var1
= nitc___nitc__Parser___pop(var_p
);
5135 var_nodearraylist1
= var1
;
5136 var_tkwloopnode2
= var_nodearraylist1
;
5137 /* <var_tkwloopnode2:nullable Object> isa nullable TKwloop */
5138 cltype
= type_nullable__nitc__TKwloop
.color
;
5139 idtype
= type_nullable__nitc__TKwloop
.id
;
5140 if(var_tkwloopnode2
== NULL
) {
5143 if(cltype
>= (((long)var_tkwloopnode2
&3)?type_info
[((long)var_tkwloopnode2
&3)]:var_tkwloopnode2
->type
)->table_size
) {
5146 var2
= (((long)var_tkwloopnode2
&3)?type_info
[((long)var_tkwloopnode2
&3)]:var_tkwloopnode2
->type
)->type_table
[cltype
] == idtype
;
5149 if (unlikely(!var2
)) {
5150 if(catchStack
.cursor
>= 0){
5151 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5153 PRINT_ERROR("Runtime error: %s", "Assert failed");
5154 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8014);
5157 var_pexprnode3
= var_nodearraylist2
;
5158 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5159 cltype4
= type_nullable__nitc__AExpr
.color
;
5160 idtype5
= type_nullable__nitc__AExpr
.id
;
5161 if(var_pexprnode3
== NULL
) {
5164 if(cltype4
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
5167 var3
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype4
] == idtype5
;
5170 if (unlikely(!var3
)) {
5171 if(catchStack
.cursor
>= 0){
5172 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5174 PRINT_ERROR("Runtime error: %s", "Assert failed");
5175 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8016);
5178 var6
= NEW_nitc__ALoopExpr(&type_nitc__ALoopExpr
);
5180 nitc__parser_prod___ALoopExpr___init_aloopexpr(var6
, var_tkwloopnode2
, var_pexprnode3
, ((val
*)NULL
)); /* Direct call parser_prod$ALoopExpr$init_aloopexpr on <var6:ALoopExpr>*/
5182 var_pexprnode1
= var6
;
5183 var_node_list
= var_pexprnode1
;
5184 var7
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction270> */
5186 var8
= nitc___nitc__Parser___go_to(var_p
, var7
);
5189 nitc___nitc__Parser___push(var_p
, var8
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
5193 /* method parser$ReduceAction271$action for (self: ReduceAction271, Parser) */
5194 void nitc__parser___nitc__parser__ReduceAction271___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5195 val
* var_p
/* var p: Parser */;
5196 val
* var_node_list
/* var node_list: nullable Object */;
5197 val
* var
/* : nullable Object */;
5198 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5199 val
* var1
/* : nullable Object */;
5200 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5201 val
* var2
/* : nullable Object */;
5202 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5203 val
* var3
/* : nullable Object */;
5204 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5205 val
* var4
/* : nullable Object */;
5206 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5207 val
* var5
/* : nullable Object */;
5208 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5209 val
* var6
/* : nullable Object */;
5210 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5211 val
* var_tkwwhilenode2
/* var tkwwhilenode2: nullable Object */;
5212 short int var7
/* : Bool */;
5215 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5216 short int var8
/* : Bool */;
5219 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
5220 short int var11
/* : Bool */;
5223 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5224 short int var14
/* : Bool */;
5227 val
* var_plabelnode6
/* var plabelnode6: nullable Object */;
5228 short int var17
/* : Bool */;
5231 val
* var20
/* : AWhileExpr */;
5232 val
* var_pexprnode1
/* var pexprnode1: nullable AWhileExpr */;
5233 long var21
/* : Int */;
5234 long var22
/* : Int */;
5236 var_node_list
= ((val
*)NULL
);
5238 var
= nitc___nitc__Parser___pop(var_p
);
5240 var_nodearraylist7
= var
;
5242 var1
= nitc___nitc__Parser___pop(var_p
);
5244 var_nodearraylist6
= var1
;
5246 var2
= nitc___nitc__Parser___pop(var_p
);
5248 var_nodearraylist5
= var2
;
5250 var3
= nitc___nitc__Parser___pop(var_p
);
5252 var_nodearraylist4
= var3
;
5254 var4
= nitc___nitc__Parser___pop(var_p
);
5256 var_nodearraylist3
= var4
;
5258 var5
= nitc___nitc__Parser___pop(var_p
);
5260 var_nodearraylist2
= var5
;
5262 var6
= nitc___nitc__Parser___pop(var_p
);
5264 var_nodearraylist1
= var6
;
5265 var_tkwwhilenode2
= var_nodearraylist1
;
5266 /* <var_tkwwhilenode2:nullable Object> isa nullable TKwwhile */
5267 cltype
= type_nullable__nitc__TKwwhile
.color
;
5268 idtype
= type_nullable__nitc__TKwwhile
.id
;
5269 if(var_tkwwhilenode2
== NULL
) {
5272 if(cltype
>= (((long)var_tkwwhilenode2
&3)?type_info
[((long)var_tkwwhilenode2
&3)]:var_tkwwhilenode2
->type
)->table_size
) {
5275 var7
= (((long)var_tkwwhilenode2
&3)?type_info
[((long)var_tkwwhilenode2
&3)]:var_tkwwhilenode2
->type
)->type_table
[cltype
] == idtype
;
5278 if (unlikely(!var7
)) {
5279 if(catchStack
.cursor
>= 0){
5280 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5282 PRINT_ERROR("Runtime error: %s", "Assert failed");
5283 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8039);
5286 var_pexprnode3
= var_nodearraylist3
;
5287 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5288 cltype9
= type_nullable__nitc__AExpr
.color
;
5289 idtype10
= type_nullable__nitc__AExpr
.id
;
5290 if(var_pexprnode3
== NULL
) {
5293 if(cltype9
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
5296 var8
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype9
] == idtype10
;
5299 if (unlikely(!var8
)) {
5300 if(catchStack
.cursor
>= 0){
5301 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5303 PRINT_ERROR("Runtime error: %s", "Assert failed");
5304 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8041);
5307 var_tkwdonode4
= var_nodearraylist5
;
5308 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
5309 cltype12
= type_nullable__nitc__TKwdo
.color
;
5310 idtype13
= type_nullable__nitc__TKwdo
.id
;
5311 if(var_tkwdonode4
== NULL
) {
5314 if(cltype12
>= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->table_size
) {
5317 var11
= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->type_table
[cltype12
] == idtype13
;
5320 if (unlikely(!var11
)) {
5321 if(catchStack
.cursor
>= 0){
5322 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5324 PRINT_ERROR("Runtime error: %s", "Assert failed");
5325 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8043);
5328 var_pexprnode5
= var_nodearraylist6
;
5329 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5330 cltype15
= type_nullable__nitc__AExpr
.color
;
5331 idtype16
= type_nullable__nitc__AExpr
.id
;
5332 if(var_pexprnode5
== NULL
) {
5335 if(cltype15
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
5338 var14
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype15
] == idtype16
;
5341 if (unlikely(!var14
)) {
5342 if(catchStack
.cursor
>= 0){
5343 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5345 PRINT_ERROR("Runtime error: %s", "Assert failed");
5346 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8045);
5349 var_plabelnode6
= var_nodearraylist7
;
5350 /* <var_plabelnode6:nullable Object> isa nullable ALabel */
5351 cltype18
= type_nullable__nitc__ALabel
.color
;
5352 idtype19
= type_nullable__nitc__ALabel
.id
;
5353 if(var_plabelnode6
== NULL
) {
5356 if(cltype18
>= (((long)var_plabelnode6
&3)?type_info
[((long)var_plabelnode6
&3)]:var_plabelnode6
->type
)->table_size
) {
5359 var17
= (((long)var_plabelnode6
&3)?type_info
[((long)var_plabelnode6
&3)]:var_plabelnode6
->type
)->type_table
[cltype18
] == idtype19
;
5362 if (unlikely(!var17
)) {
5363 if(catchStack
.cursor
>= 0){
5364 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5366 PRINT_ERROR("Runtime error: %s", "Assert failed");
5367 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8047);
5370 var20
= NEW_nitc__AWhileExpr(&type_nitc__AWhileExpr
);
5372 nitc__parser_prod___AWhileExpr___init_awhileexpr(var20
, var_tkwwhilenode2
, var_pexprnode3
, var_tkwdonode4
, var_pexprnode5
, var_plabelnode6
); /* Direct call parser_prod$AWhileExpr$init_awhileexpr on <var20:AWhileExpr>*/
5374 var_pexprnode1
= var20
;
5375 var_node_list
= var_pexprnode1
;
5376 var21
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction271> */
5378 var22
= nitc___nitc__Parser___go_to(var_p
, var21
);
5381 nitc___nitc__Parser___push(var_p
, var22
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
5385 /* method parser$ReduceAction272$action for (self: ReduceAction272, Parser) */
5386 void nitc__parser___nitc__parser__ReduceAction272___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5387 val
* var_p
/* var p: Parser */;
5388 val
* var_node_list
/* var node_list: nullable Object */;
5389 val
* var
/* : nullable Object */;
5390 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5391 val
* var1
/* : nullable Object */;
5392 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5393 val
* var2
/* : nullable Object */;
5394 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5395 val
* var3
/* : nullable Object */;
5396 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5397 val
* var4
/* : nullable Object */;
5398 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5399 val
* var5
/* : nullable Object */;
5400 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5401 val
* var_tkwwhilenode2
/* var tkwwhilenode2: nullable Object */;
5402 short int var6
/* : Bool */;
5405 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
5406 short int var7
/* : Bool */;
5409 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
5410 short int var10
/* : Bool */;
5413 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
5414 short int var13
/* : Bool */;
5417 val
* var16
/* : AWhileExpr */;
5418 val
* var_pexprnode1
/* var pexprnode1: nullable AWhileExpr */;
5419 long var17
/* : Int */;
5420 long var18
/* : Int */;
5422 var_node_list
= ((val
*)NULL
);
5424 var
= nitc___nitc__Parser___pop(var_p
);
5426 var_nodearraylist6
= var
;
5428 var1
= nitc___nitc__Parser___pop(var_p
);
5430 var_nodearraylist5
= var1
;
5432 var2
= nitc___nitc__Parser___pop(var_p
);
5434 var_nodearraylist4
= var2
;
5436 var3
= nitc___nitc__Parser___pop(var_p
);
5438 var_nodearraylist3
= var3
;
5440 var4
= nitc___nitc__Parser___pop(var_p
);
5442 var_nodearraylist2
= var4
;
5444 var5
= nitc___nitc__Parser___pop(var_p
);
5446 var_nodearraylist1
= var5
;
5447 var_tkwwhilenode2
= var_nodearraylist1
;
5448 /* <var_tkwwhilenode2:nullable Object> isa nullable TKwwhile */
5449 cltype
= type_nullable__nitc__TKwwhile
.color
;
5450 idtype
= type_nullable__nitc__TKwwhile
.id
;
5451 if(var_tkwwhilenode2
== NULL
) {
5454 if(cltype
>= (((long)var_tkwwhilenode2
&3)?type_info
[((long)var_tkwwhilenode2
&3)]:var_tkwwhilenode2
->type
)->table_size
) {
5457 var6
= (((long)var_tkwwhilenode2
&3)?type_info
[((long)var_tkwwhilenode2
&3)]:var_tkwwhilenode2
->type
)->type_table
[cltype
] == idtype
;
5460 if (unlikely(!var6
)) {
5461 if(catchStack
.cursor
>= 0){
5462 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5464 PRINT_ERROR("Runtime error: %s", "Assert failed");
5465 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8071);
5468 var_pexprnode3
= var_nodearraylist3
;
5469 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
5470 cltype8
= type_nullable__nitc__AExpr
.color
;
5471 idtype9
= type_nullable__nitc__AExpr
.id
;
5472 if(var_pexprnode3
== NULL
) {
5475 if(cltype8
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
5478 var7
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype8
] == idtype9
;
5481 if (unlikely(!var7
)) {
5482 if(catchStack
.cursor
>= 0){
5483 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5485 PRINT_ERROR("Runtime error: %s", "Assert failed");
5486 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8073);
5489 var_tkwdonode4
= var_nodearraylist5
;
5490 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
5491 cltype11
= type_nullable__nitc__TKwdo
.color
;
5492 idtype12
= type_nullable__nitc__TKwdo
.id
;
5493 if(var_tkwdonode4
== NULL
) {
5496 if(cltype11
>= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->table_size
) {
5499 var10
= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->type_table
[cltype11
] == idtype12
;
5502 if (unlikely(!var10
)) {
5503 if(catchStack
.cursor
>= 0){
5504 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5506 PRINT_ERROR("Runtime error: %s", "Assert failed");
5507 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8075);
5510 var_pexprnode5
= var_nodearraylist6
;
5511 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
5512 cltype14
= type_nullable__nitc__AExpr
.color
;
5513 idtype15
= type_nullable__nitc__AExpr
.id
;
5514 if(var_pexprnode5
== NULL
) {
5517 if(cltype14
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
5520 var13
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype14
] == idtype15
;
5523 if (unlikely(!var13
)) {
5524 if(catchStack
.cursor
>= 0){
5525 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5527 PRINT_ERROR("Runtime error: %s", "Assert failed");
5528 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8077);
5531 var16
= NEW_nitc__AWhileExpr(&type_nitc__AWhileExpr
);
5533 nitc__parser_prod___AWhileExpr___init_awhileexpr(var16
, var_tkwwhilenode2
, var_pexprnode3
, var_tkwdonode4
, var_pexprnode5
, ((val
*)NULL
)); /* Direct call parser_prod$AWhileExpr$init_awhileexpr on <var16:AWhileExpr>*/
5535 var_pexprnode1
= var16
;
5536 var_node_list
= var_pexprnode1
;
5537 var17
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction272> */
5539 var18
= nitc___nitc__Parser___go_to(var_p
, var17
);
5542 nitc___nitc__Parser___push(var_p
, var18
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
5546 /* method parser$ReduceAction273$action for (self: ReduceAction273, Parser) */
5547 void nitc__parser___nitc__parser__ReduceAction273___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5548 val
* var_p
/* var p: Parser */;
5549 val
* var_node_list
/* var node_list: nullable Object */;
5550 val
* var
/* : nullable Object */;
5551 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
5552 val
* var1
/* : nullable Object */;
5553 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5554 val
* var2
/* : nullable Object */;
5555 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5556 val
* var3
/* : nullable Object */;
5557 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5558 val
* var4
/* : nullable Object */;
5559 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5560 val
* var5
/* : nullable Object */;
5561 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5562 val
* var6
/* : nullable Object */;
5563 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5564 val
* var7
/* : Array[Object] */;
5565 val
* var_listnode4
/* var listnode4: Array[Object] */;
5566 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
5567 short int var8
/* : Bool */;
5570 val
* var_listnode3
/* var listnode3: nullable Object */;
5571 short int var9
/* : Bool */;
5574 val
* var12
/* : Array[Object] */;
5575 val
* var_tkwdonode5
/* var tkwdonode5: nullable Object */;
5576 short int var13
/* : Bool */;
5579 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
5580 short int var16
/* : Bool */;
5583 val
* var_plabelnode7
/* var plabelnode7: nullable Object */;
5584 short int var19
/* : Bool */;
5587 val
* var22
/* : AForExpr */;
5588 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
5589 long var23
/* : Int */;
5590 long var24
/* : Int */;
5592 var_node_list
= ((val
*)NULL
);
5594 var
= nitc___nitc__Parser___pop(var_p
);
5596 var_nodearraylist7
= var
;
5598 var1
= nitc___nitc__Parser___pop(var_p
);
5600 var_nodearraylist6
= var1
;
5602 var2
= nitc___nitc__Parser___pop(var_p
);
5604 var_nodearraylist5
= var2
;
5606 var3
= nitc___nitc__Parser___pop(var_p
);
5608 var_nodearraylist4
= var3
;
5610 var4
= nitc___nitc__Parser___pop(var_p
);
5612 var_nodearraylist3
= var4
;
5614 var5
= nitc___nitc__Parser___pop(var_p
);
5616 var_nodearraylist2
= var5
;
5618 var6
= nitc___nitc__Parser___pop(var_p
);
5620 var_nodearraylist1
= var6
;
5621 var7
= NEW_core__Array(&type_core__Array__core__Object
);
5623 core___core__Array___core__kernel__Object__init(var7
); /* Direct call array$Array$init on <var7:Array[Object]>*/
5625 var_listnode4
= var7
;
5626 var_tkwfornode2
= var_nodearraylist1
;
5627 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
5628 cltype
= type_nullable__nitc__TKwfor
.color
;
5629 idtype
= type_nullable__nitc__TKwfor
.id
;
5630 if(var_tkwfornode2
== NULL
) {
5633 if(cltype
>= (((long)var_tkwfornode2
&3)?type_info
[((long)var_tkwfornode2
&3)]:var_tkwfornode2
->type
)->table_size
) {
5636 var8
= (((long)var_tkwfornode2
&3)?type_info
[((long)var_tkwfornode2
&3)]:var_tkwfornode2
->type
)->type_table
[cltype
] == idtype
;
5639 if (unlikely(!var8
)) {
5640 if(catchStack
.cursor
>= 0){
5641 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5643 PRINT_ERROR("Runtime error: %s", "Assert failed");
5644 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8103);
5647 var_listnode3
= var_nodearraylist3
;
5648 /* <var_listnode3:nullable Object> isa Array[Object] */
5649 cltype10
= type_core__Array__core__Object
.color
;
5650 idtype11
= type_core__Array__core__Object
.id
;
5651 if(var_listnode3
== NULL
) {
5654 if(cltype10
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
5657 var9
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype10
] == idtype11
;
5660 if (unlikely(!var9
)) {
5661 if(catchStack
.cursor
>= 0){
5662 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5664 PRINT_ERROR("Runtime error: %s", "Assert failed");
5665 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8105);
5669 var12
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
5671 var_listnode4
= var12
;
5672 var_tkwdonode5
= var_nodearraylist5
;
5673 /* <var_tkwdonode5:nullable Object> isa nullable TKwdo */
5674 cltype14
= type_nullable__nitc__TKwdo
.color
;
5675 idtype15
= type_nullable__nitc__TKwdo
.id
;
5676 if(var_tkwdonode5
== NULL
) {
5679 if(cltype14
>= (((long)var_tkwdonode5
&3)?type_info
[((long)var_tkwdonode5
&3)]:var_tkwdonode5
->type
)->table_size
) {
5682 var13
= (((long)var_tkwdonode5
&3)?type_info
[((long)var_tkwdonode5
&3)]:var_tkwdonode5
->type
)->type_table
[cltype14
] == idtype15
;
5685 if (unlikely(!var13
)) {
5686 if(catchStack
.cursor
>= 0){
5687 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5689 PRINT_ERROR("Runtime error: %s", "Assert failed");
5690 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8108);
5693 var_pexprnode6
= var_nodearraylist6
;
5694 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
5695 cltype17
= type_nullable__nitc__AExpr
.color
;
5696 idtype18
= type_nullable__nitc__AExpr
.id
;
5697 if(var_pexprnode6
== NULL
) {
5700 if(cltype17
>= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->table_size
) {
5703 var16
= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->type_table
[cltype17
] == idtype18
;
5706 if (unlikely(!var16
)) {
5707 if(catchStack
.cursor
>= 0){
5708 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5710 PRINT_ERROR("Runtime error: %s", "Assert failed");
5711 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8110);
5714 var_plabelnode7
= var_nodearraylist7
;
5715 /* <var_plabelnode7:nullable Object> isa nullable ALabel */
5716 cltype20
= type_nullable__nitc__ALabel
.color
;
5717 idtype21
= type_nullable__nitc__ALabel
.id
;
5718 if(var_plabelnode7
== NULL
) {
5721 if(cltype20
>= (((long)var_plabelnode7
&3)?type_info
[((long)var_plabelnode7
&3)]:var_plabelnode7
->type
)->table_size
) {
5724 var19
= (((long)var_plabelnode7
&3)?type_info
[((long)var_plabelnode7
&3)]:var_plabelnode7
->type
)->type_table
[cltype20
] == idtype21
;
5727 if (unlikely(!var19
)) {
5728 if(catchStack
.cursor
>= 0){
5729 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5731 PRINT_ERROR("Runtime error: %s", "Assert failed");
5732 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8112);
5735 var22
= NEW_nitc__AForExpr(&type_nitc__AForExpr
);
5737 nitc__parser_prod___AForExpr___init_aforexpr(var22
, var_tkwfornode2
, var_listnode4
, var_tkwdonode5
, var_pexprnode6
, var_plabelnode7
); /* Direct call parser_prod$AForExpr$init_aforexpr on <var22:AForExpr>*/
5739 var_pexprnode1
= var22
;
5740 var_node_list
= var_pexprnode1
;
5741 var23
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction273> */
5743 var24
= nitc___nitc__Parser___go_to(var_p
, var23
);
5746 nitc___nitc__Parser___push(var_p
, var24
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
5750 /* method parser$ReduceAction274$action for (self: ReduceAction274, Parser) */
5751 void nitc__parser___nitc__parser__ReduceAction274___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5752 val
* var_p
/* var p: Parser */;
5753 val
* var_node_list
/* var node_list: nullable Object */;
5754 val
* var
/* : nullable Object */;
5755 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
5756 val
* var1
/* : nullable Object */;
5757 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5758 val
* var2
/* : nullable Object */;
5759 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5760 val
* var3
/* : nullable Object */;
5761 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5762 val
* var4
/* : nullable Object */;
5763 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5764 val
* var5
/* : nullable Object */;
5765 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5766 val
* var6
/* : Array[Object] */;
5767 val
* var_listnode4
/* var listnode4: Array[Object] */;
5768 val
* var_tkwfornode2
/* var tkwfornode2: nullable Object */;
5769 short int var7
/* : Bool */;
5772 val
* var_listnode3
/* var listnode3: nullable Object */;
5773 short int var8
/* : Bool */;
5776 val
* var11
/* : Array[Object] */;
5777 val
* var_tkwdonode5
/* var tkwdonode5: nullable Object */;
5778 short int var12
/* : Bool */;
5781 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
5782 short int var15
/* : Bool */;
5785 val
* var18
/* : AForExpr */;
5786 val
* var_pexprnode1
/* var pexprnode1: nullable AForExpr */;
5787 long var19
/* : Int */;
5788 long var20
/* : Int */;
5790 var_node_list
= ((val
*)NULL
);
5792 var
= nitc___nitc__Parser___pop(var_p
);
5794 var_nodearraylist6
= var
;
5796 var1
= nitc___nitc__Parser___pop(var_p
);
5798 var_nodearraylist5
= var1
;
5800 var2
= nitc___nitc__Parser___pop(var_p
);
5802 var_nodearraylist4
= var2
;
5804 var3
= nitc___nitc__Parser___pop(var_p
);
5806 var_nodearraylist3
= var3
;
5808 var4
= nitc___nitc__Parser___pop(var_p
);
5810 var_nodearraylist2
= var4
;
5812 var5
= nitc___nitc__Parser___pop(var_p
);
5814 var_nodearraylist1
= var5
;
5815 var6
= NEW_core__Array(&type_core__Array__core__Object
);
5817 core___core__Array___core__kernel__Object__init(var6
); /* Direct call array$Array$init on <var6:Array[Object]>*/
5819 var_listnode4
= var6
;
5820 var_tkwfornode2
= var_nodearraylist1
;
5821 /* <var_tkwfornode2:nullable Object> isa nullable TKwfor */
5822 cltype
= type_nullable__nitc__TKwfor
.color
;
5823 idtype
= type_nullable__nitc__TKwfor
.id
;
5824 if(var_tkwfornode2
== NULL
) {
5827 if(cltype
>= (((long)var_tkwfornode2
&3)?type_info
[((long)var_tkwfornode2
&3)]:var_tkwfornode2
->type
)->table_size
) {
5830 var7
= (((long)var_tkwfornode2
&3)?type_info
[((long)var_tkwfornode2
&3)]:var_tkwfornode2
->type
)->type_table
[cltype
] == idtype
;
5833 if (unlikely(!var7
)) {
5834 if(catchStack
.cursor
>= 0){
5835 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5837 PRINT_ERROR("Runtime error: %s", "Assert failed");
5838 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8137);
5841 var_listnode3
= var_nodearraylist3
;
5842 /* <var_listnode3:nullable Object> isa Array[Object] */
5843 cltype9
= type_core__Array__core__Object
.color
;
5844 idtype10
= type_core__Array__core__Object
.id
;
5845 if(var_listnode3
== NULL
) {
5848 if(cltype9
>= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->table_size
) {
5851 var8
= (((long)var_listnode3
&3)?type_info
[((long)var_listnode3
&3)]:var_listnode3
->type
)->type_table
[cltype9
] == idtype10
;
5854 if (unlikely(!var8
)) {
5855 if(catchStack
.cursor
>= 0){
5856 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5858 PRINT_ERROR("Runtime error: %s", "Assert failed");
5859 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8139);
5863 var11
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode4
, var_listnode3
);
5865 var_listnode4
= var11
;
5866 var_tkwdonode5
= var_nodearraylist5
;
5867 /* <var_tkwdonode5:nullable Object> isa nullable TKwdo */
5868 cltype13
= type_nullable__nitc__TKwdo
.color
;
5869 idtype14
= type_nullable__nitc__TKwdo
.id
;
5870 if(var_tkwdonode5
== NULL
) {
5873 if(cltype13
>= (((long)var_tkwdonode5
&3)?type_info
[((long)var_tkwdonode5
&3)]:var_tkwdonode5
->type
)->table_size
) {
5876 var12
= (((long)var_tkwdonode5
&3)?type_info
[((long)var_tkwdonode5
&3)]:var_tkwdonode5
->type
)->type_table
[cltype13
] == idtype14
;
5879 if (unlikely(!var12
)) {
5880 if(catchStack
.cursor
>= 0){
5881 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5883 PRINT_ERROR("Runtime error: %s", "Assert failed");
5884 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8142);
5887 var_pexprnode6
= var_nodearraylist6
;
5888 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
5889 cltype16
= type_nullable__nitc__AExpr
.color
;
5890 idtype17
= type_nullable__nitc__AExpr
.id
;
5891 if(var_pexprnode6
== NULL
) {
5894 if(cltype16
>= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->table_size
) {
5897 var15
= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->type_table
[cltype16
] == idtype17
;
5900 if (unlikely(!var15
)) {
5901 if(catchStack
.cursor
>= 0){
5902 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5904 PRINT_ERROR("Runtime error: %s", "Assert failed");
5905 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8144);
5908 var18
= NEW_nitc__AForExpr(&type_nitc__AForExpr
);
5910 nitc__parser_prod___AForExpr___init_aforexpr(var18
, var_tkwfornode2
, var_listnode4
, var_tkwdonode5
, var_pexprnode6
, ((val
*)NULL
)); /* Direct call parser_prod$AForExpr$init_aforexpr on <var18:AForExpr>*/
5912 var_pexprnode1
= var18
;
5913 var_node_list
= var_pexprnode1
;
5914 var19
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction274> */
5916 var20
= nitc___nitc__Parser___go_to(var_p
, var19
);
5919 nitc___nitc__Parser___push(var_p
, var20
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
5923 /* method parser$ReduceAction275$action for (self: ReduceAction275, Parser) */
5924 void nitc__parser___nitc__parser__ReduceAction275___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5925 val
* var_p
/* var p: Parser */;
5926 val
* var_node_list
/* var node_list: nullable Object */;
5927 val
* var
/* : nullable Object */;
5928 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5929 val
* var1
/* : Array[Object] */;
5930 val
* var_listnode2
/* var listnode2: Array[Object] */;
5931 val
* var_pforgroupnode1
/* var pforgroupnode1: nullable Object */;
5932 short int var2
/* : Bool */;
5933 short int var3
/* : Bool */;
5934 long var4
/* : Int */;
5935 long var5
/* : Int */;
5937 var_node_list
= ((val
*)NULL
);
5939 var
= nitc___nitc__Parser___pop(var_p
);
5941 var_nodearraylist1
= var
;
5942 var1
= NEW_core__Array(&type_core__Array__core__Object
);
5944 core___core__Array___core__kernel__Object__init(var1
); /* Direct call array$Array$init on <var1:Array[Object]>*/
5946 var_listnode2
= var1
;
5947 var_pforgroupnode1
= var_nodearraylist1
;
5948 if (var_pforgroupnode1
== NULL
) {
5949 var2
= 0; /* is null */
5951 var2
= 1; /* arg is null and recv is not */
5954 var3
= ((short int(*)(val
* self
, val
* p0
))((((long)var_pforgroupnode1
&3)?class_info
[((long)var_pforgroupnode1
&3)]:var_pforgroupnode1
->class)->vft
[COLOR_core__kernel__Object___33d_61d
]))(var_pforgroupnode1
, ((val
*)NULL
)); /* != on <var_pforgroupnode1:nullable Object>*/
5959 core___core__Array___core__abstract_collection__SimpleCollection__add(var_listnode2
, var_pforgroupnode1
); /* Direct call array$Array$add on <var_listnode2:Array[Object]>*/
5963 var_node_list
= var_listnode2
;
5964 var4
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction275> */
5966 var5
= nitc___nitc__Parser___go_to(var_p
, var4
);
5969 nitc___nitc__Parser___push(var_p
, var5
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
5973 /* method parser$ReduceAction276$action for (self: ReduceAction276, Parser) */
5974 void nitc__parser___nitc__parser__ReduceAction276___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
5975 val
* var_p
/* var p: Parser */;
5976 val
* var_node_list
/* var node_list: nullable Object */;
5977 val
* var
/* : nullable Object */;
5978 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
5979 val
* var1
/* : nullable Object */;
5980 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
5981 val
* var2
/* : nullable Object */;
5982 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
5983 val
* var3
/* : nullable Object */;
5984 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
5985 val
* var4
/* : nullable Object */;
5986 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
5987 val
* var5
/* : Array[Object] */;
5988 val
* var_listnode3
/* var listnode3: Array[Object] */;
5989 val
* var_listnode1
/* var listnode1: nullable Object */;
5990 short int var6
/* : Bool */;
5993 val
* var_pforgroupnode2
/* var pforgroupnode2: nullable Object */;
5994 val
* var7
/* : Array[Object] */;
5995 short int var8
/* : Bool */;
5996 short int var9
/* : Bool */;
5997 long var10
/* : Int */;
5998 long var11
/* : Int */;
6000 var_node_list
= ((val
*)NULL
);
6002 var
= nitc___nitc__Parser___pop(var_p
);
6004 var_nodearraylist5
= var
;
6006 var1
= nitc___nitc__Parser___pop(var_p
);
6008 var_nodearraylist4
= var1
;
6010 var2
= nitc___nitc__Parser___pop(var_p
);
6012 var_nodearraylist3
= var2
;
6014 var3
= nitc___nitc__Parser___pop(var_p
);
6016 var_nodearraylist2
= var3
;
6018 var4
= nitc___nitc__Parser___pop(var_p
);
6020 var_nodearraylist1
= var4
;
6021 var5
= NEW_core__Array(&type_core__Array__core__Object
);
6023 core___core__Array___core__kernel__Object__init(var5
); /* Direct call array$Array$init on <var5:Array[Object]>*/
6025 var_listnode3
= var5
;
6026 var_listnode1
= var_nodearraylist1
;
6027 /* <var_listnode1:nullable Object> isa Array[Object] */
6028 cltype
= type_core__Array__core__Object
.color
;
6029 idtype
= type_core__Array__core__Object
.id
;
6030 if(var_listnode1
== NULL
) {
6033 if(cltype
>= (((long)var_listnode1
&3)?type_info
[((long)var_listnode1
&3)]:var_listnode1
->type
)->table_size
) {
6036 var6
= (((long)var_listnode1
&3)?type_info
[((long)var_listnode1
&3)]:var_listnode1
->type
)->type_table
[cltype
] == idtype
;
6039 if (unlikely(!var6
)) {
6040 if(catchStack
.cursor
>= 0){
6041 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6043 PRINT_ERROR("Runtime error: %s", "Assert failed");
6044 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8183);
6047 var_pforgroupnode2
= var_nodearraylist5
;
6049 var7
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode3
, var_listnode1
);
6051 var_listnode3
= var7
;
6052 if (var_pforgroupnode2
== NULL
) {
6053 var8
= 0; /* is null */
6055 var8
= 1; /* arg is null and recv is not */
6058 var9
= ((short int(*)(val
* self
, val
* p0
))((((long)var_pforgroupnode2
&3)?class_info
[((long)var_pforgroupnode2
&3)]:var_pforgroupnode2
->class)->vft
[COLOR_core__kernel__Object___33d_61d
]))(var_pforgroupnode2
, ((val
*)NULL
)); /* != on <var_pforgroupnode2:nullable Object>*/
6063 core___core__Array___core__abstract_collection__SimpleCollection__add(var_listnode3
, var_pforgroupnode2
); /* Direct call array$Array$add on <var_listnode3:Array[Object]>*/
6067 var_node_list
= var_listnode3
;
6068 var10
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction276> */
6070 var11
= nitc___nitc__Parser___go_to(var_p
, var10
);
6073 nitc___nitc__Parser___push(var_p
, var11
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
6077 /* method parser$ReduceAction277$action for (self: ReduceAction277, Parser) */
6078 void nitc__parser___nitc__parser__ReduceAction277___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6079 val
* var_p
/* var p: Parser */;
6080 val
* var_node_list
/* var node_list: nullable Object */;
6081 val
* var
/* : nullable Object */;
6082 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6083 val
* var1
/* : nullable Object */;
6084 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6085 val
* var2
/* : nullable Object */;
6086 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6087 val
* var3
/* : nullable Object */;
6088 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6089 val
* var4
/* : nullable Object */;
6090 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6091 val
* var5
/* : Array[Object] */;
6092 val
* var_listnode3
/* var listnode3: Array[Object] */;
6093 val
* var_listnode2
/* var listnode2: nullable Object */;
6094 short int var6
/* : Bool */;
6097 val
* var7
/* : Array[Object] */;
6098 val
* var_tkwinnode4
/* var tkwinnode4: nullable Object */;
6099 short int var8
/* : Bool */;
6102 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6103 short int var11
/* : Bool */;
6106 val
* var14
/* : AForGroup */;
6107 val
* var_pforgroupnode1
/* var pforgroupnode1: nullable AForGroup */;
6108 long var15
/* : Int */;
6109 long var16
/* : Int */;
6111 var_node_list
= ((val
*)NULL
);
6113 var
= nitc___nitc__Parser___pop(var_p
);
6115 var_nodearraylist5
= var
;
6117 var1
= nitc___nitc__Parser___pop(var_p
);
6119 var_nodearraylist4
= var1
;
6121 var2
= nitc___nitc__Parser___pop(var_p
);
6123 var_nodearraylist3
= var2
;
6125 var3
= nitc___nitc__Parser___pop(var_p
);
6127 var_nodearraylist2
= var3
;
6129 var4
= nitc___nitc__Parser___pop(var_p
);
6131 var_nodearraylist1
= var4
;
6132 var5
= NEW_core__Array(&type_core__Array__core__Object
);
6134 core___core__Array___core__kernel__Object__init(var5
); /* Direct call array$Array$init on <var5:Array[Object]>*/
6136 var_listnode3
= var5
;
6137 var_listnode2
= var_nodearraylist1
;
6138 /* <var_listnode2:nullable Object> isa Array[Object] */
6139 cltype
= type_core__Array__core__Object
.color
;
6140 idtype
= type_core__Array__core__Object
.id
;
6141 if(var_listnode2
== NULL
) {
6144 if(cltype
>= (((long)var_listnode2
&3)?type_info
[((long)var_listnode2
&3)]:var_listnode2
->type
)->table_size
) {
6147 var6
= (((long)var_listnode2
&3)?type_info
[((long)var_listnode2
&3)]:var_listnode2
->type
)->type_table
[cltype
] == idtype
;
6150 if (unlikely(!var6
)) {
6151 if(catchStack
.cursor
>= 0){
6152 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6154 PRINT_ERROR("Runtime error: %s", "Assert failed");
6155 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8205);
6159 var7
= nitc__parser_work___nitc__parser_work__ReduceAction___concat(self
, var_listnode3
, var_listnode2
);
6161 var_listnode3
= var7
;
6162 var_tkwinnode4
= var_nodearraylist3
;
6163 /* <var_tkwinnode4:nullable Object> isa nullable TKwin */
6164 cltype9
= type_nullable__nitc__TKwin
.color
;
6165 idtype10
= type_nullable__nitc__TKwin
.id
;
6166 if(var_tkwinnode4
== NULL
) {
6169 if(cltype9
>= (((long)var_tkwinnode4
&3)?type_info
[((long)var_tkwinnode4
&3)]:var_tkwinnode4
->type
)->table_size
) {
6172 var8
= (((long)var_tkwinnode4
&3)?type_info
[((long)var_tkwinnode4
&3)]:var_tkwinnode4
->type
)->type_table
[cltype9
] == idtype10
;
6175 if (unlikely(!var8
)) {
6176 if(catchStack
.cursor
>= 0){
6177 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6179 PRINT_ERROR("Runtime error: %s", "Assert failed");
6180 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8208);
6183 var_pexprnode5
= var_nodearraylist5
;
6184 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6185 cltype12
= type_nullable__nitc__AExpr
.color
;
6186 idtype13
= type_nullable__nitc__AExpr
.id
;
6187 if(var_pexprnode5
== NULL
) {
6190 if(cltype12
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
6193 var11
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype12
] == idtype13
;
6196 if (unlikely(!var11
)) {
6197 if(catchStack
.cursor
>= 0){
6198 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6200 PRINT_ERROR("Runtime error: %s", "Assert failed");
6201 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8210);
6204 var14
= NEW_nitc__AForGroup(&type_nitc__AForGroup
);
6206 nitc__parser_prod___AForGroup___init_aforgroup(var14
, var_listnode3
, var_tkwinnode4
, var_pexprnode5
); /* Direct call parser_prod$AForGroup$init_aforgroup on <var14:AForGroup>*/
6208 var_pforgroupnode1
= var14
;
6209 var_node_list
= var_pforgroupnode1
;
6210 var15
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction277> */
6212 var16
= nitc___nitc__Parser___go_to(var_p
, var15
);
6215 nitc___nitc__Parser___push(var_p
, var16
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
6219 /* method parser$ReduceAction278$action for (self: ReduceAction278, Parser) */
6220 void nitc__parser___nitc__parser__ReduceAction278___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6221 val
* var_p
/* var p: Parser */;
6222 val
* var_node_list
/* var node_list: nullable Object */;
6223 val
* var
/* : nullable Object */;
6224 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
6225 val
* var1
/* : nullable Object */;
6226 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6227 val
* var2
/* : nullable Object */;
6228 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6229 val
* var3
/* : nullable Object */;
6230 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6231 val
* var4
/* : nullable Object */;
6232 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6233 val
* var5
/* : nullable Object */;
6234 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6235 val
* var6
/* : nullable Object */;
6236 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6237 val
* var_tkwwithnode2
/* var tkwwithnode2: nullable Object */;
6238 short int var7
/* : Bool */;
6241 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
6242 short int var8
/* : Bool */;
6245 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
6246 short int var11
/* : Bool */;
6249 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6250 short int var14
/* : Bool */;
6253 val
* var_plabelnode6
/* var plabelnode6: nullable Object */;
6254 short int var17
/* : Bool */;
6257 val
* var20
/* : AWithExpr */;
6258 val
* var_pexprnode1
/* var pexprnode1: nullable AWithExpr */;
6259 long var21
/* : Int */;
6260 long var22
/* : Int */;
6262 var_node_list
= ((val
*)NULL
);
6264 var
= nitc___nitc__Parser___pop(var_p
);
6266 var_nodearraylist7
= var
;
6268 var1
= nitc___nitc__Parser___pop(var_p
);
6270 var_nodearraylist6
= var1
;
6272 var2
= nitc___nitc__Parser___pop(var_p
);
6274 var_nodearraylist5
= var2
;
6276 var3
= nitc___nitc__Parser___pop(var_p
);
6278 var_nodearraylist4
= var3
;
6280 var4
= nitc___nitc__Parser___pop(var_p
);
6282 var_nodearraylist3
= var4
;
6284 var5
= nitc___nitc__Parser___pop(var_p
);
6286 var_nodearraylist2
= var5
;
6288 var6
= nitc___nitc__Parser___pop(var_p
);
6290 var_nodearraylist1
= var6
;
6291 var_tkwwithnode2
= var_nodearraylist1
;
6292 /* <var_tkwwithnode2:nullable Object> isa nullable TKwwith */
6293 cltype
= type_nullable__nitc__TKwwith
.color
;
6294 idtype
= type_nullable__nitc__TKwwith
.id
;
6295 if(var_tkwwithnode2
== NULL
) {
6298 if(cltype
>= (((long)var_tkwwithnode2
&3)?type_info
[((long)var_tkwwithnode2
&3)]:var_tkwwithnode2
->type
)->table_size
) {
6301 var7
= (((long)var_tkwwithnode2
&3)?type_info
[((long)var_tkwwithnode2
&3)]:var_tkwwithnode2
->type
)->type_table
[cltype
] == idtype
;
6304 if (unlikely(!var7
)) {
6305 if(catchStack
.cursor
>= 0){
6306 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6308 PRINT_ERROR("Runtime error: %s", "Assert failed");
6309 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8233);
6312 var_pexprnode3
= var_nodearraylist3
;
6313 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
6314 cltype9
= type_nullable__nitc__AExpr
.color
;
6315 idtype10
= type_nullable__nitc__AExpr
.id
;
6316 if(var_pexprnode3
== NULL
) {
6319 if(cltype9
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
6322 var8
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype9
] == idtype10
;
6325 if (unlikely(!var8
)) {
6326 if(catchStack
.cursor
>= 0){
6327 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6329 PRINT_ERROR("Runtime error: %s", "Assert failed");
6330 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8235);
6333 var_tkwdonode4
= var_nodearraylist5
;
6334 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
6335 cltype12
= type_nullable__nitc__TKwdo
.color
;
6336 idtype13
= type_nullable__nitc__TKwdo
.id
;
6337 if(var_tkwdonode4
== NULL
) {
6340 if(cltype12
>= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->table_size
) {
6343 var11
= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->type_table
[cltype12
] == idtype13
;
6346 if (unlikely(!var11
)) {
6347 if(catchStack
.cursor
>= 0){
6348 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6350 PRINT_ERROR("Runtime error: %s", "Assert failed");
6351 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8237);
6354 var_pexprnode5
= var_nodearraylist6
;
6355 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6356 cltype15
= type_nullable__nitc__AExpr
.color
;
6357 idtype16
= type_nullable__nitc__AExpr
.id
;
6358 if(var_pexprnode5
== NULL
) {
6361 if(cltype15
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
6364 var14
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype15
] == idtype16
;
6367 if (unlikely(!var14
)) {
6368 if(catchStack
.cursor
>= 0){
6369 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6371 PRINT_ERROR("Runtime error: %s", "Assert failed");
6372 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8239);
6375 var_plabelnode6
= var_nodearraylist7
;
6376 /* <var_plabelnode6:nullable Object> isa nullable ALabel */
6377 cltype18
= type_nullable__nitc__ALabel
.color
;
6378 idtype19
= type_nullable__nitc__ALabel
.id
;
6379 if(var_plabelnode6
== NULL
) {
6382 if(cltype18
>= (((long)var_plabelnode6
&3)?type_info
[((long)var_plabelnode6
&3)]:var_plabelnode6
->type
)->table_size
) {
6385 var17
= (((long)var_plabelnode6
&3)?type_info
[((long)var_plabelnode6
&3)]:var_plabelnode6
->type
)->type_table
[cltype18
] == idtype19
;
6388 if (unlikely(!var17
)) {
6389 if(catchStack
.cursor
>= 0){
6390 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6392 PRINT_ERROR("Runtime error: %s", "Assert failed");
6393 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8241);
6396 var20
= NEW_nitc__AWithExpr(&type_nitc__AWithExpr
);
6398 nitc__parser_prod___AWithExpr___init_awithexpr(var20
, var_tkwwithnode2
, var_pexprnode3
, var_tkwdonode4
, var_pexprnode5
, var_plabelnode6
); /* Direct call parser_prod$AWithExpr$init_awithexpr on <var20:AWithExpr>*/
6400 var_pexprnode1
= var20
;
6401 var_node_list
= var_pexprnode1
;
6402 var21
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction278> */
6404 var22
= nitc___nitc__Parser___go_to(var_p
, var21
);
6407 nitc___nitc__Parser___push(var_p
, var22
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
6411 /* method parser$ReduceAction279$action for (self: ReduceAction279, Parser) */
6412 void nitc__parser___nitc__parser__ReduceAction279___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6413 val
* var_p
/* var p: Parser */;
6414 val
* var_node_list
/* var node_list: nullable Object */;
6415 val
* var
/* : nullable Object */;
6416 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6417 val
* var1
/* : nullable Object */;
6418 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6419 val
* var2
/* : nullable Object */;
6420 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6421 val
* var3
/* : nullable Object */;
6422 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6423 val
* var4
/* : nullable Object */;
6424 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6425 val
* var5
/* : nullable Object */;
6426 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6427 val
* var_tkwwithnode2
/* var tkwwithnode2: nullable Object */;
6428 short int var6
/* : Bool */;
6431 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
6432 short int var7
/* : Bool */;
6435 val
* var_tkwdonode4
/* var tkwdonode4: nullable Object */;
6436 short int var10
/* : Bool */;
6439 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
6440 short int var13
/* : Bool */;
6443 val
* var16
/* : AWithExpr */;
6444 val
* var_pexprnode1
/* var pexprnode1: nullable AWithExpr */;
6445 long var17
/* : Int */;
6446 long var18
/* : Int */;
6448 var_node_list
= ((val
*)NULL
);
6450 var
= nitc___nitc__Parser___pop(var_p
);
6452 var_nodearraylist6
= var
;
6454 var1
= nitc___nitc__Parser___pop(var_p
);
6456 var_nodearraylist5
= var1
;
6458 var2
= nitc___nitc__Parser___pop(var_p
);
6460 var_nodearraylist4
= var2
;
6462 var3
= nitc___nitc__Parser___pop(var_p
);
6464 var_nodearraylist3
= var3
;
6466 var4
= nitc___nitc__Parser___pop(var_p
);
6468 var_nodearraylist2
= var4
;
6470 var5
= nitc___nitc__Parser___pop(var_p
);
6472 var_nodearraylist1
= var5
;
6473 var_tkwwithnode2
= var_nodearraylist1
;
6474 /* <var_tkwwithnode2:nullable Object> isa nullable TKwwith */
6475 cltype
= type_nullable__nitc__TKwwith
.color
;
6476 idtype
= type_nullable__nitc__TKwwith
.id
;
6477 if(var_tkwwithnode2
== NULL
) {
6480 if(cltype
>= (((long)var_tkwwithnode2
&3)?type_info
[((long)var_tkwwithnode2
&3)]:var_tkwwithnode2
->type
)->table_size
) {
6483 var6
= (((long)var_tkwwithnode2
&3)?type_info
[((long)var_tkwwithnode2
&3)]:var_tkwwithnode2
->type
)->type_table
[cltype
] == idtype
;
6486 if (unlikely(!var6
)) {
6487 if(catchStack
.cursor
>= 0){
6488 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6490 PRINT_ERROR("Runtime error: %s", "Assert failed");
6491 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8265);
6494 var_pexprnode3
= var_nodearraylist3
;
6495 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
6496 cltype8
= type_nullable__nitc__AExpr
.color
;
6497 idtype9
= type_nullable__nitc__AExpr
.id
;
6498 if(var_pexprnode3
== NULL
) {
6501 if(cltype8
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
6504 var7
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype8
] == idtype9
;
6507 if (unlikely(!var7
)) {
6508 if(catchStack
.cursor
>= 0){
6509 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6511 PRINT_ERROR("Runtime error: %s", "Assert failed");
6512 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8267);
6515 var_tkwdonode4
= var_nodearraylist5
;
6516 /* <var_tkwdonode4:nullable Object> isa nullable TKwdo */
6517 cltype11
= type_nullable__nitc__TKwdo
.color
;
6518 idtype12
= type_nullable__nitc__TKwdo
.id
;
6519 if(var_tkwdonode4
== NULL
) {
6522 if(cltype11
>= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->table_size
) {
6525 var10
= (((long)var_tkwdonode4
&3)?type_info
[((long)var_tkwdonode4
&3)]:var_tkwdonode4
->type
)->type_table
[cltype11
] == idtype12
;
6528 if (unlikely(!var10
)) {
6529 if(catchStack
.cursor
>= 0){
6530 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6532 PRINT_ERROR("Runtime error: %s", "Assert failed");
6533 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8269);
6536 var_pexprnode5
= var_nodearraylist6
;
6537 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
6538 cltype14
= type_nullable__nitc__AExpr
.color
;
6539 idtype15
= type_nullable__nitc__AExpr
.id
;
6540 if(var_pexprnode5
== NULL
) {
6543 if(cltype14
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
6546 var13
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype14
] == idtype15
;
6549 if (unlikely(!var13
)) {
6550 if(catchStack
.cursor
>= 0){
6551 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6553 PRINT_ERROR("Runtime error: %s", "Assert failed");
6554 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8271);
6557 var16
= NEW_nitc__AWithExpr(&type_nitc__AWithExpr
);
6559 nitc__parser_prod___AWithExpr___init_awithexpr(var16
, var_tkwwithnode2
, var_pexprnode3
, var_tkwdonode4
, var_pexprnode5
, ((val
*)NULL
)); /* Direct call parser_prod$AWithExpr$init_awithexpr on <var16:AWithExpr>*/
6561 var_pexprnode1
= var16
;
6562 var_node_list
= var_pexprnode1
;
6563 var17
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction279> */
6565 var18
= nitc___nitc__Parser___go_to(var_p
, var17
);
6568 nitc___nitc__Parser___push(var_p
, var18
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
6572 /* method parser$ReduceAction280$action for (self: ReduceAction280, Parser) */
6573 void nitc__parser___nitc__parser__ReduceAction280___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6574 val
* var_p
/* var p: Parser */;
6575 val
* var_node_list
/* var node_list: nullable Object */;
6576 val
* var
/* : nullable Object */;
6577 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6578 val
* var1
/* : nullable Object */;
6579 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6580 val
* var2
/* : nullable Object */;
6581 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6582 val
* var3
/* : nullable Object */;
6583 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6584 val
* var4
/* : nullable Object */;
6585 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6586 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6587 short int var5
/* : Bool */;
6590 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
6591 short int var6
/* : Bool */;
6594 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
6595 short int var9
/* : Bool */;
6598 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
6599 short int var12
/* : Bool */;
6602 val
* var15
/* : AVardeclExpr */;
6603 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
6604 long var16
/* : Int */;
6605 long var17
/* : Int */;
6607 var_node_list
= ((val
*)NULL
);
6609 var
= nitc___nitc__Parser___pop(var_p
);
6611 var_nodearraylist5
= var
;
6613 var1
= nitc___nitc__Parser___pop(var_p
);
6615 var_nodearraylist4
= var1
;
6617 var2
= nitc___nitc__Parser___pop(var_p
);
6619 var_nodearraylist3
= var2
;
6621 var3
= nitc___nitc__Parser___pop(var_p
);
6623 var_nodearraylist2
= var3
;
6625 var4
= nitc___nitc__Parser___pop(var_p
);
6627 var_nodearraylist1
= var4
;
6628 var_tidnode3
= var_nodearraylist1
;
6629 /* <var_tidnode3:nullable Object> isa nullable TId */
6630 cltype
= type_nullable__nitc__TId
.color
;
6631 idtype
= type_nullable__nitc__TId
.id
;
6632 if(var_tidnode3
== NULL
) {
6635 if(cltype
>= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->table_size
) {
6638 var5
= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->type_table
[cltype
] == idtype
;
6641 if (unlikely(!var5
)) {
6642 if(catchStack
.cursor
>= 0){
6643 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6645 PRINT_ERROR("Runtime error: %s", "Assert failed");
6646 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8294);
6649 var_ptypenode4
= var_nodearraylist2
;
6650 /* <var_ptypenode4:nullable Object> isa nullable AType */
6651 cltype7
= type_nullable__nitc__AType
.color
;
6652 idtype8
= type_nullable__nitc__AType
.id
;
6653 if(var_ptypenode4
== NULL
) {
6656 if(cltype7
>= (((long)var_ptypenode4
&3)?type_info
[((long)var_ptypenode4
&3)]:var_ptypenode4
->type
)->table_size
) {
6659 var6
= (((long)var_ptypenode4
&3)?type_info
[((long)var_ptypenode4
&3)]:var_ptypenode4
->type
)->type_table
[cltype7
] == idtype8
;
6662 if (unlikely(!var6
)) {
6663 if(catchStack
.cursor
>= 0){
6664 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6666 PRINT_ERROR("Runtime error: %s", "Assert failed");
6667 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8296);
6670 var_tassignnode5
= var_nodearraylist3
;
6671 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
6672 cltype10
= type_nullable__nitc__TAssign
.color
;
6673 idtype11
= type_nullable__nitc__TAssign
.id
;
6674 if(var_tassignnode5
== NULL
) {
6677 if(cltype10
>= (((long)var_tassignnode5
&3)?type_info
[((long)var_tassignnode5
&3)]:var_tassignnode5
->type
)->table_size
) {
6680 var9
= (((long)var_tassignnode5
&3)?type_info
[((long)var_tassignnode5
&3)]:var_tassignnode5
->type
)->type_table
[cltype10
] == idtype11
;
6683 if (unlikely(!var9
)) {
6684 if(catchStack
.cursor
>= 0){
6685 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6687 PRINT_ERROR("Runtime error: %s", "Assert failed");
6688 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8298);
6691 var_pexprnode6
= var_nodearraylist5
;
6692 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
6693 cltype13
= type_nullable__nitc__AExpr
.color
;
6694 idtype14
= type_nullable__nitc__AExpr
.id
;
6695 if(var_pexprnode6
== NULL
) {
6698 if(cltype13
>= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->table_size
) {
6701 var12
= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->type_table
[cltype13
] == idtype14
;
6704 if (unlikely(!var12
)) {
6705 if(catchStack
.cursor
>= 0){
6706 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6708 PRINT_ERROR("Runtime error: %s", "Assert failed");
6709 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8300);
6712 var15
= NEW_nitc__AVardeclExpr(&type_nitc__AVardeclExpr
);
6714 nitc__parser_prod___AVardeclExpr___init_avardeclexpr(var15
, ((val
*)NULL
), var_tidnode3
, var_ptypenode4
, var_tassignnode5
, var_pexprnode6
, ((val
*)NULL
)); /* Direct call parser_prod$AVardeclExpr$init_avardeclexpr on <var15:AVardeclExpr>*/
6716 var_pexprnode1
= var15
;
6717 var_node_list
= var_pexprnode1
;
6718 var16
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction280> */
6720 var17
= nitc___nitc__Parser___go_to(var_p
, var16
);
6723 nitc___nitc__Parser___push(var_p
, var17
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
6727 /* method parser$ReduceAction281$action for (self: ReduceAction281, Parser) */
6728 void nitc__parser___nitc__parser__ReduceAction281___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6729 val
* var_p
/* var p: Parser */;
6730 val
* var_node_list
/* var node_list: nullable Object */;
6731 val
* var
/* : nullable Object */;
6732 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
6733 val
* var1
/* : nullable Object */;
6734 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
6735 val
* var2
/* : nullable Object */;
6736 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6737 val
* var3
/* : nullable Object */;
6738 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6739 val
* var4
/* : nullable Object */;
6740 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6741 val
* var5
/* : nullable Object */;
6742 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6743 val
* var_tidnode3
/* var tidnode3: nullable Object */;
6744 short int var6
/* : Bool */;
6747 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
6748 short int var7
/* : Bool */;
6751 val
* var_tassignnode5
/* var tassignnode5: nullable Object */;
6752 short int var10
/* : Bool */;
6755 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
6756 short int var13
/* : Bool */;
6759 val
* var_pannotationsnode7
/* var pannotationsnode7: nullable Object */;
6760 short int var16
/* : Bool */;
6763 val
* var19
/* : AVardeclExpr */;
6764 val
* var_pexprnode1
/* var pexprnode1: nullable AVardeclExpr */;
6765 long var20
/* : Int */;
6766 long var21
/* : Int */;
6768 var_node_list
= ((val
*)NULL
);
6770 var
= nitc___nitc__Parser___pop(var_p
);
6772 var_nodearraylist6
= var
;
6774 var1
= nitc___nitc__Parser___pop(var_p
);
6776 var_nodearraylist5
= var1
;
6778 var2
= nitc___nitc__Parser___pop(var_p
);
6780 var_nodearraylist4
= var2
;
6782 var3
= nitc___nitc__Parser___pop(var_p
);
6784 var_nodearraylist3
= var3
;
6786 var4
= nitc___nitc__Parser___pop(var_p
);
6788 var_nodearraylist2
= var4
;
6790 var5
= nitc___nitc__Parser___pop(var_p
);
6792 var_nodearraylist1
= var5
;
6793 var_tidnode3
= var_nodearraylist1
;
6794 /* <var_tidnode3:nullable Object> isa nullable TId */
6795 cltype
= type_nullable__nitc__TId
.color
;
6796 idtype
= type_nullable__nitc__TId
.id
;
6797 if(var_tidnode3
== NULL
) {
6800 if(cltype
>= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->table_size
) {
6803 var6
= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->type_table
[cltype
] == idtype
;
6806 if (unlikely(!var6
)) {
6807 if(catchStack
.cursor
>= 0){
6808 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6810 PRINT_ERROR("Runtime error: %s", "Assert failed");
6811 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8325);
6814 var_ptypenode4
= var_nodearraylist3
;
6815 /* <var_ptypenode4:nullable Object> isa nullable AType */
6816 cltype8
= type_nullable__nitc__AType
.color
;
6817 idtype9
= type_nullable__nitc__AType
.id
;
6818 if(var_ptypenode4
== NULL
) {
6821 if(cltype8
>= (((long)var_ptypenode4
&3)?type_info
[((long)var_ptypenode4
&3)]:var_ptypenode4
->type
)->table_size
) {
6824 var7
= (((long)var_ptypenode4
&3)?type_info
[((long)var_ptypenode4
&3)]:var_ptypenode4
->type
)->type_table
[cltype8
] == idtype9
;
6827 if (unlikely(!var7
)) {
6828 if(catchStack
.cursor
>= 0){
6829 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6831 PRINT_ERROR("Runtime error: %s", "Assert failed");
6832 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8327);
6835 var_tassignnode5
= var_nodearraylist4
;
6836 /* <var_tassignnode5:nullable Object> isa nullable TAssign */
6837 cltype11
= type_nullable__nitc__TAssign
.color
;
6838 idtype12
= type_nullable__nitc__TAssign
.id
;
6839 if(var_tassignnode5
== NULL
) {
6842 if(cltype11
>= (((long)var_tassignnode5
&3)?type_info
[((long)var_tassignnode5
&3)]:var_tassignnode5
->type
)->table_size
) {
6845 var10
= (((long)var_tassignnode5
&3)?type_info
[((long)var_tassignnode5
&3)]:var_tassignnode5
->type
)->type_table
[cltype11
] == idtype12
;
6848 if (unlikely(!var10
)) {
6849 if(catchStack
.cursor
>= 0){
6850 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6852 PRINT_ERROR("Runtime error: %s", "Assert failed");
6853 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8329);
6856 var_pexprnode6
= var_nodearraylist6
;
6857 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
6858 cltype14
= type_nullable__nitc__AExpr
.color
;
6859 idtype15
= type_nullable__nitc__AExpr
.id
;
6860 if(var_pexprnode6
== NULL
) {
6863 if(cltype14
>= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->table_size
) {
6866 var13
= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->type_table
[cltype14
] == idtype15
;
6869 if (unlikely(!var13
)) {
6870 if(catchStack
.cursor
>= 0){
6871 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6873 PRINT_ERROR("Runtime error: %s", "Assert failed");
6874 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8331);
6877 var_pannotationsnode7
= var_nodearraylist2
;
6878 /* <var_pannotationsnode7:nullable Object> isa nullable AAnnotations */
6879 cltype17
= type_nullable__nitc__AAnnotations
.color
;
6880 idtype18
= type_nullable__nitc__AAnnotations
.id
;
6881 if(var_pannotationsnode7
== NULL
) {
6884 if(cltype17
>= (((long)var_pannotationsnode7
&3)?type_info
[((long)var_pannotationsnode7
&3)]:var_pannotationsnode7
->type
)->table_size
) {
6887 var16
= (((long)var_pannotationsnode7
&3)?type_info
[((long)var_pannotationsnode7
&3)]:var_pannotationsnode7
->type
)->type_table
[cltype17
] == idtype18
;
6890 if (unlikely(!var16
)) {
6891 if(catchStack
.cursor
>= 0){
6892 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6894 PRINT_ERROR("Runtime error: %s", "Assert failed");
6895 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8333);
6898 var19
= NEW_nitc__AVardeclExpr(&type_nitc__AVardeclExpr
);
6900 nitc__parser_prod___AVardeclExpr___init_avardeclexpr(var19
, ((val
*)NULL
), var_tidnode3
, var_ptypenode4
, var_tassignnode5
, var_pexprnode6
, var_pannotationsnode7
); /* Direct call parser_prod$AVardeclExpr$init_avardeclexpr on <var19:AVardeclExpr>*/
6902 var_pexprnode1
= var19
;
6903 var_node_list
= var_pexprnode1
;
6904 var20
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction281> */
6906 var21
= nitc___nitc__Parser___go_to(var_p
, var20
);
6909 nitc___nitc__Parser___push(var_p
, var21
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
6913 /* method parser$ReduceAction283$action for (self: ReduceAction283, Parser) */
6914 void nitc__parser___nitc__parser__ReduceAction283___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
6915 val
* var_p
/* var p: Parser */;
6916 val
* var_node_list
/* var node_list: nullable Object */;
6917 val
* var
/* : nullable Object */;
6918 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
6919 val
* var1
/* : nullable Object */;
6920 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
6921 val
* var2
/* : nullable Object */;
6922 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
6923 val
* var3
/* : nullable Object */;
6924 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
6925 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
6926 short int var4
/* : Bool */;
6929 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
6930 short int var5
/* : Bool */;
6933 val
* var_tkwelsenode5
/* var tkwelsenode5: nullable Object */;
6934 short int var8
/* : Bool */;
6937 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
6938 short int var11
/* : Bool */;
6941 val
* var14
/* : AAssertExpr */;
6942 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
6943 long var15
/* : Int */;
6944 long var16
/* : Int */;
6946 var_node_list
= ((val
*)NULL
);
6948 var
= nitc___nitc__Parser___pop(var_p
);
6950 var_nodearraylist4
= var
;
6952 var1
= nitc___nitc__Parser___pop(var_p
);
6954 var_nodearraylist3
= var1
;
6956 var2
= nitc___nitc__Parser___pop(var_p
);
6958 var_nodearraylist2
= var2
;
6960 var3
= nitc___nitc__Parser___pop(var_p
);
6962 var_nodearraylist1
= var3
;
6963 var_tkwassertnode2
= var_nodearraylist1
;
6964 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
6965 cltype
= type_nullable__nitc__TKwassert
.color
;
6966 idtype
= type_nullable__nitc__TKwassert
.id
;
6967 if(var_tkwassertnode2
== NULL
) {
6970 if(cltype
>= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->table_size
) {
6973 var4
= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->type_table
[cltype
] == idtype
;
6976 if (unlikely(!var4
)) {
6977 if(catchStack
.cursor
>= 0){
6978 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6980 PRINT_ERROR("Runtime error: %s", "Assert failed");
6981 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8356);
6984 var_pexprnode4
= var_nodearraylist2
;
6985 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
6986 cltype6
= type_nullable__nitc__AExpr
.color
;
6987 idtype7
= type_nullable__nitc__AExpr
.id
;
6988 if(var_pexprnode4
== NULL
) {
6991 if(cltype6
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
6994 var5
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype6
] == idtype7
;
6997 if (unlikely(!var5
)) {
6998 if(catchStack
.cursor
>= 0){
6999 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7001 PRINT_ERROR("Runtime error: %s", "Assert failed");
7002 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8358);
7005 var_tkwelsenode5
= var_nodearraylist3
;
7006 /* <var_tkwelsenode5:nullable Object> isa nullable TKwelse */
7007 cltype9
= type_nullable__nitc__TKwelse
.color
;
7008 idtype10
= type_nullable__nitc__TKwelse
.id
;
7009 if(var_tkwelsenode5
== NULL
) {
7012 if(cltype9
>= (((long)var_tkwelsenode5
&3)?type_info
[((long)var_tkwelsenode5
&3)]:var_tkwelsenode5
->type
)->table_size
) {
7015 var8
= (((long)var_tkwelsenode5
&3)?type_info
[((long)var_tkwelsenode5
&3)]:var_tkwelsenode5
->type
)->type_table
[cltype9
] == idtype10
;
7018 if (unlikely(!var8
)) {
7019 if(catchStack
.cursor
>= 0){
7020 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7022 PRINT_ERROR("Runtime error: %s", "Assert failed");
7023 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8360);
7026 var_pexprnode6
= var_nodearraylist4
;
7027 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
7028 cltype12
= type_nullable__nitc__AExpr
.color
;
7029 idtype13
= type_nullable__nitc__AExpr
.id
;
7030 if(var_pexprnode6
== NULL
) {
7033 if(cltype12
>= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->table_size
) {
7036 var11
= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->type_table
[cltype12
] == idtype13
;
7039 if (unlikely(!var11
)) {
7040 if(catchStack
.cursor
>= 0){
7041 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7043 PRINT_ERROR("Runtime error: %s", "Assert failed");
7044 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8362);
7047 var14
= NEW_nitc__AAssertExpr(&type_nitc__AAssertExpr
);
7049 nitc__parser_prod___AAssertExpr___init_aassertexpr(var14
, var_tkwassertnode2
, ((val
*)NULL
), var_pexprnode4
, var_tkwelsenode5
, var_pexprnode6
); /* Direct call parser_prod$AAssertExpr$init_aassertexpr on <var14:AAssertExpr>*/
7051 var_pexprnode1
= var14
;
7052 var_node_list
= var_pexprnode1
;
7053 var15
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction283> */
7055 var16
= nitc___nitc__Parser___go_to(var_p
, var15
);
7058 nitc___nitc__Parser___push(var_p
, var16
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7062 /* method parser$ReduceAction284$action for (self: ReduceAction284, Parser) */
7063 void nitc__parser___nitc__parser__ReduceAction284___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7064 val
* var_p
/* var p: Parser */;
7065 val
* var_node_list
/* var node_list: nullable Object */;
7066 val
* var
/* : nullable Object */;
7067 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7068 val
* var1
/* : nullable Object */;
7069 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7070 val
* var2
/* : nullable Object */;
7071 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7072 val
* var3
/* : nullable Object */;
7073 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7074 val
* var4
/* : nullable Object */;
7075 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7076 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
7077 short int var5
/* : Bool */;
7080 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7081 short int var6
/* : Bool */;
7084 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7085 short int var9
/* : Bool */;
7088 val
* var_tkwelsenode5
/* var tkwelsenode5: nullable Object */;
7089 short int var12
/* : Bool */;
7092 val
* var_pexprnode6
/* var pexprnode6: nullable Object */;
7093 short int var15
/* : Bool */;
7096 val
* var18
/* : AAssertExpr */;
7097 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
7098 long var19
/* : Int */;
7099 long var20
/* : Int */;
7101 var_node_list
= ((val
*)NULL
);
7103 var
= nitc___nitc__Parser___pop(var_p
);
7105 var_nodearraylist5
= var
;
7107 var1
= nitc___nitc__Parser___pop(var_p
);
7109 var_nodearraylist4
= var1
;
7111 var2
= nitc___nitc__Parser___pop(var_p
);
7113 var_nodearraylist3
= var2
;
7115 var3
= nitc___nitc__Parser___pop(var_p
);
7117 var_nodearraylist2
= var3
;
7119 var4
= nitc___nitc__Parser___pop(var_p
);
7121 var_nodearraylist1
= var4
;
7122 var_tkwassertnode2
= var_nodearraylist1
;
7123 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
7124 cltype
= type_nullable__nitc__TKwassert
.color
;
7125 idtype
= type_nullable__nitc__TKwassert
.id
;
7126 if(var_tkwassertnode2
== NULL
) {
7129 if(cltype
>= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->table_size
) {
7132 var5
= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->type_table
[cltype
] == idtype
;
7135 if (unlikely(!var5
)) {
7136 if(catchStack
.cursor
>= 0){
7137 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7139 PRINT_ERROR("Runtime error: %s", "Assert failed");
7140 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8385);
7143 var_tidnode3
= var_nodearraylist2
;
7144 /* <var_tidnode3:nullable Object> isa nullable TId */
7145 cltype7
= type_nullable__nitc__TId
.color
;
7146 idtype8
= type_nullable__nitc__TId
.id
;
7147 if(var_tidnode3
== NULL
) {
7150 if(cltype7
>= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->table_size
) {
7153 var6
= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->type_table
[cltype7
] == idtype8
;
7156 if (unlikely(!var6
)) {
7157 if(catchStack
.cursor
>= 0){
7158 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7160 PRINT_ERROR("Runtime error: %s", "Assert failed");
7161 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8387);
7164 var_pexprnode4
= var_nodearraylist3
;
7165 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7166 cltype10
= type_nullable__nitc__AExpr
.color
;
7167 idtype11
= type_nullable__nitc__AExpr
.id
;
7168 if(var_pexprnode4
== NULL
) {
7171 if(cltype10
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
7174 var9
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype10
] == idtype11
;
7177 if (unlikely(!var9
)) {
7178 if(catchStack
.cursor
>= 0){
7179 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7181 PRINT_ERROR("Runtime error: %s", "Assert failed");
7182 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8389);
7185 var_tkwelsenode5
= var_nodearraylist4
;
7186 /* <var_tkwelsenode5:nullable Object> isa nullable TKwelse */
7187 cltype13
= type_nullable__nitc__TKwelse
.color
;
7188 idtype14
= type_nullable__nitc__TKwelse
.id
;
7189 if(var_tkwelsenode5
== NULL
) {
7192 if(cltype13
>= (((long)var_tkwelsenode5
&3)?type_info
[((long)var_tkwelsenode5
&3)]:var_tkwelsenode5
->type
)->table_size
) {
7195 var12
= (((long)var_tkwelsenode5
&3)?type_info
[((long)var_tkwelsenode5
&3)]:var_tkwelsenode5
->type
)->type_table
[cltype13
] == idtype14
;
7198 if (unlikely(!var12
)) {
7199 if(catchStack
.cursor
>= 0){
7200 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7202 PRINT_ERROR("Runtime error: %s", "Assert failed");
7203 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8391);
7206 var_pexprnode6
= var_nodearraylist5
;
7207 /* <var_pexprnode6:nullable Object> isa nullable AExpr */
7208 cltype16
= type_nullable__nitc__AExpr
.color
;
7209 idtype17
= type_nullable__nitc__AExpr
.id
;
7210 if(var_pexprnode6
== NULL
) {
7213 if(cltype16
>= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->table_size
) {
7216 var15
= (((long)var_pexprnode6
&3)?type_info
[((long)var_pexprnode6
&3)]:var_pexprnode6
->type
)->type_table
[cltype16
] == idtype17
;
7219 if (unlikely(!var15
)) {
7220 if(catchStack
.cursor
>= 0){
7221 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7223 PRINT_ERROR("Runtime error: %s", "Assert failed");
7224 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8393);
7227 var18
= NEW_nitc__AAssertExpr(&type_nitc__AAssertExpr
);
7229 nitc__parser_prod___AAssertExpr___init_aassertexpr(var18
, var_tkwassertnode2
, var_tidnode3
, var_pexprnode4
, var_tkwelsenode5
, var_pexprnode6
); /* Direct call parser_prod$AAssertExpr$init_aassertexpr on <var18:AAssertExpr>*/
7231 var_pexprnode1
= var18
;
7232 var_node_list
= var_pexprnode1
;
7233 var19
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction284> */
7235 var20
= nitc___nitc__Parser___go_to(var_p
, var19
);
7238 nitc___nitc__Parser___push(var_p
, var20
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7242 /* method parser$ReduceAction285$action for (self: ReduceAction285, Parser) */
7243 void nitc__parser___nitc__parser__ReduceAction285___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7244 val
* var_p
/* var p: Parser */;
7245 val
* var_node_list
/* var node_list: nullable Object */;
7246 val
* var
/* : nullable Object */;
7247 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7248 val
* var1
/* : nullable Object */;
7249 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7250 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
7251 short int var2
/* : Bool */;
7254 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7255 short int var3
/* : Bool */;
7258 val
* var6
/* : AAssertExpr */;
7259 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
7260 long var7
/* : Int */;
7261 long var8
/* : Int */;
7263 var_node_list
= ((val
*)NULL
);
7265 var
= nitc___nitc__Parser___pop(var_p
);
7267 var_nodearraylist2
= var
;
7269 var1
= nitc___nitc__Parser___pop(var_p
);
7271 var_nodearraylist1
= var1
;
7272 var_tkwassertnode2
= var_nodearraylist1
;
7273 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
7274 cltype
= type_nullable__nitc__TKwassert
.color
;
7275 idtype
= type_nullable__nitc__TKwassert
.id
;
7276 if(var_tkwassertnode2
== NULL
) {
7279 if(cltype
>= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->table_size
) {
7282 var2
= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->type_table
[cltype
] == idtype
;
7285 if (unlikely(!var2
)) {
7286 if(catchStack
.cursor
>= 0){
7287 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7289 PRINT_ERROR("Runtime error: %s", "Assert failed");
7290 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8413);
7293 var_pexprnode4
= var_nodearraylist2
;
7294 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7295 cltype4
= type_nullable__nitc__AExpr
.color
;
7296 idtype5
= type_nullable__nitc__AExpr
.id
;
7297 if(var_pexprnode4
== NULL
) {
7300 if(cltype4
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
7303 var3
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype4
] == idtype5
;
7306 if (unlikely(!var3
)) {
7307 if(catchStack
.cursor
>= 0){
7308 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7310 PRINT_ERROR("Runtime error: %s", "Assert failed");
7311 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8415);
7314 var6
= NEW_nitc__AAssertExpr(&type_nitc__AAssertExpr
);
7316 nitc__parser_prod___AAssertExpr___init_aassertexpr(var6
, var_tkwassertnode2
, ((val
*)NULL
), var_pexprnode4
, ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod$AAssertExpr$init_aassertexpr on <var6:AAssertExpr>*/
7318 var_pexprnode1
= var6
;
7319 var_node_list
= var_pexprnode1
;
7320 var7
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction285> */
7322 var8
= nitc___nitc__Parser___go_to(var_p
, var7
);
7325 nitc___nitc__Parser___push(var_p
, var8
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7329 /* method parser$ReduceAction286$action for (self: ReduceAction286, Parser) */
7330 void nitc__parser___nitc__parser__ReduceAction286___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7331 val
* var_p
/* var p: Parser */;
7332 val
* var_node_list
/* var node_list: nullable Object */;
7333 val
* var
/* : nullable Object */;
7334 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7335 val
* var1
/* : nullable Object */;
7336 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7337 val
* var2
/* : nullable Object */;
7338 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7339 val
* var_tkwassertnode2
/* var tkwassertnode2: nullable Object */;
7340 short int var3
/* : Bool */;
7343 val
* var_tidnode3
/* var tidnode3: nullable Object */;
7344 short int var4
/* : Bool */;
7347 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7348 short int var7
/* : Bool */;
7351 val
* var10
/* : AAssertExpr */;
7352 val
* var_pexprnode1
/* var pexprnode1: nullable AAssertExpr */;
7353 long var11
/* : Int */;
7354 long var12
/* : Int */;
7356 var_node_list
= ((val
*)NULL
);
7358 var
= nitc___nitc__Parser___pop(var_p
);
7360 var_nodearraylist3
= var
;
7362 var1
= nitc___nitc__Parser___pop(var_p
);
7364 var_nodearraylist2
= var1
;
7366 var2
= nitc___nitc__Parser___pop(var_p
);
7368 var_nodearraylist1
= var2
;
7369 var_tkwassertnode2
= var_nodearraylist1
;
7370 /* <var_tkwassertnode2:nullable Object> isa nullable TKwassert */
7371 cltype
= type_nullable__nitc__TKwassert
.color
;
7372 idtype
= type_nullable__nitc__TKwassert
.id
;
7373 if(var_tkwassertnode2
== NULL
) {
7376 if(cltype
>= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->table_size
) {
7379 var3
= (((long)var_tkwassertnode2
&3)?type_info
[((long)var_tkwassertnode2
&3)]:var_tkwassertnode2
->type
)->type_table
[cltype
] == idtype
;
7382 if (unlikely(!var3
)) {
7383 if(catchStack
.cursor
>= 0){
7384 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7386 PRINT_ERROR("Runtime error: %s", "Assert failed");
7387 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8436);
7390 var_tidnode3
= var_nodearraylist2
;
7391 /* <var_tidnode3:nullable Object> isa nullable TId */
7392 cltype5
= type_nullable__nitc__TId
.color
;
7393 idtype6
= type_nullable__nitc__TId
.id
;
7394 if(var_tidnode3
== NULL
) {
7397 if(cltype5
>= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->table_size
) {
7400 var4
= (((long)var_tidnode3
&3)?type_info
[((long)var_tidnode3
&3)]:var_tidnode3
->type
)->type_table
[cltype5
] == idtype6
;
7403 if (unlikely(!var4
)) {
7404 if(catchStack
.cursor
>= 0){
7405 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7407 PRINT_ERROR("Runtime error: %s", "Assert failed");
7408 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8438);
7411 var_pexprnode4
= var_nodearraylist3
;
7412 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7413 cltype8
= type_nullable__nitc__AExpr
.color
;
7414 idtype9
= type_nullable__nitc__AExpr
.id
;
7415 if(var_pexprnode4
== NULL
) {
7418 if(cltype8
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
7421 var7
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype8
] == idtype9
;
7424 if (unlikely(!var7
)) {
7425 if(catchStack
.cursor
>= 0){
7426 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7428 PRINT_ERROR("Runtime error: %s", "Assert failed");
7429 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8440);
7432 var10
= NEW_nitc__AAssertExpr(&type_nitc__AAssertExpr
);
7434 nitc__parser_prod___AAssertExpr___init_aassertexpr(var10
, var_tkwassertnode2
, var_tidnode3
, var_pexprnode4
, ((val
*)NULL
), ((val
*)NULL
)); /* Direct call parser_prod$AAssertExpr$init_aassertexpr on <var10:AAssertExpr>*/
7436 var_pexprnode1
= var10
;
7437 var_node_list
= var_pexprnode1
;
7438 var11
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction286> */
7440 var12
= nitc___nitc__Parser___go_to(var_p
, var11
);
7443 nitc___nitc__Parser___push(var_p
, var12
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7447 /* method parser$ReduceAction287$action for (self: ReduceAction287, Parser) */
7448 void nitc__parser___nitc__parser__ReduceAction287___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7449 val
* var_p
/* var p: Parser */;
7450 val
* var_node_list
/* var node_list: nullable Object */;
7451 val
* var
/* : nullable Object */;
7452 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7453 val
* var1
/* : nullable Object */;
7454 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7455 val
* var_tidnode1
/* var tidnode1: nullable Object */;
7456 long var2
/* : Int */;
7457 long var3
/* : Int */;
7459 var_node_list
= ((val
*)NULL
);
7461 var
= nitc___nitc__Parser___pop(var_p
);
7463 var_nodearraylist2
= var
;
7465 var1
= nitc___nitc__Parser___pop(var_p
);
7467 var_nodearraylist1
= var1
;
7468 var_tidnode1
= var_nodearraylist1
;
7469 var_node_list
= var_tidnode1
;
7470 var2
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction287> */
7472 var3
= nitc___nitc__Parser___go_to(var_p
, var2
);
7475 nitc___nitc__Parser___push(var_p
, var3
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7479 /* method parser$ReduceAction289$action for (self: ReduceAction289, Parser) */
7480 void nitc__parser___nitc__parser__ReduceAction289___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7481 val
* var_p
/* var p: Parser */;
7482 val
* var_node_list
/* var node_list: nullable Object */;
7483 val
* var
/* : nullable Object */;
7484 val
* var_nodearraylist11
/* var nodearraylist11: nullable Object */;
7485 val
* var1
/* : nullable Object */;
7486 val
* var_nodearraylist10
/* var nodearraylist10: nullable Object */;
7487 val
* var2
/* : nullable Object */;
7488 val
* var_nodearraylist9
/* var nodearraylist9: nullable Object */;
7489 val
* var3
/* : nullable Object */;
7490 val
* var_nodearraylist8
/* var nodearraylist8: nullable Object */;
7491 val
* var4
/* : nullable Object */;
7492 val
* var_nodearraylist7
/* var nodearraylist7: nullable Object */;
7493 val
* var5
/* : nullable Object */;
7494 val
* var_nodearraylist6
/* var nodearraylist6: nullable Object */;
7495 val
* var6
/* : nullable Object */;
7496 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7497 val
* var7
/* : nullable Object */;
7498 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7499 val
* var8
/* : nullable Object */;
7500 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7501 val
* var9
/* : nullable Object */;
7502 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7503 val
* var10
/* : nullable Object */;
7504 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7505 val
* var_tkwifnode2
/* var tkwifnode2: nullable Object */;
7506 short int var11
/* : Bool */;
7509 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
7510 short int var12
/* : Bool */;
7513 val
* var_tkwthennode4
/* var tkwthennode4: nullable Object */;
7514 short int var15
/* : Bool */;
7517 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
7518 short int var18
/* : Bool */;
7521 val
* var_tkwelsenode6
/* var tkwelsenode6: nullable Object */;
7522 short int var21
/* : Bool */;
7525 val
* var_pexprnode7
/* var pexprnode7: nullable Object */;
7526 short int var24
/* : Bool */;
7529 val
* var27
/* : AIfexprExpr */;
7530 val
* var_pexprnode1
/* var pexprnode1: nullable AIfexprExpr */;
7531 long var28
/* : Int */;
7532 long var29
/* : Int */;
7534 var_node_list
= ((val
*)NULL
);
7536 var
= nitc___nitc__Parser___pop(var_p
);
7538 var_nodearraylist11
= var
;
7540 var1
= nitc___nitc__Parser___pop(var_p
);
7542 var_nodearraylist10
= var1
;
7544 var2
= nitc___nitc__Parser___pop(var_p
);
7546 var_nodearraylist9
= var2
;
7548 var3
= nitc___nitc__Parser___pop(var_p
);
7550 var_nodearraylist8
= var3
;
7552 var4
= nitc___nitc__Parser___pop(var_p
);
7554 var_nodearraylist7
= var4
;
7556 var5
= nitc___nitc__Parser___pop(var_p
);
7558 var_nodearraylist6
= var5
;
7560 var6
= nitc___nitc__Parser___pop(var_p
);
7562 var_nodearraylist5
= var6
;
7564 var7
= nitc___nitc__Parser___pop(var_p
);
7566 var_nodearraylist4
= var7
;
7568 var8
= nitc___nitc__Parser___pop(var_p
);
7570 var_nodearraylist3
= var8
;
7572 var9
= nitc___nitc__Parser___pop(var_p
);
7574 var_nodearraylist2
= var9
;
7576 var10
= nitc___nitc__Parser___pop(var_p
);
7578 var_nodearraylist1
= var10
;
7579 var_tkwifnode2
= var_nodearraylist1
;
7580 /* <var_tkwifnode2:nullable Object> isa nullable TKwif */
7581 cltype
= type_nullable__nitc__TKwif
.color
;
7582 idtype
= type_nullable__nitc__TKwif
.id
;
7583 if(var_tkwifnode2
== NULL
) {
7586 if(cltype
>= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->table_size
) {
7589 var11
= (((long)var_tkwifnode2
&3)?type_info
[((long)var_tkwifnode2
&3)]:var_tkwifnode2
->type
)->type_table
[cltype
] == idtype
;
7592 if (unlikely(!var11
)) {
7593 if(catchStack
.cursor
>= 0){
7594 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7596 PRINT_ERROR("Runtime error: %s", "Assert failed");
7597 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8481);
7600 var_pexprnode3
= var_nodearraylist3
;
7601 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
7602 cltype13
= type_nullable__nitc__AExpr
.color
;
7603 idtype14
= type_nullable__nitc__AExpr
.id
;
7604 if(var_pexprnode3
== NULL
) {
7607 if(cltype13
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
7610 var12
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype13
] == idtype14
;
7613 if (unlikely(!var12
)) {
7614 if(catchStack
.cursor
>= 0){
7615 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7617 PRINT_ERROR("Runtime error: %s", "Assert failed");
7618 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8483);
7621 var_tkwthennode4
= var_nodearraylist5
;
7622 /* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
7623 cltype16
= type_nullable__nitc__TKwthen
.color
;
7624 idtype17
= type_nullable__nitc__TKwthen
.id
;
7625 if(var_tkwthennode4
== NULL
) {
7628 if(cltype16
>= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->table_size
) {
7631 var15
= (((long)var_tkwthennode4
&3)?type_info
[((long)var_tkwthennode4
&3)]:var_tkwthennode4
->type
)->type_table
[cltype16
] == idtype17
;
7634 if (unlikely(!var15
)) {
7635 if(catchStack
.cursor
>= 0){
7636 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7638 PRINT_ERROR("Runtime error: %s", "Assert failed");
7639 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8485);
7642 var_pexprnode5
= var_nodearraylist7
;
7643 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
7644 cltype19
= type_nullable__nitc__AExpr
.color
;
7645 idtype20
= type_nullable__nitc__AExpr
.id
;
7646 if(var_pexprnode5
== NULL
) {
7649 if(cltype19
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
7652 var18
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype19
] == idtype20
;
7655 if (unlikely(!var18
)) {
7656 if(catchStack
.cursor
>= 0){
7657 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7659 PRINT_ERROR("Runtime error: %s", "Assert failed");
7660 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8487);
7663 var_tkwelsenode6
= var_nodearraylist9
;
7664 /* <var_tkwelsenode6:nullable Object> isa nullable TKwelse */
7665 cltype22
= type_nullable__nitc__TKwelse
.color
;
7666 idtype23
= type_nullable__nitc__TKwelse
.id
;
7667 if(var_tkwelsenode6
== NULL
) {
7670 if(cltype22
>= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->table_size
) {
7673 var21
= (((long)var_tkwelsenode6
&3)?type_info
[((long)var_tkwelsenode6
&3)]:var_tkwelsenode6
->type
)->type_table
[cltype22
] == idtype23
;
7676 if (unlikely(!var21
)) {
7677 if(catchStack
.cursor
>= 0){
7678 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7680 PRINT_ERROR("Runtime error: %s", "Assert failed");
7681 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8489);
7684 var_pexprnode7
= var_nodearraylist11
;
7685 /* <var_pexprnode7:nullable Object> isa nullable AExpr */
7686 cltype25
= type_nullable__nitc__AExpr
.color
;
7687 idtype26
= type_nullable__nitc__AExpr
.id
;
7688 if(var_pexprnode7
== NULL
) {
7691 if(cltype25
>= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->table_size
) {
7694 var24
= (((long)var_pexprnode7
&3)?type_info
[((long)var_pexprnode7
&3)]:var_pexprnode7
->type
)->type_table
[cltype25
] == idtype26
;
7697 if (unlikely(!var24
)) {
7698 if(catchStack
.cursor
>= 0){
7699 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7701 PRINT_ERROR("Runtime error: %s", "Assert failed");
7702 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8491);
7705 var27
= NEW_nitc__AIfexprExpr(&type_nitc__AIfexprExpr
);
7707 nitc__parser_prod___AIfexprExpr___init_aifexprexpr(var27
, var_tkwifnode2
, var_pexprnode3
, var_tkwthennode4
, var_pexprnode5
, var_tkwelsenode6
, var_pexprnode7
); /* Direct call parser_prod$AIfexprExpr$init_aifexprexpr on <var27:AIfexprExpr>*/
7709 var_pexprnode1
= var27
;
7710 var_node_list
= var_pexprnode1
;
7711 var28
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction289> */
7713 var29
= nitc___nitc__Parser___go_to(var_p
, var28
);
7716 nitc___nitc__Parser___push(var_p
, var29
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7720 /* method parser$ReduceAction291$action for (self: ReduceAction291, Parser) */
7721 void nitc__parser___nitc__parser__ReduceAction291___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7722 val
* var_p
/* var p: Parser */;
7723 val
* var_node_list
/* var node_list: nullable Object */;
7724 val
* var
/* : nullable Object */;
7725 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7726 val
* var1
/* : nullable Object */;
7727 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7728 val
* var2
/* : nullable Object */;
7729 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7730 val
* var3
/* : nullable Object */;
7731 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7732 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7733 short int var4
/* : Bool */;
7736 val
* var_tkwornode3
/* var tkwornode3: nullable Object */;
7737 short int var5
/* : Bool */;
7740 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7741 short int var8
/* : Bool */;
7744 val
* var11
/* : AOrExpr */;
7745 val
* var_pexprnode1
/* var pexprnode1: nullable AOrExpr */;
7746 long var12
/* : Int */;
7747 long var13
/* : Int */;
7749 var_node_list
= ((val
*)NULL
);
7751 var
= nitc___nitc__Parser___pop(var_p
);
7753 var_nodearraylist4
= var
;
7755 var1
= nitc___nitc__Parser___pop(var_p
);
7757 var_nodearraylist3
= var1
;
7759 var2
= nitc___nitc__Parser___pop(var_p
);
7761 var_nodearraylist2
= var2
;
7763 var3
= nitc___nitc__Parser___pop(var_p
);
7765 var_nodearraylist1
= var3
;
7766 var_pexprnode2
= var_nodearraylist1
;
7767 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7768 cltype
= type_nullable__nitc__AExpr
.color
;
7769 idtype
= type_nullable__nitc__AExpr
.id
;
7770 if(var_pexprnode2
== NULL
) {
7773 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
7776 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
7779 if (unlikely(!var4
)) {
7780 if(catchStack
.cursor
>= 0){
7781 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7783 PRINT_ERROR("Runtime error: %s", "Assert failed");
7784 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8514);
7787 var_tkwornode3
= var_nodearraylist2
;
7788 /* <var_tkwornode3:nullable Object> isa nullable TKwor */
7789 cltype6
= type_nullable__nitc__TKwor
.color
;
7790 idtype7
= type_nullable__nitc__TKwor
.id
;
7791 if(var_tkwornode3
== NULL
) {
7794 if(cltype6
>= (((long)var_tkwornode3
&3)?type_info
[((long)var_tkwornode3
&3)]:var_tkwornode3
->type
)->table_size
) {
7797 var5
= (((long)var_tkwornode3
&3)?type_info
[((long)var_tkwornode3
&3)]:var_tkwornode3
->type
)->type_table
[cltype6
] == idtype7
;
7800 if (unlikely(!var5
)) {
7801 if(catchStack
.cursor
>= 0){
7802 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7804 PRINT_ERROR("Runtime error: %s", "Assert failed");
7805 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8516);
7808 var_pexprnode4
= var_nodearraylist4
;
7809 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7810 cltype9
= type_nullable__nitc__AExpr
.color
;
7811 idtype10
= type_nullable__nitc__AExpr
.id
;
7812 if(var_pexprnode4
== NULL
) {
7815 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
7818 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
7821 if (unlikely(!var8
)) {
7822 if(catchStack
.cursor
>= 0){
7823 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7825 PRINT_ERROR("Runtime error: %s", "Assert failed");
7826 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8518);
7829 var11
= NEW_nitc__AOrExpr(&type_nitc__AOrExpr
);
7831 nitc__parser_prod___AOrExpr___init_aorexpr(var11
, var_pexprnode2
, var_tkwornode3
, var_pexprnode4
); /* Direct call parser_prod$AOrExpr$init_aorexpr on <var11:AOrExpr>*/
7833 var_pexprnode1
= var11
;
7834 var_node_list
= var_pexprnode1
;
7835 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction291> */
7837 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
7840 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7844 /* method parser$ReduceAction292$action for (self: ReduceAction292, Parser) */
7845 void nitc__parser___nitc__parser__ReduceAction292___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7846 val
* var_p
/* var p: Parser */;
7847 val
* var_node_list
/* var node_list: nullable Object */;
7848 val
* var
/* : nullable Object */;
7849 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7850 val
* var1
/* : nullable Object */;
7851 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7852 val
* var2
/* : nullable Object */;
7853 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7854 val
* var3
/* : nullable Object */;
7855 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7856 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7857 short int var4
/* : Bool */;
7860 val
* var_tkwandnode3
/* var tkwandnode3: nullable Object */;
7861 short int var5
/* : Bool */;
7864 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
7865 short int var8
/* : Bool */;
7868 val
* var11
/* : AAndExpr */;
7869 val
* var_pexprnode1
/* var pexprnode1: nullable AAndExpr */;
7870 long var12
/* : Int */;
7871 long var13
/* : Int */;
7873 var_node_list
= ((val
*)NULL
);
7875 var
= nitc___nitc__Parser___pop(var_p
);
7877 var_nodearraylist4
= var
;
7879 var1
= nitc___nitc__Parser___pop(var_p
);
7881 var_nodearraylist3
= var1
;
7883 var2
= nitc___nitc__Parser___pop(var_p
);
7885 var_nodearraylist2
= var2
;
7887 var3
= nitc___nitc__Parser___pop(var_p
);
7889 var_nodearraylist1
= var3
;
7890 var_pexprnode2
= var_nodearraylist1
;
7891 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
7892 cltype
= type_nullable__nitc__AExpr
.color
;
7893 idtype
= type_nullable__nitc__AExpr
.id
;
7894 if(var_pexprnode2
== NULL
) {
7897 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
7900 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
7903 if (unlikely(!var4
)) {
7904 if(catchStack
.cursor
>= 0){
7905 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7907 PRINT_ERROR("Runtime error: %s", "Assert failed");
7908 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8538);
7911 var_tkwandnode3
= var_nodearraylist2
;
7912 /* <var_tkwandnode3:nullable Object> isa nullable TKwand */
7913 cltype6
= type_nullable__nitc__TKwand
.color
;
7914 idtype7
= type_nullable__nitc__TKwand
.id
;
7915 if(var_tkwandnode3
== NULL
) {
7918 if(cltype6
>= (((long)var_tkwandnode3
&3)?type_info
[((long)var_tkwandnode3
&3)]:var_tkwandnode3
->type
)->table_size
) {
7921 var5
= (((long)var_tkwandnode3
&3)?type_info
[((long)var_tkwandnode3
&3)]:var_tkwandnode3
->type
)->type_table
[cltype6
] == idtype7
;
7924 if (unlikely(!var5
)) {
7925 if(catchStack
.cursor
>= 0){
7926 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7928 PRINT_ERROR("Runtime error: %s", "Assert failed");
7929 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8540);
7932 var_pexprnode4
= var_nodearraylist4
;
7933 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
7934 cltype9
= type_nullable__nitc__AExpr
.color
;
7935 idtype10
= type_nullable__nitc__AExpr
.id
;
7936 if(var_pexprnode4
== NULL
) {
7939 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
7942 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
7945 if (unlikely(!var8
)) {
7946 if(catchStack
.cursor
>= 0){
7947 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
7949 PRINT_ERROR("Runtime error: %s", "Assert failed");
7950 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8542);
7953 var11
= NEW_nitc__AAndExpr(&type_nitc__AAndExpr
);
7955 nitc__parser_prod___AAndExpr___init_aandexpr(var11
, var_pexprnode2
, var_tkwandnode3
, var_pexprnode4
); /* Direct call parser_prod$AAndExpr$init_aandexpr on <var11:AAndExpr>*/
7957 var_pexprnode1
= var11
;
7958 var_node_list
= var_pexprnode1
;
7959 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction292> */
7961 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
7964 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
7968 /* method parser$ReduceAction293$action for (self: ReduceAction293, Parser) */
7969 void nitc__parser___nitc__parser__ReduceAction293___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
7970 val
* var_p
/* var p: Parser */;
7971 val
* var_node_list
/* var node_list: nullable Object */;
7972 val
* var
/* : nullable Object */;
7973 val
* var_nodearraylist5
/* var nodearraylist5: nullable Object */;
7974 val
* var1
/* : nullable Object */;
7975 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
7976 val
* var2
/* : nullable Object */;
7977 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
7978 val
* var3
/* : nullable Object */;
7979 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
7980 val
* var4
/* : nullable Object */;
7981 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
7982 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
7983 short int var5
/* : Bool */;
7986 val
* var_tkwornode3
/* var tkwornode3: nullable Object */;
7987 short int var6
/* : Bool */;
7990 val
* var_tkwelsenode4
/* var tkwelsenode4: nullable Object */;
7991 short int var9
/* : Bool */;
7994 val
* var_pexprnode5
/* var pexprnode5: nullable Object */;
7995 short int var12
/* : Bool */;
7998 val
* var15
/* : AOrElseExpr */;
7999 val
* var_pexprnode1
/* var pexprnode1: nullable AOrElseExpr */;
8000 long var16
/* : Int */;
8001 long var17
/* : Int */;
8003 var_node_list
= ((val
*)NULL
);
8005 var
= nitc___nitc__Parser___pop(var_p
);
8007 var_nodearraylist5
= var
;
8009 var1
= nitc___nitc__Parser___pop(var_p
);
8011 var_nodearraylist4
= var1
;
8013 var2
= nitc___nitc__Parser___pop(var_p
);
8015 var_nodearraylist3
= var2
;
8017 var3
= nitc___nitc__Parser___pop(var_p
);
8019 var_nodearraylist2
= var3
;
8021 var4
= nitc___nitc__Parser___pop(var_p
);
8023 var_nodearraylist1
= var4
;
8024 var_pexprnode2
= var_nodearraylist1
;
8025 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8026 cltype
= type_nullable__nitc__AExpr
.color
;
8027 idtype
= type_nullable__nitc__AExpr
.id
;
8028 if(var_pexprnode2
== NULL
) {
8031 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
8034 var5
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
8037 if (unlikely(!var5
)) {
8038 if(catchStack
.cursor
>= 0){
8039 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8041 PRINT_ERROR("Runtime error: %s", "Assert failed");
8042 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8563);
8045 var_tkwornode3
= var_nodearraylist2
;
8046 /* <var_tkwornode3:nullable Object> isa nullable TKwor */
8047 cltype7
= type_nullable__nitc__TKwor
.color
;
8048 idtype8
= type_nullable__nitc__TKwor
.id
;
8049 if(var_tkwornode3
== NULL
) {
8052 if(cltype7
>= (((long)var_tkwornode3
&3)?type_info
[((long)var_tkwornode3
&3)]:var_tkwornode3
->type
)->table_size
) {
8055 var6
= (((long)var_tkwornode3
&3)?type_info
[((long)var_tkwornode3
&3)]:var_tkwornode3
->type
)->type_table
[cltype7
] == idtype8
;
8058 if (unlikely(!var6
)) {
8059 if(catchStack
.cursor
>= 0){
8060 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8062 PRINT_ERROR("Runtime error: %s", "Assert failed");
8063 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8565);
8066 var_tkwelsenode4
= var_nodearraylist3
;
8067 /* <var_tkwelsenode4:nullable Object> isa nullable TKwelse */
8068 cltype10
= type_nullable__nitc__TKwelse
.color
;
8069 idtype11
= type_nullable__nitc__TKwelse
.id
;
8070 if(var_tkwelsenode4
== NULL
) {
8073 if(cltype10
>= (((long)var_tkwelsenode4
&3)?type_info
[((long)var_tkwelsenode4
&3)]:var_tkwelsenode4
->type
)->table_size
) {
8076 var9
= (((long)var_tkwelsenode4
&3)?type_info
[((long)var_tkwelsenode4
&3)]:var_tkwelsenode4
->type
)->type_table
[cltype10
] == idtype11
;
8079 if (unlikely(!var9
)) {
8080 if(catchStack
.cursor
>= 0){
8081 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8083 PRINT_ERROR("Runtime error: %s", "Assert failed");
8084 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8567);
8087 var_pexprnode5
= var_nodearraylist5
;
8088 /* <var_pexprnode5:nullable Object> isa nullable AExpr */
8089 cltype13
= type_nullable__nitc__AExpr
.color
;
8090 idtype14
= type_nullable__nitc__AExpr
.id
;
8091 if(var_pexprnode5
== NULL
) {
8094 if(cltype13
>= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->table_size
) {
8097 var12
= (((long)var_pexprnode5
&3)?type_info
[((long)var_pexprnode5
&3)]:var_pexprnode5
->type
)->type_table
[cltype13
] == idtype14
;
8100 if (unlikely(!var12
)) {
8101 if(catchStack
.cursor
>= 0){
8102 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8104 PRINT_ERROR("Runtime error: %s", "Assert failed");
8105 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8569);
8108 var15
= NEW_nitc__AOrElseExpr(&type_nitc__AOrElseExpr
);
8110 nitc__parser_prod___AOrElseExpr___init_aorelseexpr(var15
, var_pexprnode2
, var_tkwornode3
, var_tkwelsenode4
, var_pexprnode5
); /* Direct call parser_prod$AOrElseExpr$init_aorelseexpr on <var15:AOrElseExpr>*/
8112 var_pexprnode1
= var15
;
8113 var_node_list
= var_pexprnode1
;
8114 var16
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction293> */
8116 var17
= nitc___nitc__Parser___go_to(var_p
, var16
);
8119 nitc___nitc__Parser___push(var_p
, var17
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8123 /* method parser$ReduceAction294$action for (self: ReduceAction294, Parser) */
8124 void nitc__parser___nitc__parser__ReduceAction294___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8125 val
* var_p
/* var p: Parser */;
8126 val
* var_node_list
/* var node_list: nullable Object */;
8127 val
* var
/* : nullable Object */;
8128 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8129 val
* var1
/* : nullable Object */;
8130 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8131 val
* var2
/* : nullable Object */;
8132 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8133 val
* var3
/* : nullable Object */;
8134 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8135 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8136 short int var4
/* : Bool */;
8139 val
* var_tkwimpliesnode3
/* var tkwimpliesnode3: nullable Object */;
8140 short int var5
/* : Bool */;
8143 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8144 short int var8
/* : Bool */;
8147 val
* var11
/* : AImpliesExpr */;
8148 val
* var_pexprnode1
/* var pexprnode1: nullable AImpliesExpr */;
8149 long var12
/* : Int */;
8150 long var13
/* : Int */;
8152 var_node_list
= ((val
*)NULL
);
8154 var
= nitc___nitc__Parser___pop(var_p
);
8156 var_nodearraylist4
= var
;
8158 var1
= nitc___nitc__Parser___pop(var_p
);
8160 var_nodearraylist3
= var1
;
8162 var2
= nitc___nitc__Parser___pop(var_p
);
8164 var_nodearraylist2
= var2
;
8166 var3
= nitc___nitc__Parser___pop(var_p
);
8168 var_nodearraylist1
= var3
;
8169 var_pexprnode2
= var_nodearraylist1
;
8170 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8171 cltype
= type_nullable__nitc__AExpr
.color
;
8172 idtype
= type_nullable__nitc__AExpr
.id
;
8173 if(var_pexprnode2
== NULL
) {
8176 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
8179 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
8182 if (unlikely(!var4
)) {
8183 if(catchStack
.cursor
>= 0){
8184 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8186 PRINT_ERROR("Runtime error: %s", "Assert failed");
8187 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8590);
8190 var_tkwimpliesnode3
= var_nodearraylist2
;
8191 /* <var_tkwimpliesnode3:nullable Object> isa nullable TKwimplies */
8192 cltype6
= type_nullable__nitc__TKwimplies
.color
;
8193 idtype7
= type_nullable__nitc__TKwimplies
.id
;
8194 if(var_tkwimpliesnode3
== NULL
) {
8197 if(cltype6
>= (((long)var_tkwimpliesnode3
&3)?type_info
[((long)var_tkwimpliesnode3
&3)]:var_tkwimpliesnode3
->type
)->table_size
) {
8200 var5
= (((long)var_tkwimpliesnode3
&3)?type_info
[((long)var_tkwimpliesnode3
&3)]:var_tkwimpliesnode3
->type
)->type_table
[cltype6
] == idtype7
;
8203 if (unlikely(!var5
)) {
8204 if(catchStack
.cursor
>= 0){
8205 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8207 PRINT_ERROR("Runtime error: %s", "Assert failed");
8208 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8592);
8211 var_pexprnode4
= var_nodearraylist4
;
8212 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8213 cltype9
= type_nullable__nitc__AExpr
.color
;
8214 idtype10
= type_nullable__nitc__AExpr
.id
;
8215 if(var_pexprnode4
== NULL
) {
8218 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
8221 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
8224 if (unlikely(!var8
)) {
8225 if(catchStack
.cursor
>= 0){
8226 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8228 PRINT_ERROR("Runtime error: %s", "Assert failed");
8229 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8594);
8232 var11
= NEW_nitc__AImpliesExpr(&type_nitc__AImpliesExpr
);
8234 nitc__parser_prod___AImpliesExpr___init_aimpliesexpr(var11
, var_pexprnode2
, var_tkwimpliesnode3
, var_pexprnode4
); /* Direct call parser_prod$AImpliesExpr$init_aimpliesexpr on <var11:AImpliesExpr>*/
8236 var_pexprnode1
= var11
;
8237 var_node_list
= var_pexprnode1
;
8238 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction294> */
8240 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
8243 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8247 /* method parser$ReduceAction296$action for (self: ReduceAction296, Parser) */
8248 void nitc__parser___nitc__parser__ReduceAction296___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8249 val
* var_p
/* var p: Parser */;
8250 val
* var_node_list
/* var node_list: nullable Object */;
8251 val
* var
/* : nullable Object */;
8252 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8253 val
* var1
/* : nullable Object */;
8254 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8255 val
* var2
/* : nullable Object */;
8256 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8257 val
* var_tkwnotnode2
/* var tkwnotnode2: nullable Object */;
8258 short int var3
/* : Bool */;
8261 val
* var_pexprnode3
/* var pexprnode3: nullable Object */;
8262 short int var4
/* : Bool */;
8265 val
* var7
/* : ANotExpr */;
8266 val
* var_pexprnode1
/* var pexprnode1: nullable ANotExpr */;
8267 long var8
/* : Int */;
8268 long var9
/* : Int */;
8270 var_node_list
= ((val
*)NULL
);
8272 var
= nitc___nitc__Parser___pop(var_p
);
8274 var_nodearraylist3
= var
;
8276 var1
= nitc___nitc__Parser___pop(var_p
);
8278 var_nodearraylist2
= var1
;
8280 var2
= nitc___nitc__Parser___pop(var_p
);
8282 var_nodearraylist1
= var2
;
8283 var_tkwnotnode2
= var_nodearraylist1
;
8284 /* <var_tkwnotnode2:nullable Object> isa nullable TKwnot */
8285 cltype
= type_nullable__nitc__TKwnot
.color
;
8286 idtype
= type_nullable__nitc__TKwnot
.id
;
8287 if(var_tkwnotnode2
== NULL
) {
8290 if(cltype
>= (((long)var_tkwnotnode2
&3)?type_info
[((long)var_tkwnotnode2
&3)]:var_tkwnotnode2
->type
)->table_size
) {
8293 var3
= (((long)var_tkwnotnode2
&3)?type_info
[((long)var_tkwnotnode2
&3)]:var_tkwnotnode2
->type
)->type_table
[cltype
] == idtype
;
8296 if (unlikely(!var3
)) {
8297 if(catchStack
.cursor
>= 0){
8298 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8300 PRINT_ERROR("Runtime error: %s", "Assert failed");
8301 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8613);
8304 var_pexprnode3
= var_nodearraylist3
;
8305 /* <var_pexprnode3:nullable Object> isa nullable AExpr */
8306 cltype5
= type_nullable__nitc__AExpr
.color
;
8307 idtype6
= type_nullable__nitc__AExpr
.id
;
8308 if(var_pexprnode3
== NULL
) {
8311 if(cltype5
>= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->table_size
) {
8314 var4
= (((long)var_pexprnode3
&3)?type_info
[((long)var_pexprnode3
&3)]:var_pexprnode3
->type
)->type_table
[cltype5
] == idtype6
;
8317 if (unlikely(!var4
)) {
8318 if(catchStack
.cursor
>= 0){
8319 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8321 PRINT_ERROR("Runtime error: %s", "Assert failed");
8322 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8615);
8325 var7
= NEW_nitc__ANotExpr(&type_nitc__ANotExpr
);
8327 nitc__parser_prod___ANotExpr___init_anotexpr(var7
, var_tkwnotnode2
, var_pexprnode3
); /* Direct call parser_prod$ANotExpr$init_anotexpr on <var7:ANotExpr>*/
8329 var_pexprnode1
= var7
;
8330 var_node_list
= var_pexprnode1
;
8331 var8
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction296> */
8333 var9
= nitc___nitc__Parser___go_to(var_p
, var8
);
8336 nitc___nitc__Parser___push(var_p
, var9
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8340 /* method parser$ReduceAction298$action for (self: ReduceAction298, Parser) */
8341 void nitc__parser___nitc__parser__ReduceAction298___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8342 val
* var_p
/* var p: Parser */;
8343 val
* var_node_list
/* var node_list: nullable Object */;
8344 val
* var
/* : nullable Object */;
8345 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8346 val
* var1
/* : nullable Object */;
8347 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8348 val
* var2
/* : nullable Object */;
8349 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8350 val
* var3
/* : nullable Object */;
8351 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8352 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8353 short int var4
/* : Bool */;
8356 val
* var_teqnode3
/* var teqnode3: nullable Object */;
8357 short int var5
/* : Bool */;
8360 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8361 short int var8
/* : Bool */;
8364 val
* var11
/* : AEqExpr */;
8365 val
* var_pexprnode1
/* var pexprnode1: nullable AEqExpr */;
8366 long var12
/* : Int */;
8367 long var13
/* : Int */;
8369 var_node_list
= ((val
*)NULL
);
8371 var
= nitc___nitc__Parser___pop(var_p
);
8373 var_nodearraylist4
= var
;
8375 var1
= nitc___nitc__Parser___pop(var_p
);
8377 var_nodearraylist3
= var1
;
8379 var2
= nitc___nitc__Parser___pop(var_p
);
8381 var_nodearraylist2
= var2
;
8383 var3
= nitc___nitc__Parser___pop(var_p
);
8385 var_nodearraylist1
= var3
;
8386 var_pexprnode2
= var_nodearraylist1
;
8387 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8388 cltype
= type_nullable__nitc__AExpr
.color
;
8389 idtype
= type_nullable__nitc__AExpr
.id
;
8390 if(var_pexprnode2
== NULL
) {
8393 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
8396 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
8399 if (unlikely(!var4
)) {
8400 if(catchStack
.cursor
>= 0){
8401 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8403 PRINT_ERROR("Runtime error: %s", "Assert failed");
8404 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8634);
8407 var_teqnode3
= var_nodearraylist2
;
8408 /* <var_teqnode3:nullable Object> isa nullable TEq */
8409 cltype6
= type_nullable__nitc__TEq
.color
;
8410 idtype7
= type_nullable__nitc__TEq
.id
;
8411 if(var_teqnode3
== NULL
) {
8414 if(cltype6
>= (((long)var_teqnode3
&3)?type_info
[((long)var_teqnode3
&3)]:var_teqnode3
->type
)->table_size
) {
8417 var5
= (((long)var_teqnode3
&3)?type_info
[((long)var_teqnode3
&3)]:var_teqnode3
->type
)->type_table
[cltype6
] == idtype7
;
8420 if (unlikely(!var5
)) {
8421 if(catchStack
.cursor
>= 0){
8422 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8424 PRINT_ERROR("Runtime error: %s", "Assert failed");
8425 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8636);
8428 var_pexprnode4
= var_nodearraylist4
;
8429 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8430 cltype9
= type_nullable__nitc__AExpr
.color
;
8431 idtype10
= type_nullable__nitc__AExpr
.id
;
8432 if(var_pexprnode4
== NULL
) {
8435 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
8438 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
8441 if (unlikely(!var8
)) {
8442 if(catchStack
.cursor
>= 0){
8443 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8445 PRINT_ERROR("Runtime error: %s", "Assert failed");
8446 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8638);
8449 var11
= NEW_nitc__AEqExpr(&type_nitc__AEqExpr
);
8451 nitc__parser_prod___AEqExpr___init_aeqexpr(var11
, var_pexprnode2
, var_teqnode3
, var_pexprnode4
); /* Direct call parser_prod$AEqExpr$init_aeqexpr on <var11:AEqExpr>*/
8453 var_pexprnode1
= var11
;
8454 var_node_list
= var_pexprnode1
;
8455 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction298> */
8457 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
8460 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8464 /* method parser$ReduceAction299$action for (self: ReduceAction299, Parser) */
8465 void nitc__parser___nitc__parser__ReduceAction299___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8466 val
* var_p
/* var p: Parser */;
8467 val
* var_node_list
/* var node_list: nullable Object */;
8468 val
* var
/* : nullable Object */;
8469 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8470 val
* var1
/* : nullable Object */;
8471 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8472 val
* var2
/* : nullable Object */;
8473 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8474 val
* var3
/* : nullable Object */;
8475 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8476 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8477 short int var4
/* : Bool */;
8480 val
* var_tnenode3
/* var tnenode3: nullable Object */;
8481 short int var5
/* : Bool */;
8484 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8485 short int var8
/* : Bool */;
8488 val
* var11
/* : ANeExpr */;
8489 val
* var_pexprnode1
/* var pexprnode1: nullable ANeExpr */;
8490 long var12
/* : Int */;
8491 long var13
/* : Int */;
8493 var_node_list
= ((val
*)NULL
);
8495 var
= nitc___nitc__Parser___pop(var_p
);
8497 var_nodearraylist4
= var
;
8499 var1
= nitc___nitc__Parser___pop(var_p
);
8501 var_nodearraylist3
= var1
;
8503 var2
= nitc___nitc__Parser___pop(var_p
);
8505 var_nodearraylist2
= var2
;
8507 var3
= nitc___nitc__Parser___pop(var_p
);
8509 var_nodearraylist1
= var3
;
8510 var_pexprnode2
= var_nodearraylist1
;
8511 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8512 cltype
= type_nullable__nitc__AExpr
.color
;
8513 idtype
= type_nullable__nitc__AExpr
.id
;
8514 if(var_pexprnode2
== NULL
) {
8517 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
8520 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
8523 if (unlikely(!var4
)) {
8524 if(catchStack
.cursor
>= 0){
8525 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8527 PRINT_ERROR("Runtime error: %s", "Assert failed");
8528 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8658);
8531 var_tnenode3
= var_nodearraylist2
;
8532 /* <var_tnenode3:nullable Object> isa nullable TNe */
8533 cltype6
= type_nullable__nitc__TNe
.color
;
8534 idtype7
= type_nullable__nitc__TNe
.id
;
8535 if(var_tnenode3
== NULL
) {
8538 if(cltype6
>= (((long)var_tnenode3
&3)?type_info
[((long)var_tnenode3
&3)]:var_tnenode3
->type
)->table_size
) {
8541 var5
= (((long)var_tnenode3
&3)?type_info
[((long)var_tnenode3
&3)]:var_tnenode3
->type
)->type_table
[cltype6
] == idtype7
;
8544 if (unlikely(!var5
)) {
8545 if(catchStack
.cursor
>= 0){
8546 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8548 PRINT_ERROR("Runtime error: %s", "Assert failed");
8549 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8660);
8552 var_pexprnode4
= var_nodearraylist4
;
8553 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8554 cltype9
= type_nullable__nitc__AExpr
.color
;
8555 idtype10
= type_nullable__nitc__AExpr
.id
;
8556 if(var_pexprnode4
== NULL
) {
8559 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
8562 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
8565 if (unlikely(!var8
)) {
8566 if(catchStack
.cursor
>= 0){
8567 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8569 PRINT_ERROR("Runtime error: %s", "Assert failed");
8570 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8662);
8573 var11
= NEW_nitc__ANeExpr(&type_nitc__ANeExpr
);
8575 nitc__parser_prod___ANeExpr___init_aneexpr(var11
, var_pexprnode2
, var_tnenode3
, var_pexprnode4
); /* Direct call parser_prod$ANeExpr$init_aneexpr on <var11:ANeExpr>*/
8577 var_pexprnode1
= var11
;
8578 var_node_list
= var_pexprnode1
;
8579 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction299> */
8581 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
8584 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8588 /* method parser$ReduceAction300$action for (self: ReduceAction300, Parser) */
8589 void nitc__parser___nitc__parser__ReduceAction300___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8590 val
* var_p
/* var p: Parser */;
8591 val
* var_node_list
/* var node_list: nullable Object */;
8592 val
* var
/* : nullable Object */;
8593 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8594 val
* var1
/* : nullable Object */;
8595 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8596 val
* var2
/* : nullable Object */;
8597 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8598 val
* var3
/* : nullable Object */;
8599 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8600 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8601 short int var4
/* : Bool */;
8604 val
* var_tltnode3
/* var tltnode3: nullable Object */;
8605 short int var5
/* : Bool */;
8608 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8609 short int var8
/* : Bool */;
8612 val
* var11
/* : ALtExpr */;
8613 val
* var_pexprnode1
/* var pexprnode1: nullable ALtExpr */;
8614 long var12
/* : Int */;
8615 long var13
/* : Int */;
8617 var_node_list
= ((val
*)NULL
);
8619 var
= nitc___nitc__Parser___pop(var_p
);
8621 var_nodearraylist4
= var
;
8623 var1
= nitc___nitc__Parser___pop(var_p
);
8625 var_nodearraylist3
= var1
;
8627 var2
= nitc___nitc__Parser___pop(var_p
);
8629 var_nodearraylist2
= var2
;
8631 var3
= nitc___nitc__Parser___pop(var_p
);
8633 var_nodearraylist1
= var3
;
8634 var_pexprnode2
= var_nodearraylist1
;
8635 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8636 cltype
= type_nullable__nitc__AExpr
.color
;
8637 idtype
= type_nullable__nitc__AExpr
.id
;
8638 if(var_pexprnode2
== NULL
) {
8641 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
8644 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
8647 if (unlikely(!var4
)) {
8648 if(catchStack
.cursor
>= 0){
8649 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8651 PRINT_ERROR("Runtime error: %s", "Assert failed");
8652 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8682);
8655 var_tltnode3
= var_nodearraylist2
;
8656 /* <var_tltnode3:nullable Object> isa nullable TLt */
8657 cltype6
= type_nullable__nitc__TLt
.color
;
8658 idtype7
= type_nullable__nitc__TLt
.id
;
8659 if(var_tltnode3
== NULL
) {
8662 if(cltype6
>= (((long)var_tltnode3
&3)?type_info
[((long)var_tltnode3
&3)]:var_tltnode3
->type
)->table_size
) {
8665 var5
= (((long)var_tltnode3
&3)?type_info
[((long)var_tltnode3
&3)]:var_tltnode3
->type
)->type_table
[cltype6
] == idtype7
;
8668 if (unlikely(!var5
)) {
8669 if(catchStack
.cursor
>= 0){
8670 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8672 PRINT_ERROR("Runtime error: %s", "Assert failed");
8673 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8684);
8676 var_pexprnode4
= var_nodearraylist4
;
8677 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8678 cltype9
= type_nullable__nitc__AExpr
.color
;
8679 idtype10
= type_nullable__nitc__AExpr
.id
;
8680 if(var_pexprnode4
== NULL
) {
8683 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
8686 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
8689 if (unlikely(!var8
)) {
8690 if(catchStack
.cursor
>= 0){
8691 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8693 PRINT_ERROR("Runtime error: %s", "Assert failed");
8694 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8686);
8697 var11
= NEW_nitc__ALtExpr(&type_nitc__ALtExpr
);
8699 nitc__parser_prod___ALtExpr___init_altexpr(var11
, var_pexprnode2
, var_tltnode3
, var_pexprnode4
); /* Direct call parser_prod$ALtExpr$init_altexpr on <var11:ALtExpr>*/
8701 var_pexprnode1
= var11
;
8702 var_node_list
= var_pexprnode1
;
8703 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction300> */
8705 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
8708 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8712 /* method parser$ReduceAction301$action for (self: ReduceAction301, Parser) */
8713 void nitc__parser___nitc__parser__ReduceAction301___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8714 val
* var_p
/* var p: Parser */;
8715 val
* var_node_list
/* var node_list: nullable Object */;
8716 val
* var
/* : nullable Object */;
8717 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8718 val
* var1
/* : nullable Object */;
8719 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8720 val
* var2
/* : nullable Object */;
8721 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8722 val
* var3
/* : nullable Object */;
8723 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8724 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8725 short int var4
/* : Bool */;
8728 val
* var_tlenode3
/* var tlenode3: nullable Object */;
8729 short int var5
/* : Bool */;
8732 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8733 short int var8
/* : Bool */;
8736 val
* var11
/* : ALeExpr */;
8737 val
* var_pexprnode1
/* var pexprnode1: nullable ALeExpr */;
8738 long var12
/* : Int */;
8739 long var13
/* : Int */;
8741 var_node_list
= ((val
*)NULL
);
8743 var
= nitc___nitc__Parser___pop(var_p
);
8745 var_nodearraylist4
= var
;
8747 var1
= nitc___nitc__Parser___pop(var_p
);
8749 var_nodearraylist3
= var1
;
8751 var2
= nitc___nitc__Parser___pop(var_p
);
8753 var_nodearraylist2
= var2
;
8755 var3
= nitc___nitc__Parser___pop(var_p
);
8757 var_nodearraylist1
= var3
;
8758 var_pexprnode2
= var_nodearraylist1
;
8759 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8760 cltype
= type_nullable__nitc__AExpr
.color
;
8761 idtype
= type_nullable__nitc__AExpr
.id
;
8762 if(var_pexprnode2
== NULL
) {
8765 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
8768 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
8771 if (unlikely(!var4
)) {
8772 if(catchStack
.cursor
>= 0){
8773 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8775 PRINT_ERROR("Runtime error: %s", "Assert failed");
8776 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8706);
8779 var_tlenode3
= var_nodearraylist2
;
8780 /* <var_tlenode3:nullable Object> isa nullable TLe */
8781 cltype6
= type_nullable__nitc__TLe
.color
;
8782 idtype7
= type_nullable__nitc__TLe
.id
;
8783 if(var_tlenode3
== NULL
) {
8786 if(cltype6
>= (((long)var_tlenode3
&3)?type_info
[((long)var_tlenode3
&3)]:var_tlenode3
->type
)->table_size
) {
8789 var5
= (((long)var_tlenode3
&3)?type_info
[((long)var_tlenode3
&3)]:var_tlenode3
->type
)->type_table
[cltype6
] == idtype7
;
8792 if (unlikely(!var5
)) {
8793 if(catchStack
.cursor
>= 0){
8794 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8796 PRINT_ERROR("Runtime error: %s", "Assert failed");
8797 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8708);
8800 var_pexprnode4
= var_nodearraylist4
;
8801 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8802 cltype9
= type_nullable__nitc__AExpr
.color
;
8803 idtype10
= type_nullable__nitc__AExpr
.id
;
8804 if(var_pexprnode4
== NULL
) {
8807 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
8810 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
8813 if (unlikely(!var8
)) {
8814 if(catchStack
.cursor
>= 0){
8815 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8817 PRINT_ERROR("Runtime error: %s", "Assert failed");
8818 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8710);
8821 var11
= NEW_nitc__ALeExpr(&type_nitc__ALeExpr
);
8823 nitc__parser_prod___ALeExpr___init_aleexpr(var11
, var_pexprnode2
, var_tlenode3
, var_pexprnode4
); /* Direct call parser_prod$ALeExpr$init_aleexpr on <var11:ALeExpr>*/
8825 var_pexprnode1
= var11
;
8826 var_node_list
= var_pexprnode1
;
8827 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction301> */
8829 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
8832 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8836 /* method parser$ReduceAction302$action for (self: ReduceAction302, Parser) */
8837 void nitc__parser___nitc__parser__ReduceAction302___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8838 val
* var_p
/* var p: Parser */;
8839 val
* var_node_list
/* var node_list: nullable Object */;
8840 val
* var
/* : nullable Object */;
8841 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8842 val
* var1
/* : nullable Object */;
8843 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8844 val
* var2
/* : nullable Object */;
8845 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8846 val
* var3
/* : nullable Object */;
8847 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8848 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8849 short int var4
/* : Bool */;
8852 val
* var_tgtnode3
/* var tgtnode3: nullable Object */;
8853 short int var5
/* : Bool */;
8856 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8857 short int var8
/* : Bool */;
8860 val
* var11
/* : AGtExpr */;
8861 val
* var_pexprnode1
/* var pexprnode1: nullable AGtExpr */;
8862 long var12
/* : Int */;
8863 long var13
/* : Int */;
8865 var_node_list
= ((val
*)NULL
);
8867 var
= nitc___nitc__Parser___pop(var_p
);
8869 var_nodearraylist4
= var
;
8871 var1
= nitc___nitc__Parser___pop(var_p
);
8873 var_nodearraylist3
= var1
;
8875 var2
= nitc___nitc__Parser___pop(var_p
);
8877 var_nodearraylist2
= var2
;
8879 var3
= nitc___nitc__Parser___pop(var_p
);
8881 var_nodearraylist1
= var3
;
8882 var_pexprnode2
= var_nodearraylist1
;
8883 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
8884 cltype
= type_nullable__nitc__AExpr
.color
;
8885 idtype
= type_nullable__nitc__AExpr
.id
;
8886 if(var_pexprnode2
== NULL
) {
8889 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
8892 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
8895 if (unlikely(!var4
)) {
8896 if(catchStack
.cursor
>= 0){
8897 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8899 PRINT_ERROR("Runtime error: %s", "Assert failed");
8900 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8730);
8903 var_tgtnode3
= var_nodearraylist2
;
8904 /* <var_tgtnode3:nullable Object> isa nullable TGt */
8905 cltype6
= type_nullable__nitc__TGt
.color
;
8906 idtype7
= type_nullable__nitc__TGt
.id
;
8907 if(var_tgtnode3
== NULL
) {
8910 if(cltype6
>= (((long)var_tgtnode3
&3)?type_info
[((long)var_tgtnode3
&3)]:var_tgtnode3
->type
)->table_size
) {
8913 var5
= (((long)var_tgtnode3
&3)?type_info
[((long)var_tgtnode3
&3)]:var_tgtnode3
->type
)->type_table
[cltype6
] == idtype7
;
8916 if (unlikely(!var5
)) {
8917 if(catchStack
.cursor
>= 0){
8918 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8920 PRINT_ERROR("Runtime error: %s", "Assert failed");
8921 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8732);
8924 var_pexprnode4
= var_nodearraylist4
;
8925 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
8926 cltype9
= type_nullable__nitc__AExpr
.color
;
8927 idtype10
= type_nullable__nitc__AExpr
.id
;
8928 if(var_pexprnode4
== NULL
) {
8931 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
8934 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
8937 if (unlikely(!var8
)) {
8938 if(catchStack
.cursor
>= 0){
8939 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
8941 PRINT_ERROR("Runtime error: %s", "Assert failed");
8942 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8734);
8945 var11
= NEW_nitc__AGtExpr(&type_nitc__AGtExpr
);
8947 nitc__parser_prod___AGtExpr___init_agtexpr(var11
, var_pexprnode2
, var_tgtnode3
, var_pexprnode4
); /* Direct call parser_prod$AGtExpr$init_agtexpr on <var11:AGtExpr>*/
8949 var_pexprnode1
= var11
;
8950 var_node_list
= var_pexprnode1
;
8951 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction302> */
8953 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
8956 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
8960 /* method parser$ReduceAction303$action for (self: ReduceAction303, Parser) */
8961 void nitc__parser___nitc__parser__ReduceAction303___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
8962 val
* var_p
/* var p: Parser */;
8963 val
* var_node_list
/* var node_list: nullable Object */;
8964 val
* var
/* : nullable Object */;
8965 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
8966 val
* var1
/* : nullable Object */;
8967 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
8968 val
* var2
/* : nullable Object */;
8969 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
8970 val
* var3
/* : nullable Object */;
8971 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
8972 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
8973 short int var4
/* : Bool */;
8976 val
* var_tgenode3
/* var tgenode3: nullable Object */;
8977 short int var5
/* : Bool */;
8980 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
8981 short int var8
/* : Bool */;
8984 val
* var11
/* : AGeExpr */;
8985 val
* var_pexprnode1
/* var pexprnode1: nullable AGeExpr */;
8986 long var12
/* : Int */;
8987 long var13
/* : Int */;
8989 var_node_list
= ((val
*)NULL
);
8991 var
= nitc___nitc__Parser___pop(var_p
);
8993 var_nodearraylist4
= var
;
8995 var1
= nitc___nitc__Parser___pop(var_p
);
8997 var_nodearraylist3
= var1
;
8999 var2
= nitc___nitc__Parser___pop(var_p
);
9001 var_nodearraylist2
= var2
;
9003 var3
= nitc___nitc__Parser___pop(var_p
);
9005 var_nodearraylist1
= var3
;
9006 var_pexprnode2
= var_nodearraylist1
;
9007 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9008 cltype
= type_nullable__nitc__AExpr
.color
;
9009 idtype
= type_nullable__nitc__AExpr
.id
;
9010 if(var_pexprnode2
== NULL
) {
9013 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9016 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9019 if (unlikely(!var4
)) {
9020 if(catchStack
.cursor
>= 0){
9021 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9023 PRINT_ERROR("Runtime error: %s", "Assert failed");
9024 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8754);
9027 var_tgenode3
= var_nodearraylist2
;
9028 /* <var_tgenode3:nullable Object> isa nullable TGe */
9029 cltype6
= type_nullable__nitc__TGe
.color
;
9030 idtype7
= type_nullable__nitc__TGe
.id
;
9031 if(var_tgenode3
== NULL
) {
9034 if(cltype6
>= (((long)var_tgenode3
&3)?type_info
[((long)var_tgenode3
&3)]:var_tgenode3
->type
)->table_size
) {
9037 var5
= (((long)var_tgenode3
&3)?type_info
[((long)var_tgenode3
&3)]:var_tgenode3
->type
)->type_table
[cltype6
] == idtype7
;
9040 if (unlikely(!var5
)) {
9041 if(catchStack
.cursor
>= 0){
9042 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9044 PRINT_ERROR("Runtime error: %s", "Assert failed");
9045 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8756);
9048 var_pexprnode4
= var_nodearraylist4
;
9049 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9050 cltype9
= type_nullable__nitc__AExpr
.color
;
9051 idtype10
= type_nullable__nitc__AExpr
.id
;
9052 if(var_pexprnode4
== NULL
) {
9055 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
9058 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
9061 if (unlikely(!var8
)) {
9062 if(catchStack
.cursor
>= 0){
9063 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9065 PRINT_ERROR("Runtime error: %s", "Assert failed");
9066 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8758);
9069 var11
= NEW_nitc__AGeExpr(&type_nitc__AGeExpr
);
9071 nitc__parser_prod___AGeExpr___init_ageexpr(var11
, var_pexprnode2
, var_tgenode3
, var_pexprnode4
); /* Direct call parser_prod$AGeExpr$init_ageexpr on <var11:AGeExpr>*/
9073 var_pexprnode1
= var11
;
9074 var_node_list
= var_pexprnode1
;
9075 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction303> */
9077 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9080 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
9084 /* method parser$ReduceAction304$action for (self: ReduceAction304, Parser) */
9085 void nitc__parser___nitc__parser__ReduceAction304___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9086 val
* var_p
/* var p: Parser */;
9087 val
* var_node_list
/* var node_list: nullable Object */;
9088 val
* var
/* : nullable Object */;
9089 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9090 val
* var1
/* : nullable Object */;
9091 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9092 val
* var2
/* : nullable Object */;
9093 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9094 val
* var3
/* : nullable Object */;
9095 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9096 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9097 short int var4
/* : Bool */;
9100 val
* var_tstarshipnode3
/* var tstarshipnode3: nullable Object */;
9101 short int var5
/* : Bool */;
9104 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9105 short int var8
/* : Bool */;
9108 val
* var11
/* : AStarshipExpr */;
9109 val
* var_pexprnode1
/* var pexprnode1: nullable AStarshipExpr */;
9110 long var12
/* : Int */;
9111 long var13
/* : Int */;
9113 var_node_list
= ((val
*)NULL
);
9115 var
= nitc___nitc__Parser___pop(var_p
);
9117 var_nodearraylist4
= var
;
9119 var1
= nitc___nitc__Parser___pop(var_p
);
9121 var_nodearraylist3
= var1
;
9123 var2
= nitc___nitc__Parser___pop(var_p
);
9125 var_nodearraylist2
= var2
;
9127 var3
= nitc___nitc__Parser___pop(var_p
);
9129 var_nodearraylist1
= var3
;
9130 var_pexprnode2
= var_nodearraylist1
;
9131 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9132 cltype
= type_nullable__nitc__AExpr
.color
;
9133 idtype
= type_nullable__nitc__AExpr
.id
;
9134 if(var_pexprnode2
== NULL
) {
9137 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9140 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9143 if (unlikely(!var4
)) {
9144 if(catchStack
.cursor
>= 0){
9145 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9147 PRINT_ERROR("Runtime error: %s", "Assert failed");
9148 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8778);
9151 var_tstarshipnode3
= var_nodearraylist2
;
9152 /* <var_tstarshipnode3:nullable Object> isa nullable TStarship */
9153 cltype6
= type_nullable__nitc__TStarship
.color
;
9154 idtype7
= type_nullable__nitc__TStarship
.id
;
9155 if(var_tstarshipnode3
== NULL
) {
9158 if(cltype6
>= (((long)var_tstarshipnode3
&3)?type_info
[((long)var_tstarshipnode3
&3)]:var_tstarshipnode3
->type
)->table_size
) {
9161 var5
= (((long)var_tstarshipnode3
&3)?type_info
[((long)var_tstarshipnode3
&3)]:var_tstarshipnode3
->type
)->type_table
[cltype6
] == idtype7
;
9164 if (unlikely(!var5
)) {
9165 if(catchStack
.cursor
>= 0){
9166 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9168 PRINT_ERROR("Runtime error: %s", "Assert failed");
9169 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8780);
9172 var_pexprnode4
= var_nodearraylist4
;
9173 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9174 cltype9
= type_nullable__nitc__AExpr
.color
;
9175 idtype10
= type_nullable__nitc__AExpr
.id
;
9176 if(var_pexprnode4
== NULL
) {
9179 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
9182 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
9185 if (unlikely(!var8
)) {
9186 if(catchStack
.cursor
>= 0){
9187 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9189 PRINT_ERROR("Runtime error: %s", "Assert failed");
9190 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8782);
9193 var11
= NEW_nitc__AStarshipExpr(&type_nitc__AStarshipExpr
);
9195 nitc__parser_prod___AStarshipExpr___init_astarshipexpr(var11
, var_pexprnode2
, var_tstarshipnode3
, var_pexprnode4
); /* Direct call parser_prod$AStarshipExpr$init_astarshipexpr on <var11:AStarshipExpr>*/
9197 var_pexprnode1
= var11
;
9198 var_node_list
= var_pexprnode1
;
9199 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction304> */
9201 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9204 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
9208 /* method parser$ReduceAction305$action for (self: ReduceAction305, Parser) */
9209 void nitc__parser___nitc__parser__ReduceAction305___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9210 val
* var_p
/* var p: Parser */;
9211 val
* var_node_list
/* var node_list: nullable Object */;
9212 val
* var
/* : nullable Object */;
9213 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9214 val
* var1
/* : nullable Object */;
9215 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9216 val
* var2
/* : nullable Object */;
9217 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9218 val
* var3
/* : nullable Object */;
9219 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9220 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9221 short int var4
/* : Bool */;
9224 val
* var_tkwisanode3
/* var tkwisanode3: nullable Object */;
9225 short int var5
/* : Bool */;
9228 val
* var_ptypenode4
/* var ptypenode4: nullable Object */;
9229 short int var8
/* : Bool */;
9232 val
* var11
/* : AIsaExpr */;
9233 val
* var_pexprnode1
/* var pexprnode1: nullable AIsaExpr */;
9234 long var12
/* : Int */;
9235 long var13
/* : Int */;
9237 var_node_list
= ((val
*)NULL
);
9239 var
= nitc___nitc__Parser___pop(var_p
);
9241 var_nodearraylist4
= var
;
9243 var1
= nitc___nitc__Parser___pop(var_p
);
9245 var_nodearraylist3
= var1
;
9247 var2
= nitc___nitc__Parser___pop(var_p
);
9249 var_nodearraylist2
= var2
;
9251 var3
= nitc___nitc__Parser___pop(var_p
);
9253 var_nodearraylist1
= var3
;
9254 var_pexprnode2
= var_nodearraylist1
;
9255 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9256 cltype
= type_nullable__nitc__AExpr
.color
;
9257 idtype
= type_nullable__nitc__AExpr
.id
;
9258 if(var_pexprnode2
== NULL
) {
9261 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9264 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9267 if (unlikely(!var4
)) {
9268 if(catchStack
.cursor
>= 0){
9269 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9271 PRINT_ERROR("Runtime error: %s", "Assert failed");
9272 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8802);
9275 var_tkwisanode3
= var_nodearraylist2
;
9276 /* <var_tkwisanode3:nullable Object> isa nullable TKwisa */
9277 cltype6
= type_nullable__nitc__TKwisa
.color
;
9278 idtype7
= type_nullable__nitc__TKwisa
.id
;
9279 if(var_tkwisanode3
== NULL
) {
9282 if(cltype6
>= (((long)var_tkwisanode3
&3)?type_info
[((long)var_tkwisanode3
&3)]:var_tkwisanode3
->type
)->table_size
) {
9285 var5
= (((long)var_tkwisanode3
&3)?type_info
[((long)var_tkwisanode3
&3)]:var_tkwisanode3
->type
)->type_table
[cltype6
] == idtype7
;
9288 if (unlikely(!var5
)) {
9289 if(catchStack
.cursor
>= 0){
9290 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9292 PRINT_ERROR("Runtime error: %s", "Assert failed");
9293 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8804);
9296 var_ptypenode4
= var_nodearraylist4
;
9297 /* <var_ptypenode4:nullable Object> isa nullable AType */
9298 cltype9
= type_nullable__nitc__AType
.color
;
9299 idtype10
= type_nullable__nitc__AType
.id
;
9300 if(var_ptypenode4
== NULL
) {
9303 if(cltype9
>= (((long)var_ptypenode4
&3)?type_info
[((long)var_ptypenode4
&3)]:var_ptypenode4
->type
)->table_size
) {
9306 var8
= (((long)var_ptypenode4
&3)?type_info
[((long)var_ptypenode4
&3)]:var_ptypenode4
->type
)->type_table
[cltype9
] == idtype10
;
9309 if (unlikely(!var8
)) {
9310 if(catchStack
.cursor
>= 0){
9311 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9313 PRINT_ERROR("Runtime error: %s", "Assert failed");
9314 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8806);
9317 var11
= NEW_nitc__AIsaExpr(&type_nitc__AIsaExpr
);
9319 nitc__parser_prod___AIsaExpr___init_aisaexpr(var11
, var_pexprnode2
, var_tkwisanode3
, var_ptypenode4
); /* Direct call parser_prod$AIsaExpr$init_aisaexpr on <var11:AIsaExpr>*/
9321 var_pexprnode1
= var11
;
9322 var_node_list
= var_pexprnode1
;
9323 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction305> */
9325 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9328 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
9332 /* method parser$ReduceAction307$action for (self: ReduceAction307, Parser) */
9333 void nitc__parser___nitc__parser__ReduceAction307___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9334 val
* var_p
/* var p: Parser */;
9335 val
* var_node_list
/* var node_list: nullable Object */;
9336 val
* var
/* : nullable Object */;
9337 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9338 val
* var1
/* : nullable Object */;
9339 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9340 val
* var2
/* : nullable Object */;
9341 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9342 val
* var3
/* : nullable Object */;
9343 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9344 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9345 short int var4
/* : Bool */;
9348 val
* var_tpipenode3
/* var tpipenode3: nullable Object */;
9349 short int var5
/* : Bool */;
9352 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9353 short int var8
/* : Bool */;
9356 val
* var11
/* : APipeExpr */;
9357 val
* var_pexprnode1
/* var pexprnode1: nullable APipeExpr */;
9358 long var12
/* : Int */;
9359 long var13
/* : Int */;
9361 var_node_list
= ((val
*)NULL
);
9363 var
= nitc___nitc__Parser___pop(var_p
);
9365 var_nodearraylist4
= var
;
9367 var1
= nitc___nitc__Parser___pop(var_p
);
9369 var_nodearraylist3
= var1
;
9371 var2
= nitc___nitc__Parser___pop(var_p
);
9373 var_nodearraylist2
= var2
;
9375 var3
= nitc___nitc__Parser___pop(var_p
);
9377 var_nodearraylist1
= var3
;
9378 var_pexprnode2
= var_nodearraylist1
;
9379 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9380 cltype
= type_nullable__nitc__AExpr
.color
;
9381 idtype
= type_nullable__nitc__AExpr
.id
;
9382 if(var_pexprnode2
== NULL
) {
9385 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9388 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9391 if (unlikely(!var4
)) {
9392 if(catchStack
.cursor
>= 0){
9393 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9395 PRINT_ERROR("Runtime error: %s", "Assert failed");
9396 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8826);
9399 var_tpipenode3
= var_nodearraylist2
;
9400 /* <var_tpipenode3:nullable Object> isa nullable TPipe */
9401 cltype6
= type_nullable__nitc__TPipe
.color
;
9402 idtype7
= type_nullable__nitc__TPipe
.id
;
9403 if(var_tpipenode3
== NULL
) {
9406 if(cltype6
>= (((long)var_tpipenode3
&3)?type_info
[((long)var_tpipenode3
&3)]:var_tpipenode3
->type
)->table_size
) {
9409 var5
= (((long)var_tpipenode3
&3)?type_info
[((long)var_tpipenode3
&3)]:var_tpipenode3
->type
)->type_table
[cltype6
] == idtype7
;
9412 if (unlikely(!var5
)) {
9413 if(catchStack
.cursor
>= 0){
9414 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9416 PRINT_ERROR("Runtime error: %s", "Assert failed");
9417 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8828);
9420 var_pexprnode4
= var_nodearraylist4
;
9421 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9422 cltype9
= type_nullable__nitc__AExpr
.color
;
9423 idtype10
= type_nullable__nitc__AExpr
.id
;
9424 if(var_pexprnode4
== NULL
) {
9427 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
9430 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
9433 if (unlikely(!var8
)) {
9434 if(catchStack
.cursor
>= 0){
9435 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9437 PRINT_ERROR("Runtime error: %s", "Assert failed");
9438 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8830);
9441 var11
= NEW_nitc__APipeExpr(&type_nitc__APipeExpr
);
9443 nitc__parser_prod___APipeExpr___init_apipeexpr(var11
, var_pexprnode2
, var_tpipenode3
, var_pexprnode4
); /* Direct call parser_prod$APipeExpr$init_apipeexpr on <var11:APipeExpr>*/
9445 var_pexprnode1
= var11
;
9446 var_node_list
= var_pexprnode1
;
9447 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction307> */
9449 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9452 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
9456 /* method parser$ReduceAction309$action for (self: ReduceAction309, Parser) */
9457 void nitc__parser___nitc__parser__ReduceAction309___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9458 val
* var_p
/* var p: Parser */;
9459 val
* var_node_list
/* var node_list: nullable Object */;
9460 val
* var
/* : nullable Object */;
9461 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9462 val
* var1
/* : nullable Object */;
9463 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9464 val
* var2
/* : nullable Object */;
9465 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9466 val
* var3
/* : nullable Object */;
9467 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9468 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9469 short int var4
/* : Bool */;
9472 val
* var_tcaretnode3
/* var tcaretnode3: nullable Object */;
9473 short int var5
/* : Bool */;
9476 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9477 short int var8
/* : Bool */;
9480 val
* var11
/* : ACaretExpr */;
9481 val
* var_pexprnode1
/* var pexprnode1: nullable ACaretExpr */;
9482 long var12
/* : Int */;
9483 long var13
/* : Int */;
9485 var_node_list
= ((val
*)NULL
);
9487 var
= nitc___nitc__Parser___pop(var_p
);
9489 var_nodearraylist4
= var
;
9491 var1
= nitc___nitc__Parser___pop(var_p
);
9493 var_nodearraylist3
= var1
;
9495 var2
= nitc___nitc__Parser___pop(var_p
);
9497 var_nodearraylist2
= var2
;
9499 var3
= nitc___nitc__Parser___pop(var_p
);
9501 var_nodearraylist1
= var3
;
9502 var_pexprnode2
= var_nodearraylist1
;
9503 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9504 cltype
= type_nullable__nitc__AExpr
.color
;
9505 idtype
= type_nullable__nitc__AExpr
.id
;
9506 if(var_pexprnode2
== NULL
) {
9509 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9512 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9515 if (unlikely(!var4
)) {
9516 if(catchStack
.cursor
>= 0){
9517 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9519 PRINT_ERROR("Runtime error: %s", "Assert failed");
9520 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8850);
9523 var_tcaretnode3
= var_nodearraylist2
;
9524 /* <var_tcaretnode3:nullable Object> isa nullable TCaret */
9525 cltype6
= type_nullable__nitc__TCaret
.color
;
9526 idtype7
= type_nullable__nitc__TCaret
.id
;
9527 if(var_tcaretnode3
== NULL
) {
9530 if(cltype6
>= (((long)var_tcaretnode3
&3)?type_info
[((long)var_tcaretnode3
&3)]:var_tcaretnode3
->type
)->table_size
) {
9533 var5
= (((long)var_tcaretnode3
&3)?type_info
[((long)var_tcaretnode3
&3)]:var_tcaretnode3
->type
)->type_table
[cltype6
] == idtype7
;
9536 if (unlikely(!var5
)) {
9537 if(catchStack
.cursor
>= 0){
9538 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9540 PRINT_ERROR("Runtime error: %s", "Assert failed");
9541 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8852);
9544 var_pexprnode4
= var_nodearraylist4
;
9545 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9546 cltype9
= type_nullable__nitc__AExpr
.color
;
9547 idtype10
= type_nullable__nitc__AExpr
.id
;
9548 if(var_pexprnode4
== NULL
) {
9551 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
9554 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
9557 if (unlikely(!var8
)) {
9558 if(catchStack
.cursor
>= 0){
9559 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9561 PRINT_ERROR("Runtime error: %s", "Assert failed");
9562 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8854);
9565 var11
= NEW_nitc__ACaretExpr(&type_nitc__ACaretExpr
);
9567 nitc__parser_prod___ACaretExpr___init_acaretexpr(var11
, var_pexprnode2
, var_tcaretnode3
, var_pexprnode4
); /* Direct call parser_prod$ACaretExpr$init_acaretexpr on <var11:ACaretExpr>*/
9569 var_pexprnode1
= var11
;
9570 var_node_list
= var_pexprnode1
;
9571 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction309> */
9573 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9576 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
9580 /* method parser$ReduceAction311$action for (self: ReduceAction311, Parser) */
9581 void nitc__parser___nitc__parser__ReduceAction311___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9582 val
* var_p
/* var p: Parser */;
9583 val
* var_node_list
/* var node_list: nullable Object */;
9584 val
* var
/* : nullable Object */;
9585 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9586 val
* var1
/* : nullable Object */;
9587 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9588 val
* var2
/* : nullable Object */;
9589 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9590 val
* var3
/* : nullable Object */;
9591 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9592 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9593 short int var4
/* : Bool */;
9596 val
* var_tampnode3
/* var tampnode3: nullable Object */;
9597 short int var5
/* : Bool */;
9600 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9601 short int var8
/* : Bool */;
9604 val
* var11
/* : AAmpExpr */;
9605 val
* var_pexprnode1
/* var pexprnode1: nullable AAmpExpr */;
9606 long var12
/* : Int */;
9607 long var13
/* : Int */;
9609 var_node_list
= ((val
*)NULL
);
9611 var
= nitc___nitc__Parser___pop(var_p
);
9613 var_nodearraylist4
= var
;
9615 var1
= nitc___nitc__Parser___pop(var_p
);
9617 var_nodearraylist3
= var1
;
9619 var2
= nitc___nitc__Parser___pop(var_p
);
9621 var_nodearraylist2
= var2
;
9623 var3
= nitc___nitc__Parser___pop(var_p
);
9625 var_nodearraylist1
= var3
;
9626 var_pexprnode2
= var_nodearraylist1
;
9627 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9628 cltype
= type_nullable__nitc__AExpr
.color
;
9629 idtype
= type_nullable__nitc__AExpr
.id
;
9630 if(var_pexprnode2
== NULL
) {
9633 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9636 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9639 if (unlikely(!var4
)) {
9640 if(catchStack
.cursor
>= 0){
9641 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9643 PRINT_ERROR("Runtime error: %s", "Assert failed");
9644 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8874);
9647 var_tampnode3
= var_nodearraylist2
;
9648 /* <var_tampnode3:nullable Object> isa nullable TAmp */
9649 cltype6
= type_nullable__nitc__TAmp
.color
;
9650 idtype7
= type_nullable__nitc__TAmp
.id
;
9651 if(var_tampnode3
== NULL
) {
9654 if(cltype6
>= (((long)var_tampnode3
&3)?type_info
[((long)var_tampnode3
&3)]:var_tampnode3
->type
)->table_size
) {
9657 var5
= (((long)var_tampnode3
&3)?type_info
[((long)var_tampnode3
&3)]:var_tampnode3
->type
)->type_table
[cltype6
] == idtype7
;
9660 if (unlikely(!var5
)) {
9661 if(catchStack
.cursor
>= 0){
9662 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9664 PRINT_ERROR("Runtime error: %s", "Assert failed");
9665 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8876);
9668 var_pexprnode4
= var_nodearraylist4
;
9669 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9670 cltype9
= type_nullable__nitc__AExpr
.color
;
9671 idtype10
= type_nullable__nitc__AExpr
.id
;
9672 if(var_pexprnode4
== NULL
) {
9675 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
9678 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
9681 if (unlikely(!var8
)) {
9682 if(catchStack
.cursor
>= 0){
9683 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9685 PRINT_ERROR("Runtime error: %s", "Assert failed");
9686 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8878);
9689 var11
= NEW_nitc__AAmpExpr(&type_nitc__AAmpExpr
);
9691 nitc__parser_prod___AAmpExpr___init_aampexpr(var11
, var_pexprnode2
, var_tampnode3
, var_pexprnode4
); /* Direct call parser_prod$AAmpExpr$init_aampexpr on <var11:AAmpExpr>*/
9693 var_pexprnode1
= var11
;
9694 var_node_list
= var_pexprnode1
;
9695 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction311> */
9697 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9700 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
9704 /* method parser$ReduceAction313$action for (self: ReduceAction313, Parser) */
9705 void nitc__parser___nitc__parser__ReduceAction313___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9706 val
* var_p
/* var p: Parser */;
9707 val
* var_node_list
/* var node_list: nullable Object */;
9708 val
* var
/* : nullable Object */;
9709 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9710 val
* var1
/* : nullable Object */;
9711 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9712 val
* var2
/* : nullable Object */;
9713 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9714 val
* var3
/* : nullable Object */;
9715 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9716 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9717 short int var4
/* : Bool */;
9720 val
* var_tllnode3
/* var tllnode3: nullable Object */;
9721 short int var5
/* : Bool */;
9724 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9725 short int var8
/* : Bool */;
9728 val
* var11
/* : ALlExpr */;
9729 val
* var_pexprnode1
/* var pexprnode1: nullable ALlExpr */;
9730 long var12
/* : Int */;
9731 long var13
/* : Int */;
9733 var_node_list
= ((val
*)NULL
);
9735 var
= nitc___nitc__Parser___pop(var_p
);
9737 var_nodearraylist4
= var
;
9739 var1
= nitc___nitc__Parser___pop(var_p
);
9741 var_nodearraylist3
= var1
;
9743 var2
= nitc___nitc__Parser___pop(var_p
);
9745 var_nodearraylist2
= var2
;
9747 var3
= nitc___nitc__Parser___pop(var_p
);
9749 var_nodearraylist1
= var3
;
9750 var_pexprnode2
= var_nodearraylist1
;
9751 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9752 cltype
= type_nullable__nitc__AExpr
.color
;
9753 idtype
= type_nullable__nitc__AExpr
.id
;
9754 if(var_pexprnode2
== NULL
) {
9757 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9760 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9763 if (unlikely(!var4
)) {
9764 if(catchStack
.cursor
>= 0){
9765 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9767 PRINT_ERROR("Runtime error: %s", "Assert failed");
9768 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8898);
9771 var_tllnode3
= var_nodearraylist2
;
9772 /* <var_tllnode3:nullable Object> isa nullable TLl */
9773 cltype6
= type_nullable__nitc__TLl
.color
;
9774 idtype7
= type_nullable__nitc__TLl
.id
;
9775 if(var_tllnode3
== NULL
) {
9778 if(cltype6
>= (((long)var_tllnode3
&3)?type_info
[((long)var_tllnode3
&3)]:var_tllnode3
->type
)->table_size
) {
9781 var5
= (((long)var_tllnode3
&3)?type_info
[((long)var_tllnode3
&3)]:var_tllnode3
->type
)->type_table
[cltype6
] == idtype7
;
9784 if (unlikely(!var5
)) {
9785 if(catchStack
.cursor
>= 0){
9786 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9788 PRINT_ERROR("Runtime error: %s", "Assert failed");
9789 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8900);
9792 var_pexprnode4
= var_nodearraylist4
;
9793 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9794 cltype9
= type_nullable__nitc__AExpr
.color
;
9795 idtype10
= type_nullable__nitc__AExpr
.id
;
9796 if(var_pexprnode4
== NULL
) {
9799 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
9802 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
9805 if (unlikely(!var8
)) {
9806 if(catchStack
.cursor
>= 0){
9807 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9809 PRINT_ERROR("Runtime error: %s", "Assert failed");
9810 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8902);
9813 var11
= NEW_nitc__ALlExpr(&type_nitc__ALlExpr
);
9815 nitc__parser_prod___ALlExpr___init_allexpr(var11
, var_pexprnode2
, var_tllnode3
, var_pexprnode4
); /* Direct call parser_prod$ALlExpr$init_allexpr on <var11:ALlExpr>*/
9817 var_pexprnode1
= var11
;
9818 var_node_list
= var_pexprnode1
;
9819 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction313> */
9821 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9824 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/
9828 /* method parser$ReduceAction314$action for (self: ReduceAction314, Parser) */
9829 void nitc__parser___nitc__parser__ReduceAction314___nitc__parser_work__ReduceAction__action(val
* self
, val
* p0
) {
9830 val
* var_p
/* var p: Parser */;
9831 val
* var_node_list
/* var node_list: nullable Object */;
9832 val
* var
/* : nullable Object */;
9833 val
* var_nodearraylist4
/* var nodearraylist4: nullable Object */;
9834 val
* var1
/* : nullable Object */;
9835 val
* var_nodearraylist3
/* var nodearraylist3: nullable Object */;
9836 val
* var2
/* : nullable Object */;
9837 val
* var_nodearraylist2
/* var nodearraylist2: nullable Object */;
9838 val
* var3
/* : nullable Object */;
9839 val
* var_nodearraylist1
/* var nodearraylist1: nullable Object */;
9840 val
* var_pexprnode2
/* var pexprnode2: nullable Object */;
9841 short int var4
/* : Bool */;
9844 val
* var_tggnode3
/* var tggnode3: nullable Object */;
9845 short int var5
/* : Bool */;
9848 val
* var_pexprnode4
/* var pexprnode4: nullable Object */;
9849 short int var8
/* : Bool */;
9852 val
* var11
/* : AGgExpr */;
9853 val
* var_pexprnode1
/* var pexprnode1: nullable AGgExpr */;
9854 long var12
/* : Int */;
9855 long var13
/* : Int */;
9857 var_node_list
= ((val
*)NULL
);
9859 var
= nitc___nitc__Parser___pop(var_p
);
9861 var_nodearraylist4
= var
;
9863 var1
= nitc___nitc__Parser___pop(var_p
);
9865 var_nodearraylist3
= var1
;
9867 var2
= nitc___nitc__Parser___pop(var_p
);
9869 var_nodearraylist2
= var2
;
9871 var3
= nitc___nitc__Parser___pop(var_p
);
9873 var_nodearraylist1
= var3
;
9874 var_pexprnode2
= var_nodearraylist1
;
9875 /* <var_pexprnode2:nullable Object> isa nullable AExpr */
9876 cltype
= type_nullable__nitc__AExpr
.color
;
9877 idtype
= type_nullable__nitc__AExpr
.id
;
9878 if(var_pexprnode2
== NULL
) {
9881 if(cltype
>= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->table_size
) {
9884 var4
= (((long)var_pexprnode2
&3)?type_info
[((long)var_pexprnode2
&3)]:var_pexprnode2
->type
)->type_table
[cltype
] == idtype
;
9887 if (unlikely(!var4
)) {
9888 if(catchStack
.cursor
>= 0){
9889 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9891 PRINT_ERROR("Runtime error: %s", "Assert failed");
9892 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8922);
9895 var_tggnode3
= var_nodearraylist2
;
9896 /* <var_tggnode3:nullable Object> isa nullable TGg */
9897 cltype6
= type_nullable__nitc__TGg
.color
;
9898 idtype7
= type_nullable__nitc__TGg
.id
;
9899 if(var_tggnode3
== NULL
) {
9902 if(cltype6
>= (((long)var_tggnode3
&3)?type_info
[((long)var_tggnode3
&3)]:var_tggnode3
->type
)->table_size
) {
9905 var5
= (((long)var_tggnode3
&3)?type_info
[((long)var_tggnode3
&3)]:var_tggnode3
->type
)->type_table
[cltype6
] == idtype7
;
9908 if (unlikely(!var5
)) {
9909 if(catchStack
.cursor
>= 0){
9910 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9912 PRINT_ERROR("Runtime error: %s", "Assert failed");
9913 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8924);
9916 var_pexprnode4
= var_nodearraylist4
;
9917 /* <var_pexprnode4:nullable Object> isa nullable AExpr */
9918 cltype9
= type_nullable__nitc__AExpr
.color
;
9919 idtype10
= type_nullable__nitc__AExpr
.id
;
9920 if(var_pexprnode4
== NULL
) {
9923 if(cltype9
>= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->table_size
) {
9926 var8
= (((long)var_pexprnode4
&3)?type_info
[((long)var_pexprnode4
&3)]:var_pexprnode4
->type
)->type_table
[cltype9
] == idtype10
;
9929 if (unlikely(!var8
)) {
9930 if(catchStack
.cursor
>= 0){
9931 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
9933 PRINT_ERROR("Runtime error: %s", "Assert failed");
9934 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser
, 8926);
9937 var11
= NEW_nitc__AGgExpr(&type_nitc__AGgExpr
);
9939 nitc__parser_prod___AGgExpr___init_aggexpr(var11
, var_pexprnode2
, var_tggnode3
, var_pexprnode4
); /* Direct call parser_prod$AGgExpr$init_aggexpr on <var11:AGgExpr>*/
9941 var_pexprnode1
= var11
;
9942 var_node_list
= var_pexprnode1
;
9943 var12
= self
->attrs
[COLOR_nitc__parser_work__ReduceAction___goto
].l
; /* _goto on <self:ReduceAction314> */
9945 var13
= nitc___nitc__Parser___go_to(var_p
, var12
);
9948 nitc___nitc__Parser___push(var_p
, var13
, var_node_list
); /* Direct call parser_work$Parser$push on <var_p:Parser>*/