X-Git-Url: http://nitlanguage.org diff --git a/c_src/nit__parser_prod.sep.3.c b/c_src/nit__parser_prod.sep.3.c index 9077932..c85fb3c 100644 --- a/c_src/nit__parser_prod.sep.3.c +++ b/c_src/nit__parser_prod.sep.3.c @@ -1,9 +1,22 @@ #include "nit__parser_prod.sep.0.h" -/* method parser_prod#AOrElseExpr#n_expr2= for (self: AOrElseExpr, AExpr) */ -void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AIfexprExpr#n_kwif= for (self: AIfexprExpr, TKwif) */ +void nit__parser_prod___AIfexprExpr___n_kwif_61d(val* self, val* p0) { +val* var_node /* var node: TKwif */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val = var_node; /* _n_kwif on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AIfexprExpr#n_expr= for (self: AIfexprExpr, AExpr) */ +void nit__parser_prod___AIfexprExpr___n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -12,87 +25,276 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AOrElseExpr#visit_all for (self: AOrElseExpr, Visitor) */ -void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AIfexprExpr#n_kwthen= for (self: AIfexprExpr, TKwthen) */ +void nit__parser_prod___AIfexprExpr___n_kwthen_61d(val* self, val* p0) { +val* var_node /* var node: TKwthen */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val = var_node; /* _n_kwthen on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AIfexprExpr#n_then= for (self: AIfexprExpr, AExpr) */ +void nit__parser_prod___AIfexprExpr___n_then_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val = var_node; /* _n_then on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AIfexprExpr#n_kwelse= for (self: AIfexprExpr, TKwelse) */ +void nit__parser_prod___AIfexprExpr___n_kwelse_61d(val* self, val* p0) { +val* var_node /* var node: TKwelse */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val = var_node; /* _n_kwelse on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AIfexprExpr#n_else= for (self: AIfexprExpr, AExpr) */ +void nit__parser_prod___AIfexprExpr___n_else_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val = var_node; /* _n_else on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AIfexprExpr#visit_all for (self: AIfexprExpr, Visitor) */ +void nit__parser_prod___AIfexprExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; +val* var /* : TKwif */; val* var1 /* : AExpr */; +val* var2 /* : TKwthen */; +val* var3 /* : AExpr */; +val* var4 /* : TKwelse */; +val* var5 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwif].val; /* _n_kwif on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3144); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwif"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3004); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val; /* _n_expr on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3145); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3005); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwthen].val; /* _n_kwthen on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwthen"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3006); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val; /* _n_then on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3007); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_kwelse].val; /* _n_kwelse on */ +if (unlikely(var4 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3008); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var5 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val; /* _n_else on */ +if (unlikely(var5 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3009); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AImpliesExpr#init_aimpliesexpr for (self: AImpliesExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AImpliesExpr___init_aimpliesexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AWhileExpr#init_awhileexpr for (self: AWhileExpr, nullable TKwwhile, nullable AExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */ +void nit__parser_prod___AWhileExpr___init_awhileexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +val* var_n_kwwhile /* var n_kwwhile: nullable TKwwhile */; val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; +val* var_n_kwdo /* var n_kwdo: nullable TKwdo */; +val* var_n_block /* var n_block: nullable AExpr */; +val* var_n_label /* var n_label: nullable ALabel */; +short int var /* : Bool */; +short int var5 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var11 /* : Bool */; +short int var13 /* : Bool */; +short int var14 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwwhile = p0; +var_n_expr = p1; +var_n_kwdo = p2; +var_n_block = p3; +var_n_label = p4; +if (unlikely(var_n_kwwhile == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3021); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val = var_n_kwwhile; /* _n_kwwhile on */ +if (var_n_kwwhile == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3022); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwwhile,self) on */ +if (unlikely(var_n_kwwhile == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwwhile->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3154); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3023); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3155); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3024); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL3:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3156); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3025); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val = var_n_kwdo; /* _n_kwdo on */ +if (var_n_kwdo == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3157); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3026); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on */ +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_kwdo->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val = var_n_block; /* _n_block on */ +if (var_n_block == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_block,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var7 = ((short int(*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other); /* == on */ +} +var8 = !var7; +var5 = var8; +goto RET_LABEL6; +RET_LABEL6:(void)0; +} +var = var5; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ +var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL9:(void)0; +} +} +} else { +} +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ +if (var_n_label == NULL) { +var10 = 0; /* is null */ +} else { +var10 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_label,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var13 = ((short int(*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other); /* == on */ +} +var14 = !var13; +var11 = var14; +goto RET_LABEL12; +RET_LABEL12:(void)0; } +var10 = var11; +} +if (var10){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ +var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL15:(void)0; +} +} +} else { } RET_LABEL:; } -/* method parser_prod#AImpliesExpr#replace_child for (self: AImpliesExpr, ANode, nullable ANode) */ -void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AWhileExpr#replace_child for (self: AWhileExpr, ANode, nullable ANode) */ +void nit__parser_prod___AWhileExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwwhile */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -109,19 +311,45 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : TKwdo */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; +val* var27 /* : nullable AExpr */; +short int var28 /* : Bool */; +short int var29 /* : Bool */; +short int var31 /* : Bool */; +short int var33 /* : Bool */; +short int var34 /* : Bool */; +int cltype35; +int idtype36; +const char* var_class_name37; +val* var38 /* : nullable ALabel */; +short int var39 /* : Bool */; +short int var40 /* : Bool */; +short int var42 /* : Bool */; +short int var44 /* : Bool */; +short int var45 /* : Bool */; +int cltype46; +int idtype47; +const char* var_class_name48; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val; /* _n_kwwhile on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3162); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwhile"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3035); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -134,9 +362,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwwhile */ +cltype = type_nit__TKwwhile.color; +idtype = type_nit__TKwwhile.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -148,21 +376,21 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3163); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwwhile", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3036); +fatal_exit(1); } { -nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AImpliesExpr#n_expr= on */ +nit__parser_prod___AWhileExpr___n_kwwhile_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_kwwhile= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val; /* _n_expr on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3166); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3039); +fatal_exit(1); } { { /* Inline kernel#Object#== (var7,var_old_child) on */ @@ -196,919 +424,172 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3167); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3040); +fatal_exit(1); } { -nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AImpliesExpr#n_expr2= on */ +nit__parser_prod___AWhileExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_expr= on */ } goto RET_LABEL; } else { } -RET_LABEL:; +var17 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val; /* _n_kwdo on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3043); +fatal_exit(1); } -/* method parser_prod#AImpliesExpr#n_expr= for (self: AImpliesExpr, AExpr) */ -void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } } -RET_LABEL:; +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; } -/* method parser_prod#AImpliesExpr#n_expr2= for (self: AImpliesExpr, AExpr) */ -void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +if (var18){ +/* isa TKwdo */ +cltype24 = type_nit__TKwdo.color; +idtype25 = type_nit__TKwdo.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; } -RET_LABEL:; } -/* method parser_prod#AImpliesExpr#visit_all for (self: AImpliesExpr, Visitor) */ -void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3186); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3044); +fatal_exit(1); } { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +nit__parser_prod___AWhileExpr___n_kwdo_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_kwdo= on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3187); -show_backtrace(1); +goto RET_LABEL; +} else { } +var27 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val; /* _n_block on */ +if (var27 == NULL) { +var28 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var27,var_old_child) on */ +var_other = var_old_child; { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ +var33 = var27 == var_other; +var31 = var33; +goto RET_LABEL32; +RET_LABEL32:(void)0; } -RET_LABEL:; } -/* method parser_prod#ANotExpr#init_anotexpr for (self: ANotExpr, nullable TKwnot, nullable AExpr) */ -void nit__parser_prod___ANotExpr___init_anotexpr(val* self, val* p0, val* p1) { -val* var_n_kwnot /* var n_kwnot: nullable TKwnot */; -val* var_n_expr /* var n_expr: nullable AExpr */; -var_n_kwnot = p0; -var_n_expr = p1; -if (unlikely(var_n_kwnot == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3196); -show_backtrace(1); +var29 = var31; +goto RET_LABEL30; +RET_LABEL30:(void)0; } -self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val = var_n_kwnot; /* _n_kwnot on */ -if (var_n_kwnot == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3197); -show_backtrace(1); +var28 = var29; +} +if (var28){ +/* isa nullable AExpr */ +cltype35 = type_nullable__nit__AExpr.color; +idtype36 = type_nullable__nit__AExpr.id; +if(var_new_child == NULL) { +var34 = 1; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwnot,self) on */ -if (unlikely(var_n_kwnot == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if(cltype35 >= var_new_child->type->table_size) { +var34 = 0; +} else { +var34 = var_new_child->type->type_table[cltype35] == idtype36; } -var_n_kwnot->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3198); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3199); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ANotExpr#replace_child for (self: ANotExpr, ANode, nullable ANode) */ -void nit__parser_prod___ANotExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwnot */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val; /* _n_kwnot on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnot"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3204); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} -} -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; -} -} -if (var1){ -/* isa TKwnot */ -cltype = type_nit__TKwnot.color; -idtype = type_nit__TKwnot.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwnot", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3205); -show_backtrace(1); -} -{ -nit__parser_prod___ANotExpr___n_kwnot_61d(self, var_new_child); /* Direct call parser_prod#ANotExpr#n_kwnot= on */ -} -goto RET_LABEL; -} else { -} -var7 = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3208); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -} -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; -} -} -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3209); -show_backtrace(1); -} -{ -nit__parser_prod___ANotExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#ANotExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -RET_LABEL:; -} -/* method parser_prod#ANotExpr#n_kwnot= for (self: ANotExpr, TKwnot) */ -void nit__parser_prod___ANotExpr___n_kwnot_61d(val* self, val* p0) { -val* var_node /* var node: TKwnot */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val = var_node; /* _n_kwnot on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ANotExpr#n_expr= for (self: ANotExpr, AExpr) */ -void nit__parser_prod___ANotExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ANotExpr#visit_all for (self: ANotExpr, Visitor) */ -void nit__parser_prod___ANotExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TKwnot */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val; /* _n_kwnot on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnot"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3228); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3229); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AEqExpr#init_aeqexpr for (self: AEqExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AEqExpr___init_aeqexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3238); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3239); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3240); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3241); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AEqExpr#replace_child for (self: AEqExpr, ANode, nullable ANode) */ -void nit__parser_prod___AEqExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3246); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} -} -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; -} -} -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3247); -show_backtrace(1); -} -{ -nit__parser_prod___AEqExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AEqExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3250); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -} -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; -} -} -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3251); -show_backtrace(1); -} -{ -nit__parser_prod___AEqExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AEqExpr#n_expr2= on */ -} -goto RET_LABEL; -} else { -} -RET_LABEL:; -} -/* method parser_prod#AEqExpr#n_expr= for (self: AEqExpr, AExpr) */ -void nit__parser_prod___AEqExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AEqExpr#n_expr2= for (self: AEqExpr, AExpr) */ -void nit__parser_prod___AEqExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AEqExpr#visit_all for (self: AEqExpr, Visitor) */ -void nit__parser_prod___AEqExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3270); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3271); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#ANeExpr#init_aneexpr for (self: ANeExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___ANeExpr___init_aneexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3280); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3281); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3282); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3283); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ANeExpr#replace_child for (self: ANeExpr, ANode, nullable ANode) */ -void nit__parser_prod___ANeExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3288); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} -} -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; -} -} -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3289); -show_backtrace(1); -} -{ -nit__parser_prod___ANeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ANeExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3292); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -} -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; -} -} -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3293); -show_backtrace(1); -} -{ -nit__parser_prod___ANeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ANeExpr#n_expr2= on */ -} -goto RET_LABEL; -} else { -} -RET_LABEL:; -} -/* method parser_prod#ANeExpr#n_expr= for (self: ANeExpr, AExpr) */ -void nit__parser_prod___ANeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ANeExpr#n_expr2= for (self: ANeExpr, AExpr) */ -void nit__parser_prod___ANeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ANeExpr#visit_all for (self: ANeExpr, Visitor) */ -void nit__parser_prod___ANeExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3312); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3313); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#ALtExpr#init_altexpr for (self: ALtExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___ALtExpr___init_altexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3322); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3323); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3324); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3325); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ALtExpr#replace_child for (self: ALtExpr, ANode, nullable ANode) */ -void nit__parser_prod___ALtExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3330); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} -} -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; -} -} -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; } -} -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3331); -show_backtrace(1); +if (unlikely(!var34)) { +var_class_name37 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name37); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3048); +fatal_exit(1); } { -nit__parser_prod___ALtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALtExpr#n_expr= on */ +nit__parser_prod___AWhileExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_block= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3334); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var38 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +if (var38 == NULL) { +var39 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var38,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var38,var_other) on */ +var44 = var38 == var_other; +var42 = var44; +goto RET_LABEL43; +RET_LABEL43:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var40 = var42; +goto RET_LABEL41; +RET_LABEL41:(void)0; } +var39 = var40; } -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +if (var39){ +/* isa nullable ALabel */ +cltype46 = type_nullable__nit__ALabel.color; +idtype47 = type_nullable__nit__ALabel.id; if(var_new_child == NULL) { -var13 = 0; +var45 = 1; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype46 >= var_new_child->type->table_size) { +var45 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var45 = var_new_child->type->type_table[cltype46] == idtype47; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3335); -show_backtrace(1); +if (unlikely(!var45)) { +var_class_name48 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name48); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3052); +fatal_exit(1); } { -nit__parser_prod___ALtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALtExpr#n_expr2= on */ +nit__parser_prod___AWhileExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#AWhileExpr#n_label= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ALtExpr#n_expr= for (self: ALtExpr, AExpr) */ -void nit__parser_prod___ALtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AWhileExpr#n_kwwhile= for (self: AWhileExpr, TKwwhile) */ +void nit__parser_prod___AWhileExpr___n_kwwhile_61d(val* self, val* p0) { +val* var_node /* var node: TKwwhile */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val = var_node; /* _n_kwwhile on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ALtExpr#n_expr2= for (self: ALtExpr, AExpr) */ -void nit__parser_prod___ALtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AWhileExpr#n_expr= for (self: AWhileExpr, AExpr) */ +void nit__parser_prod___AWhileExpr___n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -1117,308 +598,249 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ALtExpr#visit_all for (self: ALtExpr, Visitor) */ -void nit__parser_prod___ALtExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3354); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3355); -show_backtrace(1); -} +/* method parser_prod#AWhileExpr#n_kwdo= for (self: AWhileExpr, TKwdo) */ +void nit__parser_prod___AWhileExpr___n_kwdo_61d(val* self, val* p0) { +val* var_node /* var node: TKwdo */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val = var_node; /* _n_kwdo on */ { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#ALeExpr#init_aleexpr for (self: ALeExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___ALeExpr___init_aleexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3364); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3365); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3366); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3367); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} RET_LABEL:; } -/* method parser_prod#ALeExpr#replace_child for (self: ALeExpr, ANode, nullable ANode) */ -void nit__parser_prod___ALeExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +/* method parser_prod#AWhileExpr#n_block= for (self: AWhileExpr, nullable AExpr) */ +void nit__parser_prod___AWhileExpr___n_block_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3372); -show_backtrace(1); +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val = var_node; /* _n_block on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -} -var1 = var3; +var4 = !var3; +var1 = var4; goto RET_LABEL2; RET_LABEL2:(void)0; } +var = var1; } -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3373); -show_backtrace(1); -} -{ -nit__parser_prod___ALeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALeExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3376); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; +if (var){ { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -} -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; -} -} -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3377); -show_backtrace(1); +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -{ -nit__parser_prod___ALeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALeExpr#n_expr2= on */ } -goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ALeExpr#n_expr= for (self: ALeExpr, AExpr) */ -void nit__parser_prod___ALeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AWhileExpr#n_label= for (self: AWhileExpr, nullable ALabel) */ +void nit__parser_prod___AWhileExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { +val* var_node /* var node: nullable ALabel */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -RET_LABEL:; +var = var1; } -/* method parser_prod#ALeExpr#n_expr2= for (self: ALeExpr, AExpr) */ -void nit__parser_prod___ALeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +if (var){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#ALeExpr#visit_all for (self: ALeExpr, Visitor) */ -void nit__parser_prod___ALeExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AWhileExpr#visit_all for (self: AWhileExpr, Visitor) */ +void nit__parser_prod___AWhileExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; +val* var /* : TKwwhile */; val* var1 /* : AExpr */; +val* var2 /* : TKwdo */; +val* var3 /* : nullable AExpr */; +val* var4 /* : nullable ALabel */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwwhile].val; /* _n_kwwhile on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3396); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwhile"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3086); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val; /* _n_expr on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3397); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3087); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -RET_LABEL:; +var2 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_kwdo].val; /* _n_kwdo on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3088); +fatal_exit(1); } -/* method parser_prod#ALlExpr#init_allexpr for (self: ALlExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___ALlExpr___init_allexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3406); -show_backtrace(1); +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3407); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +var3 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val; /* _n_block on */ +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var4 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#ALoopExpr#init_aloopexpr for (self: ALoopExpr, nullable TKwloop, nullable AExpr, nullable ALabel) */ +void nit__parser_prod___ALoopExpr___init_aloopexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_kwloop /* var n_kwloop: nullable TKwloop */; +val* var_n_block /* var n_block: nullable AExpr */; +val* var_n_label /* var n_label: nullable ALabel */; +short int var /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; +short int var12 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +var_n_kwloop = p0; +var_n_block = p1; +var_n_label = p2; +if (unlikely(var_n_kwloop == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3408); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3100); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val = var_n_kwloop; /* _n_kwloop on */ +if (var_n_kwloop == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3409); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3101); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwloop,self) on */ +if (unlikely(var_n_kwloop == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_kwloop->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } +self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val = var_n_block; /* _n_block on */ +if (var_n_block == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_block,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var5 = ((short int(*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other); /* == on */ +} +var6 = !var5; +var3 = var6; +goto RET_LABEL4; +RET_LABEL4:(void)0; +} +var = var3; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ +var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +} else { +} +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ +if (var_n_label == NULL) { +var8 = 0; /* is null */ +} else { +var8 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_label,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var11 = ((short int(*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other); /* == on */ +} +var12 = !var11; +var9 = var12; +goto RET_LABEL10; +RET_LABEL10:(void)0; +} +var8 = var9; +} +if (var8){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ +var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL13:(void)0; +} +} +} else { +} RET_LABEL:; } -/* method parser_prod#ALlExpr#replace_child for (self: ALlExpr, ANode, nullable ANode) */ -void nit__parser_prod___ALlExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ALoopExpr#replace_child for (self: ALoopExpr, ANode, nullable ANode) */ +void nit__parser_prod___ALoopExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwloop */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -1427,27 +849,37 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; +val* var7 /* : nullable AExpr */; short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; +short int var14 /* : Bool */; +int cltype15; +int idtype16; +const char* var_class_name17; +val* var18 /* : nullable ALabel */; +short int var19 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var24 /* : Bool */; +short int var25 /* : Bool */; +int cltype26; +int idtype27; +const char* var_class_name28; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val; /* _n_kwloop on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3414); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwloop"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3110); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -1460,9 +892,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwloop */ +cltype = type_nit__TKwloop.color; +idtype = type_nit__TKwloop.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -1474,172 +906,419 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3415); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwloop", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3111); +fatal_exit(1); } { -nit__parser_prod___ALlExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALlExpr#n_expr= on */ +nit__parser_prod___ALoopExpr___n_kwloop_61d(self, var_new_child); /* Direct call parser_prod#ALoopExpr#n_kwloop= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3418); -show_backtrace(1); +var7 = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val; /* _n_block on */ +if (var7 == NULL) { +var8 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var13 = var7 == var_other; +var11 = var13; +goto RET_LABEL12; +RET_LABEL12:(void)0; +} +} +var9 = var11; +goto RET_LABEL10; +RET_LABEL10:(void)0; +} +var8 = var9; +} +if (var8){ +/* isa nullable AExpr */ +cltype15 = type_nullable__nit__AExpr.color; +idtype16 = type_nullable__nit__AExpr.id; +if(var_new_child == NULL) { +var14 = 1; +} else { +if(cltype15 >= var_new_child->type->table_size) { +var14 = 0; +} else { +var14 = var_new_child->type->type_table[cltype15] == idtype16; +} +} +if (unlikely(!var14)) { +var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3115); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +nit__parser_prod___ALoopExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#ALoopExpr#n_block= on */ +} +goto RET_LABEL; +} else { +} +var18 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +if (var18 == NULL) { +var19 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var18,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ +var24 = var18 == var_other; +var22 = var24; +goto RET_LABEL23; +RET_LABEL23:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } +var19 = var20; } -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +if (var19){ +/* isa nullable ALabel */ +cltype26 = type_nullable__nit__ALabel.color; +idtype27 = type_nullable__nit__ALabel.id; if(var_new_child == NULL) { -var13 = 0; +var25 = 1; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype26 >= var_new_child->type->table_size) { +var25 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var25 = var_new_child->type->type_table[cltype26] == idtype27; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3419); -show_backtrace(1); +if (unlikely(!var25)) { +var_class_name28 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name28); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3119); +fatal_exit(1); } { -nit__parser_prod___ALlExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALlExpr#n_expr2= on */ +nit__parser_prod___ALoopExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#ALoopExpr#n_label= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ALlExpr#n_expr= for (self: ALlExpr, AExpr) */ -void nit__parser_prod___ALlExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ALoopExpr#n_kwloop= for (self: ALoopExpr, TKwloop) */ +void nit__parser_prod___ALoopExpr___n_kwloop_61d(val* self, val* p0) { +val* var_node /* var node: TKwloop */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val = var_node; /* _n_kwloop on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ALoopExpr#n_block= for (self: ALoopExpr, nullable AExpr) */ +void nit__parser_prod___ALoopExpr___n_block_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val = var_node; /* _n_block on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#ALoopExpr#n_label= for (self: ALoopExpr, nullable ALabel) */ +void nit__parser_prod___ALoopExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { +val* var_node /* var node: nullable ALabel */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#ALoopExpr#visit_all for (self: ALoopExpr, Visitor) */ +void nit__parser_prod___ALoopExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TKwloop */; +val* var1 /* : nullable AExpr */; +val* var2 /* : nullable ALabel */; +var_v = p0; +var = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_kwloop].val; /* _n_kwloop on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwloop"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3143); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var1 = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val; /* _n_block on */ +{ +nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var2 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#AForExpr#init_aforexpr for (self: AForExpr, nullable TKwfor, Collection[Object], nullable TKwin, nullable AExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */ +void nit__parser_prod___AForExpr___init_aforexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5, val* p6) { +val* var_n_kwfor /* var n_kwfor: nullable TKwfor */; +val* var_n_ids /* var n_ids: Collection[Object] */; +val* var_n_kwin /* var n_kwin: nullable TKwin */; +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_kwdo /* var n_kwdo: nullable TKwdo */; +val* var_n_block /* var n_block: nullable AExpr */; +val* var_n_label /* var n_label: nullable ALabel */; +val* var /* : ANodes[TId] */; +val* var4 /* : ANodes[TId] */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var11 /* : Bool */; +short int var12 /* : Bool */; +short int var14 /* : Bool */; +short int var15 /* : Bool */; +short int var17 /* : Bool */; +short int var18 /* : Bool */; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -RET_LABEL:; -} -/* method parser_prod#ALlExpr#n_expr2= for (self: ALlExpr, AExpr) */ -void nit__parser_prod___ALlExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_kwfor = p0; +var_n_ids = p1; +var_n_kwin = p2; +var_n_expr = p3; +var_n_kwdo = p4; +var_n_block = p5; +var_n_label = p6; +if (unlikely(var_n_kwfor == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3159); +fatal_exit(1); } +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val = var_n_kwfor; /* _n_kwfor on */ +if (var_n_kwfor == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3160); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwfor,self) on */ +if (unlikely(var_n_kwfor == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -RET_LABEL:; +var_n_kwfor->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -/* method parser_prod#ALlExpr#visit_all for (self: ALlExpr, Visitor) */ -void nit__parser_prod___ALlExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3438); -show_backtrace(1); } { -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline parser_nodes#AForExpr#n_ids (self) on */ +var4 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_ids].val; /* _n_ids on */ +if (unlikely(var4 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ids"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1934); +fatal_exit(1); +} +var = var4; +RET_LABEL3:(void)0; } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3439); -show_backtrace(1); } { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +nit___nit__ANodes___unsafe_add_all(var, var_n_ids); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ +} +if (unlikely(var_n_kwin == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3162); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwin].val = var_n_kwin; /* _n_kwin on */ +if (var_n_kwin == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3163); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwin,self) on */ +if (unlikely(var_n_kwin == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwin->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; } -RET_LABEL:; } -/* method parser_prod#AGtExpr#init_agtexpr for (self: AGtExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AGtExpr___init_agtexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3448); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3164); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3449); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3165); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL6:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3450); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3166); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val = var_n_kwdo; /* _n_kwdo on */ +if (var_n_kwdo == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3451); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3167); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on */ +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_kwdo->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val = var_n_block; /* _n_block on */ +if (var_n_block == NULL) { +var8 = 0; /* is null */ +} else { +var8 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_block,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var11 = ((short int(*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other); /* == on */ +} +var12 = !var11; +var9 = var12; +goto RET_LABEL10; +RET_LABEL10:(void)0; +} +var8 = var9; +} +if (var8){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ +var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL13:(void)0; +} +} +} else { +} +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ +if (var_n_label == NULL) { +var14 = 0; /* is null */ +} else { +var14 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_label,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var17 = ((short int(*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other); /* == on */ +} +var18 = !var17; +var15 = var18; +goto RET_LABEL16; +RET_LABEL16:(void)0; +} +var14 = var15; } +if (var14){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ +var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL19:(void)0; +} +} +} else { } RET_LABEL:; } -/* method parser_prod#AGtExpr#replace_child for (self: AGtExpr, ANode, nullable ANode) */ -void nit__parser_prod___AGtExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AForExpr#replace_child for (self: AForExpr, ANode, nullable ANode) */ +void nit__parser_prod___AForExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwfor */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -1648,27 +1327,64 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; +val* var7 /* : ANodes[TId] */; +val* var9 /* : ANodes[TId] */; short int var10 /* : Bool */; +val* var11 /* : TKwin */; short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; +short int var14 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +int cltype18; +int idtype19; +const char* var_class_name20; +val* var21 /* : AExpr */; +short int var22 /* : Bool */; +short int var24 /* : Bool */; +short int var26 /* : Bool */; +short int var27 /* : Bool */; +int cltype28; +int idtype29; +const char* var_class_name30; +val* var31 /* : TKwdo */; +short int var32 /* : Bool */; +short int var34 /* : Bool */; +short int var36 /* : Bool */; +short int var37 /* : Bool */; +int cltype38; +int idtype39; +const char* var_class_name40; +val* var41 /* : nullable AExpr */; +short int var42 /* : Bool */; +short int var43 /* : Bool */; +short int var45 /* : Bool */; +short int var47 /* : Bool */; +short int var48 /* : Bool */; +int cltype49; +int idtype50; +const char* var_class_name51; +val* var52 /* : nullable ALabel */; +short int var53 /* : Bool */; +short int var54 /* : Bool */; +short int var56 /* : Bool */; +short int var58 /* : Bool */; +short int var59 /* : Bool */; +int cltype60; +int idtype61; +const char* var_class_name62; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val; /* _n_kwfor on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3456); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwfor"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3176); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -1681,9 +1397,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwfor */ +cltype = type_nit__TKwfor.color; +idtype = type_nit__TKwfor.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -1695,304 +1411,299 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3457); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwfor", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3177); +fatal_exit(1); } { -nit__parser_prod___AGtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGtExpr#n_expr= on */ +nit__parser_prod___AForExpr___n_kwfor_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_kwfor= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3460); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; -} -} -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; -} else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +{ /* Inline parser_nodes#AForExpr#n_ids (self) on */ +var9 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_ids].val; /* _n_ids on */ +if (unlikely(var9 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ids"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1934); +fatal_exit(1); } +var7 = var9; +RET_LABEL8:(void)0; } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3461); -show_backtrace(1); } { -nit__parser_prod___AGtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGtExpr#n_expr2= on */ +var10 = nit___nit__ANodes___replace_child(var7, var_old_child, var_new_child); } +if (var10){ goto RET_LABEL; } else { } -RET_LABEL:; +var11 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwin].val; /* _n_kwin on */ +if (unlikely(var11 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwin"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3181); +fatal_exit(1); } -/* method parser_prod#AGtExpr#n_expr= for (self: AGtExpr, AExpr) */ -void nit__parser_prod___AGtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AGtExpr#n_expr2= for (self: AGtExpr, AExpr) */ -void nit__parser_prod___AGtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +{ /* Inline kernel#Object#== (var11,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#is_same_instance (var11,var_other) on */ +var16 = var11 == var_other; +var14 = var16; +goto RET_LABEL15; +RET_LABEL15:(void)0; } } -RET_LABEL:; -} -/* method parser_prod#AGtExpr#visit_all for (self: AGtExpr, Visitor) */ -void nit__parser_prod___AGtExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3480); -show_backtrace(1); +var12 = var14; +goto RET_LABEL13; +RET_LABEL13:(void)0; } -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3481); -show_backtrace(1); +if (var12){ +/* isa TKwin */ +cltype18 = type_nit__TKwin.color; +idtype19 = type_nit__TKwin.id; +if(var_new_child == NULL) { +var17 = 0; +} else { +if(cltype18 >= var_new_child->type->table_size) { +var17 = 0; +} else { +var17 = var_new_child->type->type_table[cltype18] == idtype19; } -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -RET_LABEL:; +if (unlikely(!var17)) { +var_class_name20 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwin", var_class_name20); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3182); +fatal_exit(1); } -/* method parser_prod#AGeExpr#init_ageexpr for (self: AGeExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AGeExpr___init_ageexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3490); -show_backtrace(1); +{ +nit__parser_prod___AForExpr___n_kwin_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_kwin= on */ } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3491); -show_backtrace(1); +goto RET_LABEL; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3492); -show_backtrace(1); +var21 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var21 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3185); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3493); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +{ +{ /* Inline kernel#Object#== (var21,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var21,var_other) on */ +var26 = var21 == var_other; +var24 = var26; +goto RET_LABEL25; +RET_LABEL25:(void)0; } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; } +var22 = var24; +goto RET_LABEL23; +RET_LABEL23:(void)0; } -RET_LABEL:; } -/* method parser_prod#AGeExpr#replace_child for (self: AGeExpr, ANode, nullable ANode) */ -void nit__parser_prod___AGeExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3498); -show_backtrace(1); +if (var22){ +/* isa AExpr */ +cltype28 = type_nit__AExpr.color; +idtype29 = type_nit__AExpr.id; +if(var_new_child == NULL) { +var27 = 0; +} else { +if(cltype28 >= var_new_child->type->table_size) { +var27 = 0; +} else { +var27 = var_new_child->type->type_table[cltype28] == idtype29; +} +} +if (unlikely(!var27)) { +var_class_name30 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name30); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3186); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +nit__parser_prod___AForExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_expr= on */ +} +goto RET_LABEL; +} else { +} +var31 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val; /* _n_kwdo on */ +if (unlikely(var31 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3189); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var31,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var31,var_other) on */ +var36 = var31 == var_other; +var34 = var36; +goto RET_LABEL35; +RET_LABEL35:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; } } -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +if (var32){ +/* isa TKwdo */ +cltype38 = type_nit__TKwdo.color; +idtype39 = type_nit__TKwdo.id; if(var_new_child == NULL) { -var6 = 0; +var37 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +if(cltype38 >= var_new_child->type->table_size) { +var37 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var37 = var_new_child->type->type_table[cltype38] == idtype39; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3499); -show_backtrace(1); +if (unlikely(!var37)) { +var_class_name40 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3190); +fatal_exit(1); } { -nit__parser_prod___AGeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGeExpr#n_expr= on */ +nit__parser_prod___AForExpr___n_kwdo_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_kwdo= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3502); -show_backtrace(1); +var41 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val; /* _n_block on */ +if (var41 == NULL) { +var42 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var41,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var41,var_other) on */ +var47 = var41 == var_other; +var45 = var47; +goto RET_LABEL46; +RET_LABEL46:(void)0; +} +} +var43 = var45; +goto RET_LABEL44; +RET_LABEL44:(void)0; +} +var42 = var43; +} +if (var42){ +/* isa nullable AExpr */ +cltype49 = type_nullable__nit__AExpr.color; +idtype50 = type_nullable__nit__AExpr.id; +if(var_new_child == NULL) { +var48 = 1; +} else { +if(cltype49 >= var_new_child->type->table_size) { +var48 = 0; +} else { +var48 = var_new_child->type->type_table[cltype49] == idtype50; +} +} +if (unlikely(!var48)) { +var_class_name51 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name51); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3194); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +nit__parser_prod___AForExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_block= on */ +} +goto RET_LABEL; +} else { +} +var52 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +if (var52 == NULL) { +var53 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var52,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var52,var_other) on */ +var58 = var52 == var_other; +var56 = var58; +goto RET_LABEL57; +RET_LABEL57:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var54 = var56; +goto RET_LABEL55; +RET_LABEL55:(void)0; } +var53 = var54; } -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +if (var53){ +/* isa nullable ALabel */ +cltype60 = type_nullable__nit__ALabel.color; +idtype61 = type_nullable__nit__ALabel.id; if(var_new_child == NULL) { -var13 = 0; +var59 = 1; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype60 >= var_new_child->type->table_size) { +var59 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var59 = var_new_child->type->type_table[cltype60] == idtype61; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3503); -show_backtrace(1); +if (unlikely(!var59)) { +var_class_name62 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name62); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3198); +fatal_exit(1); } { -nit__parser_prod___AGeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGeExpr#n_expr2= on */ +nit__parser_prod___AForExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#AForExpr#n_label= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AGeExpr#n_expr= for (self: AGeExpr, AExpr) */ -void nit__parser_prod___AGeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AForExpr#n_kwfor= for (self: AForExpr, TKwfor) */ +void nit__parser_prod___AForExpr___n_kwfor_61d(val* self, val* p0) { +val* var_node /* var node: TKwfor */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val = var_node; /* _n_kwfor on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AGeExpr#n_expr2= for (self: AGeExpr, AExpr) */ -void nit__parser_prod___AGeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AForExpr#n_kwin= for (self: AForExpr, TKwin) */ +void nit__parser_prod___AForExpr___n_kwin_61d(val* self, val* p0) { +val* var_node /* var node: TKwin */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwin].val = var_node; /* _n_kwin on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AForExpr#n_expr= for (self: AForExpr, AExpr) */ +void nit__parser_prod___AForExpr___n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -2001,87 +1712,322 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AGeExpr#visit_all for (self: AGeExpr, Visitor) */ -void nit__parser_prod___AGeExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AForExpr#n_kwdo= for (self: AForExpr, TKwdo) */ +void nit__parser_prod___AForExpr___n_kwdo_61d(val* self, val* p0) { +val* var_node /* var node: TKwdo */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val = var_node; /* _n_kwdo on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AForExpr#n_block= for (self: AForExpr, nullable AExpr) */ +void nit__parser_prod___AForExpr___n_block_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val = var_node; /* _n_block on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AForExpr#n_label= for (self: AForExpr, nullable ALabel) */ +void nit__parser_prod___AForExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { +val* var_node /* var node: nullable ALabel */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AForExpr#visit_all for (self: AForExpr, Visitor) */ +void nit__parser_prod___AForExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var /* : TKwfor */; +val* var1 /* : ANodes[TId] */; +val* var3 /* : ANodes[TId] */; +val* var4 /* : TKwin */; +val* var5 /* : AExpr */; +val* var6 /* : TKwdo */; +val* var7 /* : nullable AExpr */; +val* var8 /* : nullable ALabel */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwfor].val; /* _n_kwfor on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3522); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwfor"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3237); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3523); -show_backtrace(1); +{ +{ /* Inline parser_nodes#AForExpr#n_ids (self) on */ +var3 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_ids].val; /* _n_ids on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ids"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1934); +fatal_exit(1); +} +var1 = var3; +RET_LABEL2:(void)0; +} } { -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +nit___nit__ANodes___visit_all(var1, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ +} +var4 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwin].val; /* _n_kwin on */ +if (unlikely(var4 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwin"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3239); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var5 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var5 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3240); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var5); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var6 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_kwdo].val; /* _n_kwdo on */ +if (unlikely(var6 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3241); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var6); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var7 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val; /* _n_block on */ +{ +nit___nit__Visitor___enter_visit(var_v, var7); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var8 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +{ +nit___nit__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AGgExpr#init_aggexpr for (self: AGgExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AGgExpr___init_aggexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AWithExpr#init_awithexpr for (self: AWithExpr, nullable TKwwith, nullable AExpr, nullable TKwdo, nullable AExpr, nullable ALabel) */ +void nit__parser_prod___AWithExpr___init_awithexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +val* var_n_kwwith /* var n_kwwith: nullable TKwwith */; val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; +val* var_n_kwdo /* var n_kwdo: nullable TKwdo */; +val* var_n_block /* var n_block: nullable AExpr */; +val* var_n_label /* var n_label: nullable ALabel */; +short int var /* : Bool */; +short int var5 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var11 /* : Bool */; +short int var13 /* : Bool */; +short int var14 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwwith = p0; +var_n_expr = p1; +var_n_kwdo = p2; +var_n_block = p3; +var_n_label = p4; +if (unlikely(var_n_kwwith == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3255); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwwith].val = var_n_kwwith; /* _n_kwwith on */ +if (var_n_kwwith == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3256); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwwith,self) on */ +if (unlikely(var_n_kwwith == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwwith->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3532); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3257); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3533); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3258); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL3:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3534); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3259); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwdo].val = var_n_kwdo; /* _n_kwdo on */ +if (var_n_kwdo == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3535); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3260); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwdo,self) on */ +if (unlikely(var_n_kwdo == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwdo->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_block].val = var_n_block; /* _n_block on */ +if (var_n_block == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_block,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var7 = ((short int(*)(val* self, val* p0))(var_n_block->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_block, var_other); /* == on */ +} +var8 = !var7; +var5 = var8; +goto RET_LABEL6; +RET_LABEL6:(void)0; +} +var = var5; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_block,self) on */ +var_n_block->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL9:(void)0; +} +} +} else { +} +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_n_label; /* _n_label on */ +if (var_n_label == NULL) { +var10 = 0; /* is null */ +} else { +var10 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_label,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var13 = ((short int(*)(val* self, val* p0))(var_n_label->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_label, var_other); /* == on */ +} +var14 = !var13; +var11 = var14; +goto RET_LABEL12; +RET_LABEL12:(void)0; +} +var10 = var11; +} +if (var10){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_label,self) on */ +var_n_label->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL15:(void)0; } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; } +} else { } RET_LABEL:; } -/* method parser_prod#AGgExpr#replace_child for (self: AGgExpr, ANode, nullable ANode) */ -void nit__parser_prod___AGgExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AWithExpr#replace_child for (self: AWithExpr, ANode, nullable ANode) */ +void nit__parser_prod___AWithExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwwith */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -2098,19 +2044,45 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : TKwdo */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; +val* var27 /* : nullable AExpr */; +short int var28 /* : Bool */; +short int var29 /* : Bool */; +short int var31 /* : Bool */; +short int var33 /* : Bool */; +short int var34 /* : Bool */; +int cltype35; +int idtype36; +const char* var_class_name37; +val* var38 /* : nullable ALabel */; +short int var39 /* : Bool */; +short int var40 /* : Bool */; +short int var42 /* : Bool */; +short int var44 /* : Bool */; +short int var45 /* : Bool */; +int cltype46; +int idtype47; +const char* var_class_name48; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwwith].val; /* _n_kwwith on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3540); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwith"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3269); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -2123,9 +2095,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwwith */ +cltype = type_nit__TKwwith.color; +idtype = type_nit__TKwwith.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -2137,21 +2109,21 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3541); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwwith", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3270); +fatal_exit(1); } { -nit__parser_prod___AGgExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGgExpr#n_expr= on */ +nit__parser_prod___AWithExpr___n_kwwith_61d(self, var_new_child); /* Direct call parser_prod#AWithExpr#n_kwwith= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_expr].val; /* _n_expr on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3544); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3273); +fatal_exit(1); } { { /* Inline kernel#Object#== (var7,var_old_child) on */ @@ -2185,35 +2157,172 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3545); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3274); +fatal_exit(1); } { -nit__parser_prod___AGgExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGgExpr#n_expr2= on */ +nit__parser_prod___AWithExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AWithExpr#n_expr= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwdo].val; /* _n_kwdo on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3277); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa TKwdo */ +cltype24 = type_nit__TKwdo.color; +idtype25 = type_nit__TKwdo.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; +} +} +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwdo", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3278); +fatal_exit(1); +} +{ +nit__parser_prod___AWithExpr___n_kwdo_61d(self, var_new_child); /* Direct call parser_prod#AWithExpr#n_kwdo= on */ +} +goto RET_LABEL; +} else { +} +var27 = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_block].val; /* _n_block on */ +if (var27 == NULL) { +var28 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var27,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ +var33 = var27 == var_other; +var31 = var33; +goto RET_LABEL32; +RET_LABEL32:(void)0; +} +} +var29 = var31; +goto RET_LABEL30; +RET_LABEL30:(void)0; +} +var28 = var29; +} +if (var28){ +/* isa nullable AExpr */ +cltype35 = type_nullable__nit__AExpr.color; +idtype36 = type_nullable__nit__AExpr.id; +if(var_new_child == NULL) { +var34 = 1; +} else { +if(cltype35 >= var_new_child->type->table_size) { +var34 = 0; +} else { +var34 = var_new_child->type->type_table[cltype35] == idtype36; +} +} +if (unlikely(!var34)) { +var_class_name37 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name37); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3282); +fatal_exit(1); +} +{ +nit__parser_prod___AWithExpr___n_block_61d(self, var_new_child); /* Direct call parser_prod#AWithExpr#n_block= on */ +} +goto RET_LABEL; +} else { +} +var38 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +if (var38 == NULL) { +var39 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var38,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var38,var_other) on */ +var44 = var38 == var_other; +var42 = var44; +goto RET_LABEL43; +RET_LABEL43:(void)0; +} +} +var40 = var42; +goto RET_LABEL41; +RET_LABEL41:(void)0; +} +var39 = var40; +} +if (var39){ +/* isa nullable ALabel */ +cltype46 = type_nullable__nit__ALabel.color; +idtype47 = type_nullable__nit__ALabel.id; +if(var_new_child == NULL) { +var45 = 1; +} else { +if(cltype46 >= var_new_child->type->table_size) { +var45 = 0; +} else { +var45 = var_new_child->type->type_table[cltype46] == idtype47; +} +} +if (unlikely(!var45)) { +var_class_name48 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable ALabel", var_class_name48); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3286); +fatal_exit(1); +} +{ +nit__parser_prod___AWithExpr___nit__parser_nodes__ALabelable__n_label_61d(self, var_new_child); /* Direct call parser_prod#AWithExpr#n_label= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AGgExpr#n_expr= for (self: AGgExpr, AExpr) */ -void nit__parser_prod___AGgExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AWithExpr#n_kwwith= for (self: AWithExpr, TKwwith) */ +void nit__parser_prod___AWithExpr___n_kwwith_61d(val* self, val* p0) { +val* var_node /* var node: TKwwith */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwwith].val = var_node; /* _n_kwwith on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AGgExpr#n_expr2= for (self: AGgExpr, AExpr) */ -void nit__parser_prod___AGgExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AWithExpr#n_expr= for (self: AWithExpr, AExpr) */ +void nit__parser_prod___AWithExpr___n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -2222,87 +2331,306 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AGgExpr#visit_all for (self: AGgExpr, Visitor) */ -void nit__parser_prod___AGgExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AWithExpr#n_kwdo= for (self: AWithExpr, TKwdo) */ +void nit__parser_prod___AWithExpr___n_kwdo_61d(val* self, val* p0) { +val* var_node /* var node: TKwdo */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwdo].val = var_node; /* _n_kwdo on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AWithExpr#n_block= for (self: AWithExpr, nullable AExpr) */ +void nit__parser_prod___AWithExpr___n_block_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_block].val = var_node; /* _n_block on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AWithExpr#n_label= for (self: AWithExpr, nullable ALabel) */ +void nit__parser_prod___AWithExpr___nit__parser_nodes__ALabelable__n_label_61d(val* self, val* p0) { +val* var_node /* var node: nullable ALabel */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val = var_node; /* _n_label on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AWithExpr#visit_all for (self: AWithExpr, Visitor) */ +void nit__parser_prod___AWithExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; +val* var /* : TKwwith */; val* var1 /* : AExpr */; +val* var2 /* : TKwdo */; +val* var3 /* : nullable AExpr */; +val* var4 /* : nullable ALabel */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwwith].val; /* _n_kwwith on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3564); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwwith"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3320); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_expr].val; /* _n_expr on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3565); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3321); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_kwdo].val; /* _n_kwdo on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwdo"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3322); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__AWithExpr___n_block].val; /* _n_block on */ +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_nit__parser_nodes__ALabelable___n_label].val; /* _n_label on */ +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AIsaExpr#init_aisaexpr for (self: AIsaExpr, nullable AExpr, nullable AType) */ -void nit__parser_prod___AIsaExpr___init_aisaexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AAssertExpr#init_aassertexpr for (self: AAssertExpr, nullable TKwassert, nullable TId, nullable AExpr, nullable TKwelse, nullable AExpr) */ +void nit__parser_prod___AAssertExpr___init_aassertexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +val* var_n_kwassert /* var n_kwassert: nullable TKwassert */; +val* var_n_id /* var n_id: nullable TId */; val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_type /* var n_type: nullable AType */; -var_n_expr = p0; -var_n_type = p1; +val* var_n_kwelse /* var n_kwelse: nullable TKwelse */; +val* var_n_else /* var n_else: nullable AExpr */; +short int var /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var9 /* : Bool */; +short int var10 /* : Bool */; +short int var12 /* : Bool */; +short int var13 /* : Bool */; +short int var15 /* : Bool */; +short int var16 /* : Bool */; +short int var18 /* : Bool */; +short int var19 /* : Bool */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwassert = p0; +var_n_id = p1; +var_n_expr = p2; +var_n_kwelse = p3; +var_n_else = p4; +if (unlikely(var_n_kwassert == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3336); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val = var_n_kwassert; /* _n_kwassert on */ +if (var_n_kwassert == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3337); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwassert,self) on */ +if (unlikely(var_n_kwassert == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwassert->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val = var_n_id; /* _n_id on */ +if (var_n_id == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_id,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var5 = ((short int(*)(val* self, val* p0))(var_n_id->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_id, var_other); /* == on */ +} +var6 = !var5; +var3 = var6; +goto RET_LABEL4; +RET_LABEL4:(void)0; +} +var = var3; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ +var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +} else { +} if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3574); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3340); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3575); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3341); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL8:(void)0; } } -if (unlikely(var_n_type == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3576); -show_backtrace(1); +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwelse].val = var_n_kwelse; /* _n_kwelse on */ +if (var_n_kwelse == NULL) { +var9 = 0; /* is null */ +} else { +var9 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_kwelse,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var12 = ((short int(*)(val* self, val* p0))(var_n_kwelse->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_kwelse, var_other); /* == on */ +} +var13 = !var12; +var10 = var13; +goto RET_LABEL11; +RET_LABEL11:(void)0; +} +var9 = var10; +} +if (var9){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_kwelse,self) on */ +var_n_kwelse->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL14:(void)0; +} } -self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val = var_n_type; /* _n_type on */ -if (var_n_type == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3577); -show_backtrace(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ -if (unlikely(var_n_type == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); } -var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val = var_n_else; /* _n_else on */ +if (var_n_else == NULL) { +var15 = 0; /* is null */ +} else { +var15 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_else,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var18 = ((short int(*)(val* self, val* p0))(var_n_else->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_else, var_other); /* == on */ +} +var19 = !var18; +var16 = var19; +goto RET_LABEL17; +RET_LABEL17:(void)0; +} +var15 = var16; +} +if (var15){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_else,self) on */ +var_n_else->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL20:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#AIsaExpr#replace_child for (self: AIsaExpr, ANode, nullable ANode) */ -void nit__parser_prod___AIsaExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AAssertExpr#replace_child for (self: AAssertExpr, ANode, nullable ANode) */ +void nit__parser_prod___AAssertExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwassert */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -2311,27 +2639,54 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AType */; +val* var7 /* : nullable TId */; short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; +short int var9 /* : Bool */; +short int var11 /* : Bool */; short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; +short int var14 /* : Bool */; +int cltype15; +int idtype16; +const char* var_class_name17; +val* var18 /* : AExpr */; +short int var19 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var24 /* : Bool */; +int cltype25; +int idtype26; +const char* var_class_name27; +val* var28 /* : nullable TKwelse */; +short int var29 /* : Bool */; +short int var30 /* : Bool */; +short int var32 /* : Bool */; +short int var34 /* : Bool */; +short int var35 /* : Bool */; +int cltype36; +int idtype37; +const char* var_class_name38; +val* var39 /* : nullable AExpr */; +short int var40 /* : Bool */; +short int var41 /* : Bool */; +short int var43 /* : Bool */; +short int var45 /* : Bool */; +short int var46 /* : Bool */; +int cltype47; +int idtype48; +const char* var_class_name49; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val; /* _n_kwassert on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3582); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwassert"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3350); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -2344,9 +2699,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwassert */ +cltype = type_nit__TKwassert.color; +idtype = type_nit__TKwassert.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -2358,291 +2713,257 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3583); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwassert", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3351); +fatal_exit(1); } { -nit__parser_prod___AIsaExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AIsaExpr#n_expr= on */ +nit__parser_prod___AAssertExpr___n_kwassert_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_kwassert= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val; /* _n_type on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3586); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val; /* _n_id on */ +if (var7 == NULL) { +var8 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var13 = var7 == var_other; +var11 = var13; +goto RET_LABEL12; +RET_LABEL12:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var9 = var11; +goto RET_LABEL10; +RET_LABEL10:(void)0; } +var8 = var9; } if (var8){ -/* isa AType */ -cltype14 = type_nit__AType.color; -idtype15 = type_nit__AType.id; +/* isa nullable TId */ +cltype15 = type_nullable__nit__TId.color; +idtype16 = type_nullable__nit__TId.id; if(var_new_child == NULL) { -var13 = 0; +var14 = 1; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype15 >= var_new_child->type->table_size) { +var14 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var14 = var_new_child->type->type_table[cltype15] == idtype16; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AType", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3587); -show_backtrace(1); +if (unlikely(!var14)) { +var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TId", var_class_name17); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3355); +fatal_exit(1); } { -nit__parser_prod___AIsaExpr___n_type_61d(self, var_new_child); /* Direct call parser_prod#AIsaExpr#n_type= on */ +nit__parser_prod___AAssertExpr___n_id_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_id= on */ } goto RET_LABEL; } else { } -RET_LABEL:; +var18 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var18 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3358); +fatal_exit(1); } -/* method parser_prod#AIsaExpr#n_expr= for (self: AIsaExpr, AExpr) */ -void nit__parser_prod___AIsaExpr___n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AIsaExpr#n_type= for (self: AIsaExpr, AType) */ -void nit__parser_prod___AIsaExpr___n_type_61d(val* self, val* p0) { -val* var_node /* var node: AType */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val = var_node; /* _n_type on */ +{ /* Inline kernel#Object#== (var18,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ +var23 = var18 == var_other; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } } -RET_LABEL:; +var19 = var21; +goto RET_LABEL20; +RET_LABEL20:(void)0; } -/* method parser_prod#AIsaExpr#visit_all for (self: AIsaExpr, Visitor) */ -void nit__parser_prod___AIsaExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AType */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3606); -show_backtrace(1); } -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +if (var19){ +/* isa AExpr */ +cltype25 = type_nit__AExpr.color; +idtype26 = type_nit__AExpr.id; +if(var_new_child == NULL) { +var24 = 0; +} else { +if(cltype25 >= var_new_child->type->table_size) { +var24 = 0; +} else { +var24 = var_new_child->type->type_table[cltype25] == idtype26; } -var1 = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val; /* _n_type on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3607); -show_backtrace(1); } -{ -nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +if (unlikely(!var24)) { +var_class_name27 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name27); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3359); +fatal_exit(1); } -RET_LABEL:; +{ +nit__parser_prod___AAssertExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_expr= on */ } -/* method parser_prod#APlusExpr#init_aplusexpr for (self: APlusExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___APlusExpr___init_aplusexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3616); -show_backtrace(1); +goto RET_LABEL; +} else { } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3617); -show_backtrace(1); +var28 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwelse].val; /* _n_kwelse on */ +if (var28 == NULL) { +var29 = 0; /* cannot be null */ } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +{ /* Inline kernel#Object#== (var28,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var28,var_other) on */ +var34 = var28 == var_other; +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +var30 = var32; +goto RET_LABEL31; +RET_LABEL31:(void)0; } -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3618); -show_backtrace(1); +var29 = var30; } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3619); -show_backtrace(1); +if (var29){ +/* isa nullable TKwelse */ +cltype36 = type_nullable__nit__TKwelse.color; +idtype37 = type_nullable__nit__TKwelse.id; +if(var_new_child == NULL) { +var35 = 1; } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +if(cltype36 >= var_new_child->type->table_size) { +var35 = 0; +} else { +var35 = var_new_child->type->type_table[cltype36] == idtype37; } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; } +if (unlikely(!var35)) { +var_class_name38 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TKwelse", var_class_name38); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3363); +fatal_exit(1); } -RET_LABEL:; +{ +nit__parser_prod___AAssertExpr___n_kwelse_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_kwelse= on */ } -/* method parser_prod#APlusExpr#replace_child for (self: APlusExpr, ANode, nullable ANode) */ -void nit__parser_prod___APlusExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var7 /* : AExpr */; -short int var8 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -const char* var_class_name16; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3624); -show_backtrace(1); +goto RET_LABEL; +} else { } -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var39 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val; /* _n_else on */ +if (var39 == NULL) { +var40 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var39,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; +{ /* Inline kernel#Object#is_same_instance (var39,var_other) on */ +var45 = var39 == var_other; +var43 = var45; +goto RET_LABEL44; +RET_LABEL44:(void)0; } } -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; +var41 = var43; +goto RET_LABEL42; +RET_LABEL42:(void)0; } +var40 = var41; } -if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +if (var40){ +/* isa nullable AExpr */ +cltype47 = type_nullable__nit__AExpr.color; +idtype48 = type_nullable__nit__AExpr.id; if(var_new_child == NULL) { -var6 = 0; +var46 = 1; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +if(cltype47 >= var_new_child->type->table_size) { +var46 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var46 = var_new_child->type->type_table[cltype47] == idtype48; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3625); -show_backtrace(1); +if (unlikely(!var46)) { +var_class_name49 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AExpr", var_class_name49); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3367); +fatal_exit(1); } { -nit__parser_prod___APlusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#APlusExpr#n_expr= on */ +nit__parser_prod___AAssertExpr___n_else_61d(self, var_new_child); /* Direct call parser_prod#AAssertExpr#n_else= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3628); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AAssertExpr#n_kwassert= for (self: AAssertExpr, TKwassert) */ +void nit__parser_prod___AAssertExpr___n_kwassert_61d(val* self, val* p0) { +val* var_node /* var node: TKwassert */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val = var_node; /* _n_kwassert on */ { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -} -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var13 = 0; -} else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +RET_LABEL:; +} +/* method parser_prod#AAssertExpr#n_id= for (self: AAssertExpr, nullable TId) */ +void nit__parser_prod___AAssertExpr___n_id_61d(val* self, val* p0) { +val* var_node /* var node: nullable TId */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val = var_node; /* _n_id on */ +if (var_node == NULL) { +var = 0; /* is null */ } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3629); -show_backtrace(1); +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; } +if (var){ { -nit__parser_prod___APlusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#APlusExpr#n_expr2= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } -goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#APlusExpr#n_expr= for (self: APlusExpr, AExpr) */ -void nit__parser_prod___APlusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AAssertExpr#n_expr= for (self: AAssertExpr, AExpr) */ +void nit__parser_prod___AAssertExpr___n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -2651,100 +2972,185 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#APlusExpr#n_expr2= for (self: APlusExpr, AExpr) */ -void nit__parser_prod___APlusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AAssertExpr#n_kwelse= for (self: AAssertExpr, nullable TKwelse) */ +void nit__parser_prod___AAssertExpr___n_kwelse_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwelse */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwelse].val = var_node; /* _n_kwelse on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} } +} else { } RET_LABEL:; } -/* method parser_prod#APlusExpr#visit_all for (self: APlusExpr, Visitor) */ -void nit__parser_prod___APlusExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AAssertExpr#n_else= for (self: AAssertExpr, nullable AExpr) */ +void nit__parser_prod___AAssertExpr___n_else_61d(val* self, val* p0) { +val* var_node /* var node: nullable AExpr */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val = var_node; /* _n_else on */ +if (var_node == NULL) { +var = 0; /* is null */ +} else { +var = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_node,((val*)NULL)) on */ +var_other = ((val*)NULL); +{ +var3 = ((short int(*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other); /* == on */ +} +var4 = !var3; +var1 = var4; +goto RET_LABEL2; +RET_LABEL2:(void)0; +} +var = var1; +} +if (var){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL5:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AAssertExpr#visit_all for (self: AAssertExpr, Visitor) */ +void nit__parser_prod___AAssertExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var /* : TKwassert */; +val* var1 /* : nullable TId */; +val* var2 /* : AExpr */; +val* var3 /* : nullable TKwelse */; +val* var4 /* : nullable AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwassert].val; /* _n_kwassert on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3648); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwassert"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3401); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3649); -show_backtrace(1); -} +var1 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_id].val; /* _n_id on */ { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3403); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_kwelse].val; /* _n_kwelse on */ +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val; /* _n_else on */ +{ +nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AMinusExpr#init_aminusexpr for (self: AMinusExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AMinusExpr___init_aminusexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AOnceExpr#init_aonceexpr for (self: AOnceExpr, nullable TKwonce, nullable AExpr) */ +void nit__parser_prod___AOnceExpr___init_aonceexpr(val* self, val* p0, val* p1) { +val* var_n_kwonce /* var n_kwonce: nullable TKwonce */; val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwonce = p0; +var_n_expr = p1; +if (unlikely(var_n_kwonce == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3658); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3414); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val = var_n_kwonce; /* _n_kwonce on */ +if (var_n_kwonce == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3659); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3415); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwonce,self) on */ +if (unlikely(var_n_kwonce == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_kwonce->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3660); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3416); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3661); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3417); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } RET_LABEL:; } -/* method parser_prod#AMinusExpr#replace_child for (self: AMinusExpr, ANode, nullable ANode) */ -void nit__parser_prod___AMinusExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AOnceExpr#replace_child for (self: AOnceExpr, ANode, nullable ANode) */ +void nit__parser_prod___AOnceExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwonce */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -2763,17 +3169,17 @@ int idtype15; const char* var_class_name16; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val; /* _n_kwonce on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3666); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwonce"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3422); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -2786,9 +3192,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwonce */ +cltype = type_nit__TKwonce.color; +idtype = type_nit__TKwonce.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -2800,21 +3206,21 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3667); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwonce", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3423); +fatal_exit(1); } { -nit__parser_prod___AMinusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AMinusExpr#n_expr= on */ +nit__parser_prod___AOnceExpr___n_kwonce_61d(self, var_new_child); /* Direct call parser_prod#AOnceExpr#n_kwonce= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val; /* _n_expr on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3670); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3426); +fatal_exit(1); } { { /* Inline kernel#Object#== (var7,var_old_child) on */ @@ -2848,35 +3254,35 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3671); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3427); +fatal_exit(1); } { -nit__parser_prod___AMinusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AMinusExpr#n_expr2= on */ +nit__parser_prod___AOnceExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AOnceExpr#n_expr= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AMinusExpr#n_expr= for (self: AMinusExpr, AExpr) */ -void nit__parser_prod___AMinusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AOnceExpr#n_kwonce= for (self: AOnceExpr, TKwonce) */ +void nit__parser_prod___AOnceExpr___n_kwonce_61d(val* self, val* p0) { +val* var_node /* var node: TKwonce */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val = var_node; /* _n_kwonce on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AMinusExpr#n_expr2= for (self: AMinusExpr, AExpr) */ -void nit__parser_prod___AMinusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AOnceExpr#n_expr= for (self: AOnceExpr, AExpr) */ +void nit__parser_prod___AOnceExpr___n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -2885,84 +3291,112 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AMinusExpr#visit_all for (self: AMinusExpr, Visitor) */ -void nit__parser_prod___AMinusExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AOnceExpr#visit_all for (self: AOnceExpr, Visitor) */ +void nit__parser_prod___AOnceExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; +val* var /* : TKwonce */; val* var1 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_kwonce].val; /* _n_kwonce on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3690); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwonce"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3446); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val; /* _n_expr on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3691); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3447); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AStarshipExpr#init_astarshipexpr for (self: AStarshipExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AStarshipExpr___init_astarshipexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AOrExpr#init_aorexpr for (self: AOrExpr, nullable AExpr, nullable TKwor, nullable AExpr) */ +void nit__parser_prod___AOrExpr___init_aorexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TKwor */; val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_expr2 = p1; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3700); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3528); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3701); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3529); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; +} +} +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3530); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3531); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3702); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3532); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3703); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3533); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AStarshipExpr#replace_child for (self: AStarshipExpr, ANode, nullable ANode) */ -void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AOrExpr#replace_child for (self: AOrExpr, ANode, nullable ANode) */ +void nit__parser_prod___AOrExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -2974,7 +3408,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -2982,13 +3416,21 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : AExpr */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3708); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3538); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -3022,26 +3464,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3709); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3539); +fatal_exit(1); } { -nit__parser_prod___AStarshipExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarshipExpr#n_expr= on */ +nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AOrExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3712); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3542); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -3054,9 +3496,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +/* isa TKwor */ +cltype14 = type_nit__TKwor.color; +idtype15 = type_nit__TKwor.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -3068,36 +3510,96 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3713); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwor", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3543); +fatal_exit(1); } { -nit__parser_prod___AStarshipExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarshipExpr#n_expr2= on */ +nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AOrExpr#n_op= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3546); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; +} +} +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3547); +fatal_exit(1); +} +{ +nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AOrExpr#n_expr2= on */ +} +goto RET_LABEL; +} else { +} +RET_LABEL:; +} +/* method parser_prod#AOrExpr#n_expr= for (self: AOrExpr, AExpr) */ +void nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -goto RET_LABEL; -} else { } RET_LABEL:; } -/* method parser_prod#AStarshipExpr#n_expr= for (self: AStarshipExpr, AExpr) */ -void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AOrExpr#n_op= for (self: AOrExpr, Token) */ +void nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AStarshipExpr#n_expr2= for (self: AStarshipExpr, AExpr) */ -void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AOrExpr#n_expr2= for (self: AOrExpr, AExpr) */ +void nit__parser_prod___AOrExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3106,84 +3608,122 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AStarshipExpr#visit_all for (self: AStarshipExpr, Visitor) */ -void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AOrExpr#visit_all for (self: AOrExpr, Visitor) */ +void nit__parser_prod___AOrExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3732); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3571); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3733); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3572); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3573); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AStarExpr#init_astarexpr for (self: AStarExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AStarExpr___init_astarexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AAndExpr#init_aandexpr for (self: AAndExpr, nullable AExpr, nullable TKwand, nullable AExpr) */ +void nit__parser_prod___AAndExpr___init_aandexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TKwand */; val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_expr2 = p1; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3742); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3583); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3743); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3584); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; +} +} +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3585); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3586); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3744); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3587); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3745); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3588); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AStarExpr#replace_child for (self: AStarExpr, ANode, nullable ANode) */ -void nit__parser_prod___AStarExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AAndExpr#replace_child for (self: AAndExpr, ANode, nullable ANode) */ +void nit__parser_prod___AAndExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -3195,7 +3735,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -3203,13 +3743,21 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : AExpr */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3750); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3593); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -3243,26 +3791,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3751); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3594); +fatal_exit(1); } { -nit__parser_prod___AStarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarExpr#n_expr= on */ +nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAndExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3754); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3597); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -3275,9 +3823,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +/* isa TKwand */ +cltype14 = type_nit__TKwand.color; +idtype15 = type_nit__TKwand.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -3289,23 +3837,70 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3755); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwand", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3598); +fatal_exit(1); } { -nit__parser_prod___AStarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarExpr#n_expr2= on */ +nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AAndExpr#n_op= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3601); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; +} +} +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3602); +fatal_exit(1); +} +{ +nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AAndExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AStarExpr#n_expr= for (self: AStarExpr, AExpr) */ -void nit__parser_prod___AStarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AAndExpr#n_expr= for (self: AAndExpr, AExpr) */ +void nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3314,11 +3909,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AStarExpr#n_expr2= for (self: AStarExpr, AExpr) */ -void nit__parser_prod___AStarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AAndExpr#n_op= for (self: AAndExpr, Token) */ +void nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AAndExpr#n_expr2= for (self: AAndExpr, AExpr) */ +void nit__parser_prod___AAndExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3327,84 +3935,145 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AStarExpr#visit_all for (self: AStarExpr, Visitor) */ -void nit__parser_prod___AStarExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AAndExpr#visit_all for (self: AAndExpr, Visitor) */ +void nit__parser_prod___AAndExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3774); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3626); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3775); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3627); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3628); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AStarstarExpr#init_astarstarexpr for (self: AStarstarExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___AStarstarExpr___init_astarstarexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AOrElseExpr#init_aorelseexpr for (self: AOrElseExpr, nullable AExpr, nullable TKwor, nullable TKwelse, nullable AExpr) */ +void nit__parser_prod___AOrElseExpr___init_aorelseexpr(val* self, val* p0, val* p1, val* p2, val* p3) { val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TKwor */; +val* var_n_kwelse /* var n_kwelse: nullable TKwelse */; val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_expr2 = p1; +var_n_op = p1; +var_n_kwelse = p2; +var_n_expr2 = p3; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3784); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3639); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3785); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3640); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; +} +} +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3641); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3642); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_kwelse == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3643); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__AOrElseExpr___n_kwelse].val = var_n_kwelse; /* _n_kwelse on */ +if (var_n_kwelse == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3644); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwelse,self) on */ +if (unlikely(var_n_kwelse == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_kwelse->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3786); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3645); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3787); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3646); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +RET_LABEL5:(void)0; } } RET_LABEL:; } -/* method parser_prod#AStarstarExpr#replace_child for (self: AStarstarExpr, ANode, nullable ANode) */ -void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AOrElseExpr#replace_child for (self: AOrElseExpr, ANode, nullable ANode) */ +void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -3416,7 +4085,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -3424,13 +4093,29 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : TKwelse */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; +val* var27 /* : AExpr */; +short int var28 /* : Bool */; +short int var30 /* : Bool */; +short int var32 /* : Bool */; +short int var33 /* : Bool */; +int cltype34; +int idtype35; +const char* var_class_name36; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3792); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3651); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -3453,80 +4138,174 @@ if (var1){ cltype = type_nit__AExpr.color; idtype = type_nit__AExpr.id; if(var_new_child == NULL) { -var6 = 0; +var6 = 0; +} else { +if(cltype >= var_new_child->type->table_size) { +var6 = 0; +} else { +var6 = var_new_child->type->type_table[cltype] == idtype; +} +} +if (unlikely(!var6)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3652); +fatal_exit(1); +} +{ +nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AOrElseExpr#n_expr= on */ +} +goto RET_LABEL; +} else { +} +var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ +if (unlikely(var7 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3655); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var12 = var7 == var_other; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; +} +} +var8 = var10; +goto RET_LABEL9; +RET_LABEL9:(void)0; +} +} +if (var8){ +/* isa TKwor */ +cltype14 = type_nit__TKwor.color; +idtype15 = type_nit__TKwor.id; +if(var_new_child == NULL) { +var13 = 0; +} else { +if(cltype14 >= var_new_child->type->table_size) { +var13 = 0; +} else { +var13 = var_new_child->type->type_table[cltype14] == idtype15; +} +} +if (unlikely(!var13)) { +var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwor", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3656); +fatal_exit(1); +} +{ +nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AOrElseExpr#n_op= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__AOrElseExpr___n_kwelse].val; /* _n_kwelse on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3659); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa TKwelse */ +cltype24 = type_nit__TKwelse.color; +idtype25 = type_nit__TKwelse.id; +if(var_new_child == NULL) { +var23 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; } else { -var6 = var_new_child->type->type_table[cltype] == idtype; +var23 = var_new_child->type->type_table[cltype24] == idtype25; } } -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3793); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwelse", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3660); +fatal_exit(1); } { -nit__parser_prod___AStarstarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarstarExpr#n_expr= on */ +nit__parser_prod___AOrElseExpr___n_kwelse_61d(self, var_new_child); /* Direct call parser_prod#AOrElseExpr#n_kwelse= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var7 == NULL)) { +var27 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var27 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3796); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3663); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var27,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ -var12 = var7 == var_other; -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ +var32 = var27 == var_other; +var30 = var32; +goto RET_LABEL31; +RET_LABEL31:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var28 = var30; +goto RET_LABEL29; +RET_LABEL29:(void)0; } } -if (var8){ +if (var28){ /* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +cltype34 = type_nit__AExpr.color; +idtype35 = type_nit__AExpr.id; if(var_new_child == NULL) { -var13 = 0; +var33 = 0; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype34 >= var_new_child->type->table_size) { +var33 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var33 = var_new_child->type->type_table[cltype34] == idtype35; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3797); -show_backtrace(1); +if (unlikely(!var33)) { +var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3664); +fatal_exit(1); } { -nit__parser_prod___AStarstarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarstarExpr#n_expr2= on */ +nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AOrElseExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AStarstarExpr#n_expr= for (self: AStarstarExpr, AExpr) */ -void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AOrElseExpr#n_expr= for (self: AOrElseExpr, AExpr) */ +void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3535,11 +4314,37 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AStarstarExpr#n_expr2= for (self: AStarstarExpr, AExpr) */ -void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AOrElseExpr#n_op= for (self: AOrElseExpr, Token) */ +void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AOrElseExpr#n_kwelse= for (self: AOrElseExpr, TKwelse) */ +void nit__parser_prod___AOrElseExpr___n_kwelse_61d(val* self, val* p0) { +val* var_node /* var node: TKwelse */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__AOrElseExpr___n_kwelse].val = var_node; /* _n_kwelse on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AOrElseExpr#n_expr2= for (self: AOrElseExpr, AExpr) */ +void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3548,84 +4353,132 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AStarstarExpr#visit_all for (self: AStarstarExpr, Visitor) */ -void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AOrElseExpr#visit_all for (self: AOrElseExpr, Visitor) */ +void nit__parser_prod___AOrElseExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : TKwelse */; +val* var3 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3816); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3693); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3817); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3694); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__AOrElseExpr___n_kwelse].val; /* _n_kwelse on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwelse"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3695); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3696); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#ASlashExpr#init_aslashexpr for (self: ASlashExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___ASlashExpr___init_aslashexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AImpliesExpr#init_aimpliesexpr for (self: AImpliesExpr, nullable AExpr, nullable TKwimplies, nullable AExpr) */ +void nit__parser_prod___AImpliesExpr___init_aimpliesexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TKwimplies */; val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_expr2 = p1; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3826); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3706); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3827); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3707); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; +} +} +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3708); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3709); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3828); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3710); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3829); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3711); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#ASlashExpr#replace_child for (self: ASlashExpr, ANode, nullable ANode) */ -void nit__parser_prod___ASlashExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AImpliesExpr#replace_child for (self: AImpliesExpr, ANode, nullable ANode) */ +void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -3637,7 +4490,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -3645,13 +4498,21 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : AExpr */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3834); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3716); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -3685,26 +4546,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3835); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3717); +fatal_exit(1); } { -nit__parser_prod___ASlashExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ASlashExpr#n_expr= on */ +nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AImpliesExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3838); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3720); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -3717,9 +4578,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +/* isa TKwimplies */ +cltype14 = type_nit__TKwimplies.color; +idtype15 = type_nit__TKwimplies.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -3731,23 +4592,70 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3839); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwimplies", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3721); +fatal_exit(1); } { -nit__parser_prod___ASlashExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ASlashExpr#n_expr2= on */ +nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AImpliesExpr#n_op= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3724); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; +} +} +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3725); +fatal_exit(1); +} +{ +nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AImpliesExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ASlashExpr#n_expr= for (self: ASlashExpr, AExpr) */ -void nit__parser_prod___ASlashExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AImpliesExpr#n_expr= for (self: AImpliesExpr, AExpr) */ +void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3756,11 +4664,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ASlashExpr#n_expr2= for (self: ASlashExpr, AExpr) */ -void nit__parser_prod___ASlashExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AImpliesExpr#n_op= for (self: AImpliesExpr, Token) */ +void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AImpliesExpr#n_expr2= for (self: AImpliesExpr, AExpr) */ +void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ABinBoolExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3769,87 +4690,102 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ASlashExpr#visit_all for (self: ASlashExpr, Visitor) */ -void nit__parser_prod___ASlashExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AImpliesExpr#visit_all for (self: AImpliesExpr, Visitor) */ +void nit__parser_prod___AImpliesExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3858); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3749); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3859); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3750); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3751); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#APercentExpr#init_apercentexpr for (self: APercentExpr, nullable AExpr, nullable AExpr) */ -void nit__parser_prod___APercentExpr___init_apercentexpr(val* self, val* p0, val* p1) { +/* method parser_prod#ANotExpr#init_anotexpr for (self: ANotExpr, nullable TKwnot, nullable AExpr) */ +void nit__parser_prod___ANotExpr___init_anotexpr(val* self, val* p0, val* p1) { +val* var_n_kwnot /* var n_kwnot: nullable TKwnot */; val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; -var_n_expr = p0; -var_n_expr2 = p1; -if (unlikely(var_n_expr == NULL)) { +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_kwnot = p0; +var_n_expr = p1; +if (unlikely(var_n_kwnot == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3868); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3760); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val = var_n_kwnot; /* _n_kwnot on */ +if (var_n_kwnot == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3869); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3761); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ -if (unlikely(var_n_expr == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwnot,self) on */ +if (unlikely(var_n_kwnot == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_kwnot->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -if (unlikely(var_n_expr2 == NULL)) { +} +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3870); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3762); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3871); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3763); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } RET_LABEL:; } -/* method parser_prod#APercentExpr#replace_child for (self: APercentExpr, ANode, nullable ANode) */ -void nit__parser_prod___APercentExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ANotExpr#replace_child for (self: ANotExpr, ANode, nullable ANode) */ +void nit__parser_prod___ANotExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : AExpr */; +val* var /* : TKwnot */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -3868,17 +4804,17 @@ int idtype15; const char* var_class_name16; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val; /* _n_kwnot on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3876); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnot"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3768); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -3891,9 +4827,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa AExpr */ -cltype = type_nit__AExpr.color; -idtype = type_nit__AExpr.id; +/* isa TKwnot */ +cltype = type_nit__TKwnot.color; +idtype = type_nit__TKwnot.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -3905,21 +4841,21 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3877); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwnot", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3769); +fatal_exit(1); } { -nit__parser_prod___APercentExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#APercentExpr#n_expr= on */ +nit__parser_prod___ANotExpr___n_kwnot_61d(self, var_new_child); /* Direct call parser_prod#ANotExpr#n_kwnot= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val; /* _n_expr on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3880); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3772); +fatal_exit(1); } { { /* Inline kernel#Object#== (var7,var_old_child) on */ @@ -3953,35 +4889,35 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3881); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3773); +fatal_exit(1); } { -nit__parser_prod___APercentExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#APercentExpr#n_expr2= on */ +nit__parser_prod___ANotExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#ANotExpr#n_expr= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#APercentExpr#n_expr= for (self: APercentExpr, AExpr) */ -void nit__parser_prod___APercentExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ANotExpr#n_kwnot= for (self: ANotExpr, TKwnot) */ +void nit__parser_prod___ANotExpr___n_kwnot_61d(val* self, val* p0) { +val* var_node /* var node: TKwnot */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val = var_node; /* _n_kwnot on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#APercentExpr#n_expr2= for (self: APercentExpr, AExpr) */ -void nit__parser_prod___APercentExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#ANotExpr#n_expr= for (self: ANotExpr, AExpr) */ +void nit__parser_prod___ANotExpr___n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3990,87 +4926,115 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#APercentExpr#visit_all for (self: APercentExpr, Visitor) */ -void nit__parser_prod___APercentExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ANotExpr#visit_all for (self: ANotExpr, Visitor) */ +void nit__parser_prod___ANotExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; +val* var /* : TKwnot */; val* var1 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_kwnot].val; /* _n_kwnot on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3900); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnot"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3792); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val; /* _n_expr on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3901); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3793); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AUminusExpr#init_auminusexpr for (self: AUminusExpr, nullable TMinus, nullable AExpr) */ -void nit__parser_prod___AUminusExpr___init_auminusexpr(val* self, val* p0, val* p1) { -val* var_n_minus /* var n_minus: nullable TMinus */; +/* method parser_prod#AEqExpr#init_aeqexpr for (self: AEqExpr, nullable AExpr, nullable TEq, nullable AExpr) */ +void nit__parser_prod___AEqExpr___init_aeqexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; -var_n_minus = p0; -var_n_expr = p1; -if (unlikely(var_n_minus == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3910); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AUminusExpr___n_minus].val = var_n_minus; /* _n_minus on */ -if (var_n_minus == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3911); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_minus,self) on */ -if (unlikely(var_n_minus == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_minus->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +val* var_n_op /* var n_op: nullable TEq */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } +var_n_expr = p0; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3912); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3803); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3913); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3804); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3805); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3806); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_expr2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3807); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3808); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} RET_LABEL:; } -/* method parser_prod#AUminusExpr#replace_child for (self: AUminusExpr, ANode, nullable ANode) */ -void nit__parser_prod___AUminusExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AEqExpr#replace_child for (self: AEqExpr, ANode, nullable ANode) */ +void nit__parser_prod___AEqExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TMinus */; +val* var /* : AExpr */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -4079,7 +5043,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExpr */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -4087,19 +5051,27 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : AExpr */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AUminusExpr___n_minus].val; /* _n_minus on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_minus"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3918); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3813); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -4112,9 +5084,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TMinus */ -cltype = type_nit__TMinus.color; -idtype = type_nit__TMinus.id; +/* isa AExpr */ +cltype = type_nit__AExpr.color; +idtype = type_nit__AExpr.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -4126,27 +5098,27 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TMinus", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3919); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3814); +fatal_exit(1); } { -nit__parser_prod___AUminusExpr___n_minus_61d(self, var_new_child); /* Direct call parser_prod#AUminusExpr#n_minus= on */ +nit__parser_prod___AEqExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AEqExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3922); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3817); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -4159,9 +5131,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AExpr */ -cltype14 = type_nit__AExpr.color; -idtype15 = type_nit__AExpr.id; +/* isa TEq */ +cltype14 = type_nit__TEq.color; +idtype15 = type_nit__TEq.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -4173,36 +5145,96 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3923); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TEq", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3818); +fatal_exit(1); +} +{ +nit__parser_prod___AEqExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AEqExpr#n_op= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3821); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; +if(var_new_child == NULL) { +var23 = 0; +} else { +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; +} else { +var23 = var_new_child->type->type_table[cltype24] == idtype25; +} +} +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3822); +fatal_exit(1); } { -nit__parser_prod___AUminusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AUminusExpr#n_expr= on */ +nit__parser_prod___AEqExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AEqExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AUminusExpr#n_minus= for (self: AUminusExpr, TMinus) */ -void nit__parser_prod___AUminusExpr___n_minus_61d(val* self, val* p0) { -val* var_node /* var node: TMinus */; +/* method parser_prod#AEqExpr#n_expr= for (self: AEqExpr, AExpr) */ +void nit__parser_prod___AEqExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AEqExpr#n_op= for (self: AEqExpr, Token) */ +void nit__parser_prod___AEqExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AUminusExpr___n_minus].val = var_node; /* _n_minus on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AUminusExpr#n_expr= for (self: AUminusExpr, AExpr) */ -void nit__parser_prod___AUminusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AEqExpr#n_expr2= for (self: AEqExpr, AExpr) */ +void nit__parser_prod___AEqExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -4211,147 +5243,125 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AUminusExpr#visit_all for (self: AUminusExpr, Visitor) */ -void nit__parser_prod___AUminusExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AEqExpr#visit_all for (self: AEqExpr, Visitor) */ +void nit__parser_prod___AEqExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TMinus */; -val* var1 /* : AExpr */; +val* var /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AUminusExpr___n_minus].val; /* _n_minus on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_minus"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3942); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3846); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3943); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3847); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -RET_LABEL:; +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3848); +fatal_exit(1); } -/* method parser_prod#ANewExpr#init_anewexpr for (self: ANewExpr, nullable TKwnew, nullable AType, nullable TId, nullable AExprs) */ -void nit__parser_prod___ANewExpr___init_anewexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_kwnew /* var n_kwnew: nullable TKwnew */; -val* var_n_type /* var n_type: nullable AType */; -val* var_n_id /* var n_id: nullable TId */; -val* var_n_args /* var n_args: nullable AExprs */; -val* var /* : null */; -short int var3 /* : Bool */; -short int var4 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -var_n_kwnew = p0; -var_n_type = p1; -var_n_id = p2; -var_n_args = p3; -if (unlikely(var_n_kwnew == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3954); -show_backtrace(1); +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_kwnew].val = var_n_kwnew; /* _n_kwnew on */ -if (var_n_kwnew == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3955); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwnew,self) on */ -if (unlikely(var_n_kwnew == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +RET_LABEL:; } -var_n_kwnew->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +/* method parser_prod#ANeExpr#init_aneexpr for (self: ANeExpr, nullable AExpr, nullable TNe, nullable AExpr) */ +void nit__parser_prod___ANeExpr___init_aneexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TNe */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_type == NULL)) { +var_n_expr = p0; +var_n_op = p1; +var_n_expr2 = p2; +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3956); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3858); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_type].val = var_n_type; /* _n_type on */ -if (var_n_type == NULL) { +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3957); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3859); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ -if (unlikely(var_n_type == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_id].val = var_n_id; /* _n_id on */ -var = NULL; -if (var_n_id == NULL) { -var3 = 0; /* is null */ -} else { -var3 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_id,var) on */ -var_other = var; -{ -var6 = ((short int (*)(val* self, val* p0))(var_n_id->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_id, var_other) /* == on */; -} -var7 = !var6; -var4 = var7; -goto RET_LABEL5; -RET_LABEL5:(void)0; -} -var3 = var4; +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3860); +fatal_exit(1); } -if (var3){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL8:(void)0; +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3861); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } -} else { } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3960); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3862); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3961); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3863); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL9:(void)0; +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#ANewExpr#replace_child for (self: ANewExpr, ANode, nullable ANode) */ -void nit__parser_prod___ANewExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ANeExpr#replace_child for (self: ANeExpr, ANode, nullable ANode) */ +void nit__parser_prod___ANeExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TKwnew */; +val* var /* : AExpr */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -4360,7 +5370,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AType */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -4368,36 +5378,27 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : nullable TId */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; -short int var19 /* : Bool */; -short int var21 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; short int var23 /* : Bool */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -const char* var_class_name27; -val* var28 /* : AExprs */; -short int var29 /* : Bool */; -short int var31 /* : Bool */; -short int var33 /* : Bool */; -short int var34 /* : Bool */; -int cltype35; -int idtype36; -const char* var_class_name37; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_kwnew].val; /* _n_kwnew on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnew"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3966); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3868); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -4410,9 +5411,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TKwnew */ -cltype = type_nit__TKwnew.color; -idtype = type_nit__TKwnew.id; +/* isa AExpr */ +cltype = type_nit__AExpr.color; +idtype = type_nit__AExpr.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -4424,27 +5425,27 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwnew", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3967); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3869); +fatal_exit(1); } { -nit__parser_prod___ANewExpr___n_kwnew_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_kwnew= on */ +nit__parser_prod___ANeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ANeExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_type].val; /* _n_type on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3970); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3872); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -4457,9 +5458,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AType */ -cltype14 = type_nit__AType.color; -idtype15 = type_nit__AType.id; +/* isa TNe */ +cltype14 = type_nit__TNe.color; +idtype15 = type_nit__TNe.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -4471,283 +5472,220 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AType", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3971); -show_backtrace(1); -} -{ -nit__parser_prod___ANewExpr___n_type_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_type= on */ -} -goto RET_LABEL; -} else { -} -var17 = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_id].val; /* _n_id on */ -if (var17 == NULL) { -var18 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ -var23 = var17 == var_other; -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -} -var19 = var21; -goto RET_LABEL20; -RET_LABEL20:(void)0; -} -var18 = var19; -} -if (var18){ -/* isa nullable TId */ -cltype25 = type_nullable__nit__TId.color; -idtype26 = type_nullable__nit__TId.id; -if(var_new_child == NULL) { -var24 = 1; -} else { -if(cltype25 >= var_new_child->type->table_size) { -var24 = 0; -} else { -var24 = var_new_child->type->type_table[cltype25] == idtype26; -} -} -if (unlikely(!var24)) { -var_class_name27 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TId", var_class_name27); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3975); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TNe", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3873); +fatal_exit(1); } { -nit__parser_prod___ANewExpr___n_id_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_id= on */ +nit__parser_prod___ANeExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#ANeExpr#n_op= on */ } goto RET_LABEL; } else { } -var28 = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_args].val; /* _n_args on */ -if (unlikely(var28 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3978); -show_backtrace(1); +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3876); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var28,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var28,var_other) on */ -var33 = var28 == var_other; -var31 = var33; -goto RET_LABEL32; -RET_LABEL32:(void)0; +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } } -var29 = var31; -goto RET_LABEL30; -RET_LABEL30:(void)0; +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; } } -if (var29){ -/* isa AExprs */ -cltype35 = type_nit__AExprs.color; -idtype36 = type_nit__AExprs.id; +if (var18){ +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { -var34 = 0; +var23 = 0; } else { -if(cltype35 >= var_new_child->type->table_size) { -var34 = 0; +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; } else { -var34 = var_new_child->type->type_table[cltype35] == idtype36; +var23 = var_new_child->type->type_table[cltype24] == idtype25; } } -if (unlikely(!var34)) { -var_class_name37 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name37); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3979); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3877); +fatal_exit(1); } { -nit__parser_prod___ANewExpr___n_args_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_args= on */ +nit__parser_prod___ANeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ANeExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ANewExpr#n_kwnew= for (self: ANewExpr, TKwnew) */ -void nit__parser_prod___ANewExpr___n_kwnew_61d(val* self, val* p0) { -val* var_node /* var node: TKwnew */; +/* method parser_prod#ANeExpr#n_expr= for (self: ANeExpr, AExpr) */ +void nit__parser_prod___ANeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_kwnew].val = var_node; /* _n_kwnew on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ANewExpr#n_type= for (self: ANewExpr, AType) */ -void nit__parser_prod___ANewExpr___n_type_61d(val* self, val* p0) { -val* var_node /* var node: AType */; +/* method parser_prod#ANeExpr#n_op= for (self: ANeExpr, Token) */ +void nit__parser_prod___ANeExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_type].val = var_node; /* _n_type on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ANewExpr#n_id= for (self: ANewExpr, nullable TId) */ -void nit__parser_prod___ANewExpr___n_id_61d(val* self, val* p0) { -val* var_node /* var node: nullable TId */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_id].val = var_node; /* _n_id on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} -} -} else { -} -RET_LABEL:; -} -/* method parser_prod#ANewExpr#n_args= for (self: ANewExpr, AExprs) */ -void nit__parser_prod___ANewExpr___n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#ANeExpr#n_expr2= for (self: ANeExpr, AExpr) */ +void nit__parser_prod___ANeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_args].val = var_node; /* _n_args on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ANewExpr#visit_all for (self: ANewExpr, Visitor) */ -void nit__parser_prod___ANewExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ANeExpr#visit_all for (self: ANeExpr, Visitor) */ +void nit__parser_prod___ANeExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TKwnew */; -val* var1 /* : AType */; -val* var2 /* : nullable TId */; -val* var3 /* : AExprs */; +val* var /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_kwnew].val; /* _n_kwnew on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnew"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4008); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3901); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_type].val; /* _n_type on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4009); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3902); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_id].val; /* _n_id on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3903); +fatal_exit(1); +} { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__ANewExpr___n_args].val; /* _n_args on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4011); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#ALtExpr#init_altexpr for (self: ALtExpr, nullable AExpr, nullable TLt, nullable AExpr) */ +void nit__parser_prod___ALtExpr___init_altexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TLt */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; { -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#AAttrExpr#init_aattrexpr for (self: AAttrExpr, nullable AExpr, nullable TAttrid) */ -void nit__parser_prod___AAttrExpr___init_aattrexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_id /* var n_id: nullable TAttrid */; var_n_expr = p0; -var_n_id = p1; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4020); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3913); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4021); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3914); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; } } -if (unlikely(var_n_id == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4022); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3915); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4023); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3916); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_expr2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3917); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3918); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrExpr#replace_child for (self: AAttrExpr, ANode, nullable ANode) */ -void nit__parser_prod___AAttrExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ALtExpr#replace_child for (self: ALtExpr, ANode, nullable ANode) */ +void nit__parser_prod___ALtExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -4759,7 +5697,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TAttrid */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -4767,13 +5705,21 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : AExpr */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4028); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3923); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -4807,26 +5753,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4029); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3924); +fatal_exit(1); } { -nit__parser_prod___AAttrExpr___nit__parser_nodes__AAttrFormExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAttrExpr#n_expr= on */ +nit__parser_prod___ALtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALtExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4032); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3927); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -4838,38 +5784,85 @@ goto RET_LABEL9; RET_LABEL9:(void)0; } } -if (var8){ -/* isa TAttrid */ -cltype14 = type_nit__TAttrid.color; -idtype15 = type_nit__TAttrid.id; +if (var8){ +/* isa TLt */ +cltype14 = type_nit__TLt.color; +idtype15 = type_nit__TLt.id; +if(var_new_child == NULL) { +var13 = 0; +} else { +if(cltype14 >= var_new_child->type->table_size) { +var13 = 0; +} else { +var13 = var_new_child->type->type_table[cltype14] == idtype15; +} +} +if (unlikely(!var13)) { +var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLt", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3928); +fatal_exit(1); +} +{ +nit__parser_prod___ALtExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#ALtExpr#n_op= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3931); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; +} +} +if (var18){ +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { -var13 = 0; +var23 = 0; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var23 = var_new_child->type->type_table[cltype24] == idtype25; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAttrid", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4033); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3932); +fatal_exit(1); } { -nit__parser_prod___AAttrExpr___nit__parser_nodes__AAttrFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AAttrExpr#n_id= on */ +nit__parser_prod___ALtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALtExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AAttrExpr#n_expr= for (self: AAttrExpr, AExpr) */ -void nit__parser_prod___AAttrExpr___nit__parser_nodes__AAttrFormExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#ALtExpr#n_expr= for (self: ALtExpr, AExpr) */ +void nit__parser_prod___ALtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -4878,143 +5871,148 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AAttrExpr#n_id= for (self: AAttrExpr, TAttrid) */ -void nit__parser_prod___AAttrExpr___nit__parser_nodes__AAttrFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TAttrid */; +/* method parser_prod#ALtExpr#n_op= for (self: ALtExpr, Token) */ +void nit__parser_prod___ALtExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ALtExpr#n_expr2= for (self: ALtExpr, AExpr) */ +void nit__parser_prod___ALtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrExpr#visit_all for (self: AAttrExpr, Visitor) */ -void nit__parser_prod___AAttrExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ALtExpr#visit_all for (self: ALtExpr, Visitor) */ +void nit__parser_prod___ALtExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : TAttrid */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4052); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3956); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4053); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3957); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3958); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#init_aattrassignexpr for (self: AAttrAssignExpr, nullable AExpr, nullable TAttrid, nullable TAssign, nullable AExpr) */ -void nit__parser_prod___AAttrAssignExpr___init_aattrassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { +/* method parser_prod#ALeExpr#init_aleexpr for (self: ALeExpr, nullable AExpr, nullable TLe, nullable AExpr) */ +void nit__parser_prod___ALeExpr___init_aleexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_id /* var n_id: nullable TAttrid */; -val* var_n_assign /* var n_assign: nullable TAssign */; -val* var_n_value /* var n_value: nullable AExpr */; +val* var_n_op /* var n_op: nullable TLe */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_id = p1; -var_n_assign = p2; -var_n_value = p3; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4064); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3968); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4065); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3969); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4066); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4067); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_assign == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4068); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3970); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4069); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3971); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -if (unlikely(var_n_assign == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } -if (unlikely(var_n_value == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4070); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3972); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4071); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3973); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#replace_child for (self: AAttrAssignExpr, ANode, nullable ANode) */ -void nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ALeExpr#replace_child for (self: ALeExpr, ANode, nullable ANode) */ +void nit__parser_prod___ALeExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -5026,7 +6024,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TAttrid */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -5034,7 +6032,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : TAssign */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -5042,21 +6040,13 @@ short int var23 /* : Bool */; int cltype24; int idtype25; const char* var_class_name26; -val* var27 /* : AExpr */; -short int var28 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4076); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3978); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -5090,26 +6080,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4077); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3979); +fatal_exit(1); } { -nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAttrFormExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_expr= on */ +nit__parser_prod___ALeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALeExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4080); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3982); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -5122,9 +6112,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TAttrid */ -cltype14 = type_nit__TAttrid.color; -idtype15 = type_nit__TAttrid.id; +/* isa TLe */ +cltype14 = type_nit__TLe.color; +idtype15 = type_nit__TLe.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -5136,27 +6126,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAttrid", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4081); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLe", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3983); +fatal_exit(1); } { -nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAttrFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_id= on */ +nit__parser_prod___ALeExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#ALeExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4084); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3986); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -5169,9 +6159,9 @@ RET_LABEL19:(void)0; } } if (var18){ -/* isa TAssign */ -cltype24 = type_nit__TAssign.color; -idtype25 = type_nit__TAssign.id; +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { var23 = 0; } else { @@ -5183,70 +6173,23 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; } if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4085); -show_backtrace(1); -} -{ -nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_assign= on */ -} -goto RET_LABEL; -} else { -} -var27 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var27 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4088); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var27,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var32 = var27 == var_other; -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; -} -} -var28 = var30; -goto RET_LABEL29; -RET_LABEL29:(void)0; -} -} -if (var28){ -/* isa AExpr */ -cltype34 = type_nit__AExpr.color; -idtype35 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var33 = 0; -} else { -if(cltype34 >= var_new_child->type->table_size) { -var33 = 0; -} else { -var33 = var_new_child->type->type_table[cltype34] == idtype35; -} -} -if (unlikely(!var33)) { -var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4089); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 3987); +fatal_exit(1); } { -nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_value= on */ +nit__parser_prod___ALeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALeExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#n_expr= for (self: AAttrAssignExpr, AExpr) */ -void nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAttrFormExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#ALeExpr#n_expr= for (self: ALeExpr, AExpr) */ +void nit__parser_prod___ALeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -5255,37 +6198,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#n_id= for (self: AAttrAssignExpr, TAttrid) */ -void nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAttrFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TAttrid */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAttrAssignExpr#n_assign= for (self: AAttrAssignExpr, TAssign) */ -void nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; +/* method parser_prod#ALeExpr#n_op= for (self: ALeExpr, Token) */ +void nit__parser_prod___ALeExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#n_value= for (self: AAttrAssignExpr, AExpr) */ -void nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#ALeExpr#n_expr2= for (self: ALeExpr, AExpr) */ +void nit__parser_prod___ALeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -5294,150 +6224,122 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#visit_all for (self: AAttrAssignExpr, Visitor) */ -void nit__parser_prod___AAttrAssignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ALeExpr#visit_all for (self: ALeExpr, Visitor) */ +void nit__parser_prod___ALeExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : TAttrid */; -val* var2 /* : TAssign */; -val* var3 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4118); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4011); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4119); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4012); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4120); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4013); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4121); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#ALlExpr#init_allexpr for (self: ALlExpr, nullable AExpr, nullable TLl, nullable AExpr) */ +void nit__parser_prod___ALlExpr___init_allexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TLl */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; { -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#init_aattrreassignexpr for (self: AAttrReassignExpr, nullable AExpr, nullable TAttrid, nullable AAssignOp, nullable AExpr) */ -void nit__parser_prod___AAttrReassignExpr___init_aattrreassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_id /* var n_id: nullable TAttrid */; -val* var_n_assign_op /* var n_assign_op: nullable AAssignOp */; -val* var_n_value /* var n_value: nullable AExpr */; var_n_expr = p0; -var_n_id = p1; -var_n_assign_op = p2; -var_n_value = p3; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4132); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4023); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4133); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4024); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4134); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4135); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_assign_op == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4136); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4025); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4137); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4026); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ -if (unlikely(var_n_assign_op == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } -if (unlikely(var_n_value == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4138); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4027); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4139); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4028); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#replace_child for (self: AAttrReassignExpr, ANode, nullable ANode) */ -void nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ALlExpr#replace_child for (self: ALlExpr, ANode, nullable ANode) */ +void nit__parser_prod___ALlExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -5449,7 +6351,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TAttrid */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -5457,7 +6359,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : AAssignOp */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -5465,21 +6367,13 @@ short int var23 /* : Bool */; int cltype24; int idtype25; const char* var_class_name26; -val* var27 /* : AExpr */; -short int var28 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4144); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4033); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -5513,26 +6407,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4145); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4034); +fatal_exit(1); } { -nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AAttrFormExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_expr= on */ +nit__parser_prod___ALlExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALlExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4148); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4037); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -5545,9 +6439,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TAttrid */ -cltype14 = type_nit__TAttrid.color; -idtype15 = type_nit__TAttrid.id; +/* isa TLl */ +cltype14 = type_nit__TLl.color; +idtype15 = type_nit__TLl.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -5559,27 +6453,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAttrid", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4149); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TLl", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4038); +fatal_exit(1); } { -nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AAttrFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_id= on */ +nit__parser_prod___ALlExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#ALlExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4152); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4041); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -5591,85 +6485,38 @@ goto RET_LABEL19; RET_LABEL19:(void)0; } } -if (var18){ -/* isa AAssignOp */ -cltype24 = type_nit__AAssignOp.color; -idtype25 = type_nit__AAssignOp.id; -if(var_new_child == NULL) { -var23 = 0; -} else { -if(cltype24 >= var_new_child->type->table_size) { -var23 = 0; -} else { -var23 = var_new_child->type->type_table[cltype24] == idtype25; -} -} -if (unlikely(!var23)) { -var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4153); -show_backtrace(1); -} -{ -nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_assign_op= on */ -} -goto RET_LABEL; -} else { -} -var27 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var27 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4156); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var27,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var32 = var27 == var_other; -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; -} -} -var28 = var30; -goto RET_LABEL29; -RET_LABEL29:(void)0; -} -} -if (var28){ +if (var18){ /* isa AExpr */ -cltype34 = type_nit__AExpr.color; -idtype35 = type_nit__AExpr.id; +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { -var33 = 0; +var23 = 0; } else { -if(cltype34 >= var_new_child->type->table_size) { -var33 = 0; +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; } else { -var33 = var_new_child->type->type_table[cltype34] == idtype35; +var23 = var_new_child->type->type_table[cltype24] == idtype25; } } -if (unlikely(!var33)) { -var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4157); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4042); +fatal_exit(1); } { -nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_value= on */ +nit__parser_prod___ALlExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALlExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#n_expr= for (self: AAttrReassignExpr, AExpr) */ -void nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AAttrFormExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#ALlExpr#n_expr= for (self: ALlExpr, AExpr) */ +void nit__parser_prod___ALlExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -5678,37 +6525,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#n_id= for (self: AAttrReassignExpr, TAttrid) */ -void nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AAttrFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TAttrid */; +/* method parser_prod#ALlExpr#n_op= for (self: ALlExpr, Token) */ +void nit__parser_prod___ALlExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#n_assign_op= for (self: AAttrReassignExpr, AAssignOp) */ -void nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_node; /* _n_assign_op on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_value= for (self: AAttrReassignExpr, AExpr) */ -void nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#ALlExpr#n_expr2= for (self: ALlExpr, AExpr) */ +void nit__parser_prod___ALlExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -5717,127 +6551,122 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#visit_all for (self: AAttrReassignExpr, Visitor) */ -void nit__parser_prod___AAttrReassignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ALlExpr#visit_all for (self: ALlExpr, Visitor) */ +void nit__parser_prod___ALlExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : TAttrid */; -val* var2 /* : AAssignOp */; -val* var3 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4186); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4066); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4187); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4067); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4188); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4068); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4189); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AGtExpr#init_agtexpr for (self: AGtExpr, nullable AExpr, nullable TGt, nullable AExpr) */ +void nit__parser_prod___AGtExpr___init_agtexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TGt */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; { -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#ACallExpr#init_acallexpr for (self: ACallExpr, nullable AExpr, nullable TId, nullable AExprs) */ -void nit__parser_prod___ACallExpr___init_acallexpr(val* self, val* p0, val* p1, val* p2) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_id /* var n_id: nullable TId */; -val* var_n_args /* var n_args: nullable AExprs */; var_n_expr = p0; -var_n_id = p1; -var_n_args = p2; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4199); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4078); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4200); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4079); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; } } -if (unlikely(var_n_id == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4201); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4080); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4202); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4081); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4203); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4082); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4204); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4083); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACallExpr#replace_child for (self: ACallExpr, ANode, nullable ANode) */ -void nit__parser_prod___ACallExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AGtExpr#replace_child for (self: AGtExpr, ANode, nullable ANode) */ +void nit__parser_prod___AGtExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -5849,7 +6678,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TId */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -5857,7 +6686,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : AExprs */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -5867,11 +6696,11 @@ int idtype25; const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4209); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4088); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -5905,26 +6734,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4210); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4089); +fatal_exit(1); } { -nit__parser_prod___ACallExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACallExpr#n_expr= on */ +nit__parser_prod___AGtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGtExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4213); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4092); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -5937,9 +6766,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TId */ -cltype14 = type_nit__TId.color; -idtype15 = type_nit__TId.id; +/* isa TGt */ +cltype14 = type_nit__TGt.color; +idtype15 = type_nit__TGt.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -5951,27 +6780,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4214); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGt", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4093); +fatal_exit(1); } { -nit__parser_prod___ACallExpr___nit__parser_nodes__ACallFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ACallExpr#n_id= on */ +nit__parser_prod___AGtExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AGtExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4217); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4096); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -5984,9 +6813,9 @@ RET_LABEL19:(void)0; } } if (var18){ -/* isa AExprs */ -cltype24 = type_nit__AExprs.color; -idtype25 = type_nit__AExprs.id; +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { var23 = 0; } else { @@ -5998,23 +6827,23 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; } if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4218); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4097); +fatal_exit(1); } { -nit__parser_prod___ACallExpr___nit__parser_nodes__ACallFormExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ACallExpr#n_args= on */ +nit__parser_prod___AGtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGtExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ACallExpr#n_expr= for (self: ACallExpr, AExpr) */ -void nit__parser_prod___ACallExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AGtExpr#n_expr= for (self: AGtExpr, AExpr) */ +void nit__parser_prod___AGtExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -6023,189 +6852,148 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ACallExpr#n_id= for (self: ACallExpr, TId) */ -void nit__parser_prod___ACallExpr___nit__parser_nodes__ACallFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#AGtExpr#n_op= for (self: AGtExpr, Token) */ +void nit__parser_prod___AGtExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACallExpr#n_args= for (self: ACallExpr, AExprs) */ -void nit__parser_prod___ACallExpr___nit__parser_nodes__ACallFormExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#AGtExpr#n_expr2= for (self: AGtExpr, AExpr) */ +void nit__parser_prod___AGtExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val = var_node; /* _n_args on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACallExpr#visit_all for (self: ACallExpr, Visitor) */ -void nit__parser_prod___ACallExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AGtExpr#visit_all for (self: AGtExpr, Visitor) */ +void nit__parser_prod___AGtExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : TId */; -val* var2 /* : AExprs */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4242); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4121); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4243); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4122); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4244); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4123); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ACallAssignExpr#init_acallassignexpr for (self: ACallAssignExpr, nullable AExpr, nullable TId, nullable AExprs, nullable TAssign, nullable AExpr) */ -void nit__parser_prod___ACallAssignExpr___init_acallassignexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +/* method parser_prod#AGeExpr#init_ageexpr for (self: AGeExpr, nullable AExpr, nullable TGe, nullable AExpr) */ +void nit__parser_prod___AGeExpr___init_ageexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_id /* var n_id: nullable TId */; -val* var_n_args /* var n_args: nullable AExprs */; -val* var_n_assign /* var n_assign: nullable TAssign */; -val* var_n_value /* var n_value: nullable AExpr */; +val* var_n_op /* var n_op: nullable TGe */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_id = p1; -var_n_args = p2; -var_n_assign = p3; -var_n_value = p4; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4256); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4133); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4257); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4134); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4258); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4259); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4260); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4135); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4261); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4136); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } -if (unlikely(var_n_assign == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4262); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4137); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4263); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4138); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -if (unlikely(var_n_assign == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL4:(void)0; } } -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4264); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4265); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL5:(void)0; -} -} RET_LABEL:; } -/* method parser_prod#ACallAssignExpr#replace_child for (self: ACallAssignExpr, ANode, nullable ANode) */ -void nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AGeExpr#replace_child for (self: AGeExpr, ANode, nullable ANode) */ +void nit__parser_prod___AGeExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -6217,7 +7005,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TId */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -6225,7 +7013,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : AExprs */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -6233,29 +7021,13 @@ short int var23 /* : Bool */; int cltype24; int idtype25; const char* var_class_name26; -val* var27 /* : TAssign */; -short int var28 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; -val* var37 /* : AExpr */; -short int var38 /* : Bool */; -short int var40 /* : Bool */; -short int var42 /* : Bool */; -short int var43 /* : Bool */; -int cltype44; -int idtype45; -const char* var_class_name46; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4270); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4143); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -6289,26 +7061,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4271); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4144); +fatal_exit(1); } { -nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_expr= on */ +nit__parser_prod___AGeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGeExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4274); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4147); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -6321,9 +7093,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TId */ -cltype14 = type_nit__TId.color; -idtype15 = type_nit__TId.id; +/* isa TGe */ +cltype14 = type_nit__TGe.color; +idtype15 = type_nit__TGe.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -6335,27 +7107,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4275); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGe", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4148); +fatal_exit(1); } { -nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ACallFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_id= on */ +nit__parser_prod___AGeExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AGeExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4278); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4151); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -6368,9 +7140,9 @@ RET_LABEL19:(void)0; } } if (var18){ -/* isa AExprs */ -cltype24 = type_nit__AExprs.color; -idtype25 = type_nit__AExprs.id; +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { var23 = 0; } else { @@ -6382,117 +7154,23 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; } if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4279); -show_backtrace(1); -} -{ -nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ACallFormExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_args= on */ -} -goto RET_LABEL; -} else { -} -var27 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var27 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4282); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var27,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var32 = var27 == var_other; -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; -} -} -var28 = var30; -goto RET_LABEL29; -RET_LABEL29:(void)0; -} -} -if (var28){ -/* isa TAssign */ -cltype34 = type_nit__TAssign.color; -idtype35 = type_nit__TAssign.id; -if(var_new_child == NULL) { -var33 = 0; -} else { -if(cltype34 >= var_new_child->type->table_size) { -var33 = 0; -} else { -var33 = var_new_child->type->type_table[cltype34] == idtype35; -} -} -if (unlikely(!var33)) { -var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4283); -show_backtrace(1); -} -{ -nit__parser_prod___ACallAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_assign= on */ -} -goto RET_LABEL; -} else { -} -var37 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var37 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4286); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var37,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var37,var_other) on */ -var42 = var37 == var_other; -var40 = var42; -goto RET_LABEL41; -RET_LABEL41:(void)0; -} -} -var38 = var40; -goto RET_LABEL39; -RET_LABEL39:(void)0; -} -} -if (var38){ -/* isa AExpr */ -cltype44 = type_nit__AExpr.color; -idtype45 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var43 = 0; -} else { -if(cltype44 >= var_new_child->type->table_size) { -var43 = 0; -} else { -var43 = var_new_child->type->type_table[cltype44] == idtype45; -} -} -if (unlikely(!var43)) { -var_class_name46 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name46); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4287); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4152); +fatal_exit(1); } { -nit__parser_prod___ACallAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_value= on */ +nit__parser_prod___AGeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGeExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ACallAssignExpr#n_expr= for (self: ACallAssignExpr, AExpr) */ -void nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AGeExpr#n_expr= for (self: AGeExpr, AExpr) */ +void nit__parser_prod___AGeExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -6501,50 +7179,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ACallAssignExpr#n_id= for (self: ACallAssignExpr, TId) */ -void nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ACallFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_args= for (self: ACallAssignExpr, AExprs) */ -void nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ACallFormExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_assign= for (self: ACallAssignExpr, TAssign) */ -void nit__parser_prod___ACallAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; +/* method parser_prod#AGeExpr#n_op= for (self: AGeExpr, Token) */ +void nit__parser_prod___AGeExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACallAssignExpr#n_value= for (self: ACallAssignExpr, AExpr) */ -void nit__parser_prod___ACallAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#AGeExpr#n_expr2= for (self: AGeExpr, AExpr) */ +void nit__parser_prod___AGeExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -6553,183 +7205,122 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ACallAssignExpr#visit_all for (self: ACallAssignExpr, Visitor) */ -void nit__parser_prod___ACallAssignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AGeExpr#visit_all for (self: AGeExpr, Visitor) */ +void nit__parser_prod___AGeExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : TId */; -val* var2 /* : AExprs */; -val* var3 /* : TAssign */; -val* var4 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4321); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4176); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4322); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4177); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4323); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4178); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4324); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var4 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var4 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4325); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AGgExpr#init_aggexpr for (self: AGgExpr, nullable AExpr, nullable TGg, nullable AExpr) */ +void nit__parser_prod___AGgExpr___init_aggexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TGg */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; { -nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#ACallReassignExpr#init_acallreassignexpr for (self: ACallReassignExpr, nullable AExpr, nullable TId, nullable AExprs, nullable AAssignOp, nullable AExpr) */ -void nit__parser_prod___ACallReassignExpr___init_acallreassignexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_id /* var n_id: nullable TId */; -val* var_n_args /* var n_args: nullable AExprs */; -val* var_n_assign_op /* var n_assign_op: nullable AAssignOp */; -val* var_n_value /* var n_value: nullable AExpr */; var_n_expr = p0; -var_n_id = p1; -var_n_args = p2; -var_n_assign_op = p3; -var_n_value = p4; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4337); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4188); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4338); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4189); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4339); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4340); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4341); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4190); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4342); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4191); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } -if (unlikely(var_n_assign_op == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4343); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4192); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4344); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4193); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ -if (unlikely(var_n_assign_op == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL4:(void)0; } } -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4345); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4346); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL5:(void)0; -} -} RET_LABEL:; } -/* method parser_prod#ACallReassignExpr#replace_child for (self: ACallReassignExpr, ANode, nullable ANode) */ -void nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AGgExpr#replace_child for (self: AGgExpr, ANode, nullable ANode) */ +void nit__parser_prod___AGgExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -6741,7 +7332,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TId */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -6749,7 +7340,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : AExprs */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -6757,29 +7348,13 @@ short int var23 /* : Bool */; int cltype24; int idtype25; const char* var_class_name26; -val* var27 /* : AAssignOp */; -short int var28 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; -val* var37 /* : AExpr */; -short int var38 /* : Bool */; -short int var40 /* : Bool */; -short int var42 /* : Bool */; -short int var43 /* : Bool */; -int cltype44; -int idtype45; -const char* var_class_name46; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4351); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4198); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -6813,26 +7388,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4352); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4199); +fatal_exit(1); } { -nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_expr= on */ +nit__parser_prod___AGgExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGgExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4355); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4202); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -6845,9 +7420,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TId */ -cltype14 = type_nit__TId.color; -idtype15 = type_nit__TId.id; +/* isa TGg */ +cltype14 = type_nit__TGg.color; +idtype15 = type_nit__TGg.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -6859,27 +7434,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4356); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TGg", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4203); +fatal_exit(1); } { -nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ACallFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_id= on */ +nit__parser_prod___AGgExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AGgExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4359); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4206); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -6892,9 +7467,9 @@ RET_LABEL19:(void)0; } } if (var18){ -/* isa AExprs */ -cltype24 = type_nit__AExprs.color; -idtype25 = type_nit__AExprs.id; +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { var23 = 0; } else { @@ -6906,117 +7481,23 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; } if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4360); -show_backtrace(1); -} -{ -nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ACallFormExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_args= on */ -} -goto RET_LABEL; -} else { -} -var27 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ -if (unlikely(var27 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4363); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var27,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var32 = var27 == var_other; -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; -} -} -var28 = var30; -goto RET_LABEL29; -RET_LABEL29:(void)0; -} -} -if (var28){ -/* isa AAssignOp */ -cltype34 = type_nit__AAssignOp.color; -idtype35 = type_nit__AAssignOp.id; -if(var_new_child == NULL) { -var33 = 0; -} else { -if(cltype34 >= var_new_child->type->table_size) { -var33 = 0; -} else { -var33 = var_new_child->type->type_table[cltype34] == idtype35; -} -} -if (unlikely(!var33)) { -var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4364); -show_backtrace(1); -} -{ -nit__parser_prod___ACallReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_assign_op= on */ -} -goto RET_LABEL; -} else { -} -var37 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var37 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4367); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var37,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var37,var_other) on */ -var42 = var37 == var_other; -var40 = var42; -goto RET_LABEL41; -RET_LABEL41:(void)0; -} -} -var38 = var40; -goto RET_LABEL39; -RET_LABEL39:(void)0; -} -} -if (var38){ -/* isa AExpr */ -cltype44 = type_nit__AExpr.color; -idtype45 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var43 = 0; -} else { -if(cltype44 >= var_new_child->type->table_size) { -var43 = 0; -} else { -var43 = var_new_child->type->type_table[cltype44] == idtype45; -} -} -if (unlikely(!var43)) { -var_class_name46 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name46); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4368); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4207); +fatal_exit(1); } { -nit__parser_prod___ACallReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_value= on */ +nit__parser_prod___AGgExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGgExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ACallReassignExpr#n_expr= for (self: ACallReassignExpr, AExpr) */ -void nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AGgExpr#n_expr= for (self: AGgExpr, AExpr) */ +void nit__parser_prod___AGgExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -7025,50 +7506,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ACallReassignExpr#n_id= for (self: ACallReassignExpr, TId) */ -void nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ACallFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#AGgExpr#n_op= for (self: AGgExpr, Token) */ +void nit__parser_prod___AGgExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACallReassignExpr#n_args= for (self: ACallReassignExpr, AExprs) */ -void nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ACallFormExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_assign_op= for (self: ACallReassignExpr, AAssignOp) */ -void nit__parser_prod___ACallReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_node; /* _n_assign_op on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_value= for (self: ACallReassignExpr, AExpr) */ -void nit__parser_prod___ACallReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#AGgExpr#n_expr2= for (self: AGgExpr, AExpr) */ +void nit__parser_prod___AGgExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -7077,495 +7532,449 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ACallReassignExpr#visit_all for (self: ACallReassignExpr, Visitor) */ -void nit__parser_prod___ACallReassignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AGgExpr#visit_all for (self: AGgExpr, Visitor) */ +void nit__parser_prod___AGgExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : TId */; -val* var2 /* : AExprs */; -val* var3 /* : AAssignOp */; -val* var4 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4402); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4231); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4403); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4232); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4404); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4233); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4405); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var4 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var4 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4406); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#ASuperExpr#init_asuperexpr for (self: ASuperExpr, nullable AQualified, nullable TKwsuper, nullable AExprs) */ -void nit__parser_prod___ASuperExpr___init_asuperexpr(val* self, val* p0, val* p1, val* p2) { -val* var_n_qualified /* var n_qualified: nullable AQualified */; -val* var_n_kwsuper /* var n_kwsuper: nullable TKwsuper */; -val* var_n_args /* var n_args: nullable AExprs */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; -var_n_qualified = p0; -var_n_kwsuper = p1; -var_n_args = p2; -self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_qualified].val = var_n_qualified; /* _n_qualified on */ -var = NULL; -if (var_n_qualified == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_qualified,var) on */ -var_other = var; +/* method parser_prod#AIsaExpr#init_aisaexpr for (self: AIsaExpr, nullable AExpr, nullable TKwisa, nullable AType) */ +void nit__parser_prod___AIsaExpr___init_aisaexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_kwisa /* var n_kwisa: nullable TKwisa */; +val* var_n_type /* var n_type: nullable AType */; { -var4 = ((short int (*)(val* self, val* p0))(var_n_qualified->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_qualified, var_other) /* == on */; +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; } -var1 = var2; +var_n_expr = p0; +var_n_kwisa = p1; +var_n_type = p2; +if (unlikely(var_n_expr == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4243); +fatal_exit(1); } -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_qualified,self) on */ -var_n_qualified->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; +self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4244); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } -} else { } -if (unlikely(var_n_kwsuper == NULL)) { +if (unlikely(var_n_kwisa == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4418); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4245); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_kwsuper].val = var_n_kwsuper; /* _n_kwsuper on */ -if (var_n_kwsuper == NULL) { +self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_kwisa].val = var_n_kwisa; /* _n_kwisa on */ +if (var_n_kwisa == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4419); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4246); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwsuper,self) on */ -if (unlikely(var_n_kwsuper == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwisa,self) on */ +if (unlikely(var_n_kwisa == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_kwsuper->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; +var_n_kwisa->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_type == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4420); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4247); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val = var_n_type; /* _n_type on */ +if (var_n_type == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4421); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4248); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ +if (unlikely(var_n_type == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL8:(void)0; +var_n_type->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#ASuperExpr#replace_child for (self: ASuperExpr, ANode, nullable ANode) */ -void nit__parser_prod___ASuperExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AIsaExpr#replace_child for (self: AIsaExpr, ANode, nullable ANode) */ +void nit__parser_prod___AIsaExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : nullable AQualified */; +val* var /* : AExpr */; short int var1 /* : Bool */; -short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; +short int var5 /* : Bool */; short int var6 /* : Bool */; -short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TKwsuper */; -short int var9 /* : Bool */; -short int var11 /* : Bool */; +val* var7 /* : TKwisa */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var12 /* : Bool */; short int var13 /* : Bool */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -const char* var_class_name17; -val* var18 /* : AExprs */; -short int var19 /* : Bool */; -short int var21 /* : Bool */; +int cltype14; +int idtype15; +const char* var_class_name16; +val* var17 /* : AType */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; short int var23 /* : Bool */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -const char* var_class_name27; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_qualified].val; /* _n_qualified on */ -if (var == NULL) { -var1 = 0; /* cannot be null */ -} else { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4253); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var6 = var == var_other; -var4 = var6; -goto RET_LABEL5; -RET_LABEL5:(void)0; +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +var5 = var == var_other; +var3 = var5; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var1 = var3; +goto RET_LABEL2; +RET_LABEL2:(void)0; } -var1 = var2; } if (var1){ -/* isa nullable AQualified */ -cltype = type_nullable__nit__AQualified.color; -idtype = type_nullable__nit__AQualified.id; +/* isa AExpr */ +cltype = type_nit__AExpr.color; +idtype = type_nit__AExpr.id; if(var_new_child == NULL) { -var7 = 1; +var6 = 0; } else { if(cltype >= var_new_child->type->table_size) { -var7 = 0; +var6 = 0; } else { -var7 = var_new_child->type->type_table[cltype] == idtype; +var6 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var7)) { +if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AQualified", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4427); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4254); +fatal_exit(1); } { -nit__parser_prod___ASuperExpr___n_qualified_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_qualified= on */ +nit__parser_prod___AIsaExpr___n_expr_61d(self, var_new_child); /* Direct call parser_prod#AIsaExpr#n_expr= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_kwsuper].val; /* _n_kwsuper on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwsuper"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4430); -show_backtrace(1); +var7 = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_kwisa].val; /* _n_kwisa on */ +if (unlikely(var7 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwisa"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4257); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var13 = var8 == var_other; -var11 = var13; -goto RET_LABEL12; -RET_LABEL12:(void)0; +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +var12 = var7 == var_other; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; } } -var9 = var11; -goto RET_LABEL10; -RET_LABEL10:(void)0; +var8 = var10; +goto RET_LABEL9; +RET_LABEL9:(void)0; } } -if (var9){ -/* isa TKwsuper */ -cltype15 = type_nit__TKwsuper.color; -idtype16 = type_nit__TKwsuper.id; +if (var8){ +/* isa TKwisa */ +cltype14 = type_nit__TKwisa.color; +idtype15 = type_nit__TKwisa.id; if(var_new_child == NULL) { -var14 = 0; +var13 = 0; } else { -if(cltype15 >= var_new_child->type->table_size) { -var14 = 0; +if(cltype14 >= var_new_child->type->table_size) { +var13 = 0; } else { -var14 = var_new_child->type->type_table[cltype15] == idtype16; +var13 = var_new_child->type->type_table[cltype14] == idtype15; } } -if (unlikely(!var14)) { -var_class_name17 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwsuper", var_class_name17); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4431); -show_backtrace(1); +if (unlikely(!var13)) { +var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwisa", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4258); +fatal_exit(1); } { -nit__parser_prod___ASuperExpr___n_kwsuper_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_kwsuper= on */ +nit__parser_prod___AIsaExpr___n_kwisa_61d(self, var_new_child); /* Direct call parser_prod#AIsaExpr#n_kwisa= on */ } goto RET_LABEL; } else { } -var18 = self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_args].val; /* _n_args on */ -if (unlikely(var18 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4434); -show_backtrace(1); +var17 = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val; /* _n_type on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4261); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var18,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var18,var_other) on */ -var23 = var18 == var_other; -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; } } -var19 = var21; -goto RET_LABEL20; -RET_LABEL20:(void)0; +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; } } -if (var19){ -/* isa AExprs */ -cltype25 = type_nit__AExprs.color; -idtype26 = type_nit__AExprs.id; +if (var18){ +/* isa AType */ +cltype24 = type_nit__AType.color; +idtype25 = type_nit__AType.id; if(var_new_child == NULL) { -var24 = 0; +var23 = 0; } else { -if(cltype25 >= var_new_child->type->table_size) { -var24 = 0; +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; } else { -var24 = var_new_child->type->type_table[cltype25] == idtype26; +var23 = var_new_child->type->type_table[cltype24] == idtype25; } } -if (unlikely(!var24)) { -var_class_name27 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name27); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4435); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AType", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4262); +fatal_exit(1); } { -nit__parser_prod___ASuperExpr___n_args_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_args= on */ +nit__parser_prod___AIsaExpr___n_type_61d(self, var_new_child); /* Direct call parser_prod#AIsaExpr#n_type= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ASuperExpr#n_qualified= for (self: ASuperExpr, nullable AQualified) */ -void nit__parser_prod___ASuperExpr___n_qualified_61d(val* self, val* p0) { -val* var_node /* var node: nullable AQualified */; -val* var /* : null */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var5 /* : Bool */; +/* method parser_prod#AIsaExpr#n_expr= for (self: AIsaExpr, AExpr) */ +void nit__parser_prod___AIsaExpr___n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_qualified].val = var_node; /* _n_qualified on */ -var = NULL; -if (var_node == NULL) { -var1 = 0; /* is null */ -} else { -var1 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ -var_other = var; -{ -var4 = ((short int (*)(val* self, val* p0))(var_node->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_node, var_other) /* == on */; -} -var5 = !var4; -var2 = var5; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ +self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL6:(void)0; -} +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -} else { } RET_LABEL:; } -/* method parser_prod#ASuperExpr#n_kwsuper= for (self: ASuperExpr, TKwsuper) */ -void nit__parser_prod___ASuperExpr___n_kwsuper_61d(val* self, val* p0) { -val* var_node /* var node: TKwsuper */; +/* method parser_prod#AIsaExpr#n_kwisa= for (self: AIsaExpr, TKwisa) */ +void nit__parser_prod___AIsaExpr___n_kwisa_61d(val* self, val* p0) { +val* var_node /* var node: TKwisa */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_kwsuper].val = var_node; /* _n_kwsuper on */ +self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_kwisa].val = var_node; /* _n_kwisa on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ASuperExpr#n_args= for (self: ASuperExpr, AExprs) */ -void nit__parser_prod___ASuperExpr___n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#AIsaExpr#n_type= for (self: AIsaExpr, AType) */ +void nit__parser_prod___AIsaExpr___n_type_61d(val* self, val* p0) { +val* var_node /* var node: AType */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_args].val = var_node; /* _n_args on */ +self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val = var_node; /* _n_type on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ASuperExpr#visit_all for (self: ASuperExpr, Visitor) */ -void nit__parser_prod___ASuperExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AIsaExpr#visit_all for (self: AIsaExpr, Visitor) */ +void nit__parser_prod___AIsaExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : nullable AQualified */; -val* var1 /* : TKwsuper */; -val* var2 /* : AExprs */; +val* var /* : AExpr */; +val* var1 /* : TKwisa */; +val* var2 /* : AType */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_qualified].val; /* _n_qualified on */ +var = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4286); +fatal_exit(1); +} { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_kwsuper].val; /* _n_kwsuper on */ +var1 = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_kwisa].val; /* _n_kwisa on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwsuper"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4460); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwisa"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4287); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__ASuperExpr___n_args].val; /* _n_args on */ +var2 = self->attrs[COLOR_nit__parser_nodes__AIsaExpr___n_type].val; /* _n_type on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4461); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4288); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AInitExpr#init_ainitexpr for (self: AInitExpr, nullable AExpr, nullable TKwinit, nullable AExprs) */ -void nit__parser_prod___AInitExpr___init_ainitexpr(val* self, val* p0, val* p1, val* p2) { +/* method parser_prod#APlusExpr#init_aplusexpr for (self: APlusExpr, nullable AExpr, nullable TPlus, nullable AExpr) */ +void nit__parser_prod___APlusExpr___init_aplusexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_kwinit /* var n_kwinit: nullable TKwinit */; -val* var_n_args /* var n_args: nullable AExprs */; +val* var_n_op /* var n_op: nullable TPlus */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_kwinit = p1; -var_n_args = p2; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4471); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4298); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4472); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4299); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; } } -if (unlikely(var_n_kwinit == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4473); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4300); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_kwinit].val = var_n_kwinit; /* _n_kwinit on */ -if (var_n_kwinit == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4474); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4301); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwinit,self) on */ -if (unlikely(var_n_kwinit == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_kwinit->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4475); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4302); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4476); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4303); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AInitExpr#replace_child for (self: AInitExpr, ANode, nullable ANode) */ -void nit__parser_prod___AInitExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#APlusExpr#replace_child for (self: APlusExpr, ANode, nullable ANode) */ +void nit__parser_prod___APlusExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -7577,7 +7986,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TKwinit */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -7585,7 +7994,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : AExprs */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -7595,11 +8004,11 @@ int idtype25; const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4481); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4308); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -7633,26 +8042,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4482); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4309); +fatal_exit(1); } { -nit__parser_prod___AInitExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_expr= on */ +nit__parser_prod___APlusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#APlusExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_kwinit].val; /* _n_kwinit on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwinit"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4485); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4312); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -7665,9 +8074,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TKwinit */ -cltype14 = type_nit__TKwinit.color; -idtype15 = type_nit__TKwinit.id; +/* isa TPlus */ +cltype14 = type_nit__TPlus.color; +idtype15 = type_nit__TPlus.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -7679,27 +8088,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwinit", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4486); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TPlus", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4313); +fatal_exit(1); } { -nit__parser_prod___AInitExpr___n_kwinit_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_kwinit= on */ +nit__parser_prod___APlusExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#APlusExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_args].val; /* _n_args on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4489); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4316); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -7712,9 +8121,9 @@ RET_LABEL19:(void)0; } } if (var18){ -/* isa AExprs */ -cltype24 = type_nit__AExprs.color; -idtype25 = type_nit__AExprs.id; +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { var23 = 0; } else { @@ -7726,23 +8135,23 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; } if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4490); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4317); +fatal_exit(1); } { -nit__parser_prod___AInitExpr___n_args_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_args= on */ +nit__parser_prod___APlusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#APlusExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AInitExpr#n_expr= for (self: AInitExpr, AExpr) */ -void nit__parser_prod___AInitExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#APlusExpr#n_expr= for (self: APlusExpr, AExpr) */ +void nit__parser_prod___APlusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -7751,120 +8160,148 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AInitExpr#n_kwinit= for (self: AInitExpr, TKwinit) */ -void nit__parser_prod___AInitExpr___n_kwinit_61d(val* self, val* p0) { -val* var_node /* var node: TKwinit */; +/* method parser_prod#APlusExpr#n_op= for (self: APlusExpr, Token) */ +void nit__parser_prod___APlusExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_kwinit].val = var_node; /* _n_kwinit on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AInitExpr#n_args= for (self: AInitExpr, AExprs) */ -void nit__parser_prod___AInitExpr___n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#APlusExpr#n_expr2= for (self: APlusExpr, AExpr) */ +void nit__parser_prod___APlusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_args].val = var_node; /* _n_args on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AInitExpr#visit_all for (self: AInitExpr, Visitor) */ -void nit__parser_prod___AInitExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#APlusExpr#visit_all for (self: APlusExpr, Visitor) */ +void nit__parser_prod___APlusExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : TKwinit */; -val* var2 /* : AExprs */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4514); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4341); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_kwinit].val; /* _n_kwinit on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwinit"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4515); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4342); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AInitExpr___n_args].val; /* _n_args on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4516); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4343); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ABraExpr#init_abraexpr for (self: ABraExpr, nullable AExpr, nullable AExprs) */ -void nit__parser_prod___ABraExpr___init_abraexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AMinusExpr#init_aminusexpr for (self: AMinusExpr, nullable AExpr, nullable TMinus, nullable AExpr) */ +void nit__parser_prod___AMinusExpr___init_aminusexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_args /* var n_args: nullable AExprs */; +val* var_n_op /* var n_op: nullable TMinus */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_args = p1; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4525); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4353); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4526); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4354); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; } } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4527); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4355); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4528); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4356); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +} +if (unlikely(var_n_expr2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4357); +fatal_exit(1); +} +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4358); +fatal_exit(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); +} +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraExpr#replace_child for (self: ABraExpr, ANode, nullable ANode) */ -void nit__parser_prod___ABraExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AMinusExpr#replace_child for (self: AMinusExpr, ANode, nullable ANode) */ +void nit__parser_prod___AMinusExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -7876,7 +8313,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExprs */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -7884,13 +8321,21 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; +val* var17 /* : AExpr */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +short int var22 /* : Bool */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4533); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4363); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -7924,69 +8369,116 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4534); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4364); +fatal_exit(1); } { -nit__parser_prod___ABraExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraExpr#n_expr= on */ +nit__parser_prod___AMinusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AMinusExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4537); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4367); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; RET_LABEL11:(void)0; } } -var8 = var10; -goto RET_LABEL9; -RET_LABEL9:(void)0; +var8 = var10; +goto RET_LABEL9; +RET_LABEL9:(void)0; +} +} +if (var8){ +/* isa TMinus */ +cltype14 = type_nit__TMinus.color; +idtype15 = type_nit__TMinus.id; +if(var_new_child == NULL) { +var13 = 0; +} else { +if(cltype14 >= var_new_child->type->table_size) { +var13 = 0; +} else { +var13 = var_new_child->type->type_table[cltype14] == idtype15; +} +} +if (unlikely(!var13)) { +var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TMinus", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4368); +fatal_exit(1); +} +{ +nit__parser_prod___AMinusExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AMinusExpr#n_op= on */ +} +goto RET_LABEL; +} else { +} +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4371); +fatal_exit(1); +} +{ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +var22 = var17 == var_other; +var20 = var22; +goto RET_LABEL21; +RET_LABEL21:(void)0; +} +} +var18 = var20; +goto RET_LABEL19; +RET_LABEL19:(void)0; } } -if (var8){ -/* isa AExprs */ -cltype14 = type_nit__AExprs.color; -idtype15 = type_nit__AExprs.id; +if (var18){ +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { -var13 = 0; +var23 = 0; } else { -if(cltype14 >= var_new_child->type->table_size) { -var13 = 0; +if(cltype24 >= var_new_child->type->table_size) { +var23 = 0; } else { -var13 = var_new_child->type->type_table[cltype14] == idtype15; +var23 = var_new_child->type->type_table[cltype24] == idtype25; } } -if (unlikely(!var13)) { -var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4538); -show_backtrace(1); +if (unlikely(!var23)) { +var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4372); +fatal_exit(1); } { -nit__parser_prod___ABraExpr___nit__parser_nodes__ABraFormExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraExpr#n_args= on */ +nit__parser_prod___AMinusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AMinusExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABraExpr#n_expr= for (self: ABraExpr, AExpr) */ -void nit__parser_prod___ABraExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AMinusExpr#n_expr= for (self: AMinusExpr, AExpr) */ +void nit__parser_prod___AMinusExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -7995,143 +8487,148 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ABraExpr#n_args= for (self: ABraExpr, AExprs) */ -void nit__parser_prod___ABraExpr___nit__parser_nodes__ABraFormExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#AMinusExpr#n_op= for (self: AMinusExpr, Token) */ +void nit__parser_prod___AMinusExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AMinusExpr#n_expr2= for (self: AMinusExpr, AExpr) */ +void nit__parser_prod___AMinusExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraExpr#visit_all for (self: ABraExpr, Visitor) */ -void nit__parser_prod___ABraExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AMinusExpr#visit_all for (self: AMinusExpr, Visitor) */ +void nit__parser_prod___AMinusExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExprs */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4557); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4396); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4558); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4397); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4398); +fatal_exit(1); +} +{ +nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#init_abraassignexpr for (self: ABraAssignExpr, nullable AExpr, nullable AExprs, nullable TAssign, nullable AExpr) */ -void nit__parser_prod___ABraAssignExpr___init_abraassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { +/* method parser_prod#AStarshipExpr#init_astarshipexpr for (self: AStarshipExpr, nullable AExpr, nullable TStarship, nullable AExpr) */ +void nit__parser_prod___AStarshipExpr___init_astarshipexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_args /* var n_args: nullable AExprs */; -val* var_n_assign /* var n_assign: nullable TAssign */; -val* var_n_value /* var n_value: nullable AExpr */; +val* var_n_op /* var n_op: nullable TStarship */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} var_n_expr = p0; -var_n_args = p1; -var_n_assign = p2; -var_n_value = p3; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4569); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4408); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4570); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4409); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4571); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4572); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_assign == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4573); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4410); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4574); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4411); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -if (unlikely(var_n_assign == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } -if (unlikely(var_n_value == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4575); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4412); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4576); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4413); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#replace_child for (self: ABraAssignExpr, ANode, nullable ANode) */ -void nit__parser_prod___ABraAssignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AStarshipExpr#replace_child for (self: AStarshipExpr, ANode, nullable ANode) */ +void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -8143,7 +8640,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExprs */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -8151,7 +8648,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : TAssign */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -8159,21 +8656,13 @@ short int var23 /* : Bool */; int cltype24; int idtype25; const char* var_class_name26; -val* var27 /* : AExpr */; -short int var28 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4581); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4418); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -8207,26 +8696,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4582); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4419); +fatal_exit(1); } { -nit__parser_prod___ABraAssignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_expr= on */ +nit__parser_prod___AStarshipExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarshipExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4585); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4422); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -8239,9 +8728,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AExprs */ -cltype14 = type_nit__AExprs.color; -idtype15 = type_nit__AExprs.id; +/* isa TStarship */ +cltype14 = type_nit__TStarship.color; +idtype15 = type_nit__TStarship.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -8253,27 +8742,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4586); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStarship", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4423); +fatal_exit(1); } { -nit__parser_prod___ABraAssignExpr___nit__parser_nodes__ABraFormExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_args= on */ +nit__parser_prod___AStarshipExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AStarshipExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4589); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4426); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -8286,9 +8775,9 @@ RET_LABEL19:(void)0; } } if (var18){ -/* isa TAssign */ -cltype24 = type_nit__TAssign.color; -idtype25 = type_nit__TAssign.id; +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { var23 = 0; } else { @@ -8300,70 +8789,23 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; } if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4590); -show_backtrace(1); -} -{ -nit__parser_prod___ABraAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_assign= on */ -} -goto RET_LABEL; -} else { -} -var27 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var27 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4593); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var27,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var32 = var27 == var_other; -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; -} -} -var28 = var30; -goto RET_LABEL29; -RET_LABEL29:(void)0; -} -} -if (var28){ -/* isa AExpr */ -cltype34 = type_nit__AExpr.color; -idtype35 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var33 = 0; -} else { -if(cltype34 >= var_new_child->type->table_size) { -var33 = 0; -} else { -var33 = var_new_child->type->type_table[cltype34] == idtype35; -} -} -if (unlikely(!var33)) { -var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4594); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4427); +fatal_exit(1); } { -nit__parser_prod___ABraAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_value= on */ +nit__parser_prod___AStarshipExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarshipExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#n_expr= for (self: ABraAssignExpr, AExpr) */ -void nit__parser_prod___ABraAssignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AStarshipExpr#n_expr= for (self: AStarshipExpr, AExpr) */ +void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -8372,37 +8814,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#n_args= for (self: ABraAssignExpr, AExprs) */ -void nit__parser_prod___ABraAssignExpr___nit__parser_nodes__ABraFormExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ABraAssignExpr#n_assign= for (self: ABraAssignExpr, TAssign) */ -void nit__parser_prod___ABraAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; +/* method parser_prod#AStarshipExpr#n_op= for (self: AStarshipExpr, Token) */ +void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#n_value= for (self: ABraAssignExpr, AExpr) */ -void nit__parser_prod___ABraAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#AStarshipExpr#n_expr2= for (self: AStarshipExpr, AExpr) */ +void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -8411,150 +8840,122 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#visit_all for (self: ABraAssignExpr, Visitor) */ -void nit__parser_prod___ABraAssignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AStarshipExpr#visit_all for (self: AStarshipExpr, Visitor) */ +void nit__parser_prod___AStarshipExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExprs */; -val* var2 /* : TAssign */; -val* var3 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4623); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4451); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4624); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4452); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4625); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4453); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4626); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AStarExpr#init_astarexpr for (self: AStarExpr, nullable AExpr, nullable TStar, nullable AExpr) */ +void nit__parser_prod___AStarExpr___init_astarexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TStar */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; { -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; } -RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#init_abrareassignexpr for (self: ABraReassignExpr, nullable AExpr, nullable AExprs, nullable AAssignOp, nullable AExpr) */ -void nit__parser_prod___ABraReassignExpr___init_abrareassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_args /* var n_args: nullable AExprs */; -val* var_n_assign_op /* var n_assign_op: nullable AAssignOp */; -val* var_n_value /* var n_value: nullable AExpr */; var_n_expr = p0; -var_n_args = p1; -var_n_assign_op = p2; -var_n_value = p3; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4637); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4463); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4638); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4464); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4639); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4640); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_args,self) on */ -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_args->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_assign_op == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4641); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4465); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4642); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4466); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ -if (unlikely(var_n_assign_op == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } -if (unlikely(var_n_value == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4643); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4467); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4644); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4468); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#replace_child for (self: ABraReassignExpr, ANode, nullable ANode) */ -void nit__parser_prod___ABraReassignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AStarExpr#replace_child for (self: AStarExpr, ANode, nullable ANode) */ +void nit__parser_prod___AStarExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; val* var /* : AExpr */; @@ -8566,7 +8967,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AExprs */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -8574,7 +8975,7 @@ short int var13 /* : Bool */; int cltype14; int idtype15; const char* var_class_name16; -val* var17 /* : AAssignOp */; +val* var17 /* : AExpr */; short int var18 /* : Bool */; short int var20 /* : Bool */; short int var22 /* : Bool */; @@ -8582,21 +8983,13 @@ short int var23 /* : Bool */; int cltype24; int idtype25; const char* var_class_name26; -val* var27 /* : AExpr */; -short int var28 /* : Bool */; -short int var30 /* : Bool */; -short int var32 /* : Bool */; -short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4649); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4473); +fatal_exit(1); } { { /* Inline kernel#Object#== (var,var_old_child) on */ @@ -8630,26 +9023,26 @@ var6 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4650); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4474); +fatal_exit(1); } { -nit__parser_prod___ABraReassignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_expr= on */ +nit__parser_prod___AStarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4653); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4477); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -8662,9 +9055,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AExprs */ -cltype14 = type_nit__AExprs.color; -idtype15 = type_nit__AExprs.id; +/* isa TStar */ +cltype14 = type_nit__TStar.color; +idtype15 = type_nit__TStar.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -8676,27 +9069,27 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4654); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStar", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4478); +fatal_exit(1); } { -nit__parser_prod___ABraReassignExpr___nit__parser_nodes__ABraFormExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_args= on */ +nit__parser_prod___AStarExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AStarExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4657); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4481); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var17,var_old_child) on */ +{ /* Inline kernel#Object#== (var17,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var17,var_other) on */ var22 = var17 == var_other; var20 = var22; goto RET_LABEL21; @@ -8709,9 +9102,9 @@ RET_LABEL19:(void)0; } } if (var18){ -/* isa AAssignOp */ -cltype24 = type_nit__AAssignOp.color; -idtype25 = type_nit__AAssignOp.id; +/* isa AExpr */ +cltype24 = type_nit__AExpr.color; +idtype25 = type_nit__AExpr.id; if(var_new_child == NULL) { var23 = 0; } else { @@ -8723,70 +9116,23 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; } if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4658); -show_backtrace(1); -} -{ -nit__parser_prod___ABraReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_assign_op= on */ -} -goto RET_LABEL; -} else { -} -var27 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var27 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4661); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var27,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var27,var_other) on */ -var32 = var27 == var_other; -var30 = var32; -goto RET_LABEL31; -RET_LABEL31:(void)0; -} -} -var28 = var30; -goto RET_LABEL29; -RET_LABEL29:(void)0; -} -} -if (var28){ -/* isa AExpr */ -cltype34 = type_nit__AExpr.color; -idtype35 = type_nit__AExpr.id; -if(var_new_child == NULL) { -var33 = 0; -} else { -if(cltype34 >= var_new_child->type->table_size) { -var33 = 0; -} else { -var33 = var_new_child->type->type_table[cltype34] == idtype35; -} -} -if (unlikely(!var33)) { -var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4662); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4482); +fatal_exit(1); } { -nit__parser_prod___ABraReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_value= on */ +nit__parser_prod___AStarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_expr= for (self: ABraReassignExpr, AExpr) */ -void nit__parser_prod___ABraReassignExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AStarExpr#n_expr= for (self: AStarExpr, AExpr) */ +void nit__parser_prod___AStarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -8795,37 +9141,24 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_args= for (self: ABraReassignExpr, AExprs) */ -void nit__parser_prod___ABraReassignExpr___nit__parser_nodes__ABraFormExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ABraReassignExpr#n_assign_op= for (self: ABraReassignExpr, AAssignOp) */ -void nit__parser_prod___ABraReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; +/* method parser_prod#AStarExpr#n_op= for (self: AStarExpr, Token) */ +void nit__parser_prod___AStarExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_node; /* _n_assign_op on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_value= for (self: ABraReassignExpr, AExpr) */ -void nit__parser_prod___ABraReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#AStarExpr#n_expr2= for (self: AStarExpr, AExpr) */ +void nit__parser_prod___AStarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -8834,250 +9167,125 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#visit_all for (self: ABraReassignExpr, Visitor) */ -void nit__parser_prod___ABraReassignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AStarExpr#visit_all for (self: AStarExpr, Visitor) */ +void nit__parser_prod___AStarExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExprs */; -val* var2 /* : AAssignOp */; -val* var3 /* : AExpr */; +val* var1 /* : Token */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4691); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4506); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4692); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4507); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4693); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4508); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var3 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var3 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4694); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AVarExpr#init_avarexpr for (self: AVarExpr, nullable TId) */ -void nit__parser_prod___AVarExpr___init_avarexpr(val* self, val* p0) { -val* var_n_id /* var n_id: nullable TId */; -var_n_id = p0; -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4702); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4703); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AVarExpr#replace_child for (self: AVarExpr, ANode, nullable ANode) */ -void nit__parser_prod___AVarExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { -val* var_old_child /* var old_child: ANode */; -val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TId */; -short int var1 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4708); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ -var5 = var == var_other; -var3 = var5; -goto RET_LABEL4; -RET_LABEL4:(void)0; -} -} -var1 = var3; -goto RET_LABEL2; -RET_LABEL2:(void)0; -} -} -if (var1){ -/* isa TId */ -cltype = type_nit__TId.color; -idtype = type_nit__TId.id; -if(var_new_child == NULL) { -var6 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var6 = 0; -} else { -var6 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var6)) { -var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4709); -show_backtrace(1); -} -{ -nit__parser_prod___AVarExpr___nit__parser_nodes__AVarFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarExpr#n_id= on */ -} -goto RET_LABEL; -} else { -} RET_LABEL:; } -/* method parser_prod#AVarExpr#n_id= for (self: AVarExpr, TId) */ -void nit__parser_prod___AVarExpr___nit__parser_nodes__AVarFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; -var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ +/* method parser_prod#AStarstarExpr#init_astarstarexpr for (self: AStarstarExpr, nullable AExpr, nullable TStarstar, nullable AExpr) */ +void nit__parser_prod___AStarstarExpr___init_astarstarexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TStarstar */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } -RET_LABEL:; -} -/* method parser_prod#AVarExpr#visit_all for (self: AVarExpr, Visitor) */ -void nit__parser_prod___AVarExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TId */; -var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4723); -show_backtrace(1); -} -{ -nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AVarAssignExpr#init_avarassignexpr for (self: AVarAssignExpr, nullable TId, nullable TAssign, nullable AExpr) */ -void nit__parser_prod___AVarAssignExpr___init_avarassignexpr(val* self, val* p0, val* p1, val* p2) { -val* var_n_id /* var n_id: nullable TId */; -val* var_n_assign /* var n_assign: nullable TAssign */; -val* var_n_value /* var n_value: nullable AExpr */; -var_n_id = p0; -var_n_assign = p1; -var_n_value = p2; -if (unlikely(var_n_id == NULL)) { +var_n_expr = p0; +var_n_op = p1; +var_n_expr2 = p2; +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4733); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4518); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4734); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4519); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } } -if (unlikely(var_n_assign == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4735); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4520); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4736); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4521); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -if (unlikely(var_n_assign == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } -if (unlikely(var_n_value == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4737); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4522); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4738); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4523); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#replace_child for (self: AVarAssignExpr, ANode, nullable ANode) */ -void nit__parser_prod___AVarAssignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AStarstarExpr#replace_child for (self: AStarstarExpr, ANode, nullable ANode) */ +void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TId */; +val* var /* : AExpr */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -9086,7 +9294,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : TAssign */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -9104,17 +9312,17 @@ int idtype25; const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4743); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4528); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -9127,9 +9335,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TId */ -cltype = type_nit__TId.color; -idtype = type_nit__TId.id; +/* isa AExpr */ +cltype = type_nit__AExpr.color; +idtype = type_nit__AExpr.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -9141,27 +9349,27 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4744); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4529); +fatal_exit(1); } { -nit__parser_prod___AVarAssignExpr___nit__parser_nodes__AVarFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_id= on */ +nit__parser_prod___AStarstarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarstarExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4747); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4532); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -9174,9 +9382,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa TAssign */ -cltype14 = type_nit__TAssign.color; -idtype15 = type_nit__TAssign.id; +/* isa TStarstar */ +cltype14 = type_nit__TStarstar.color; +idtype15 = type_nit__TStarstar.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -9188,21 +9396,21 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4748); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStarstar", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4533); +fatal_exit(1); } { -nit__parser_prod___AVarAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_assign= on */ +nit__parser_prod___AStarstarExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#AStarstarExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4751); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4536); +fatal_exit(1); } { { /* Inline kernel#Object#== (var17,var_old_child) on */ @@ -9236,48 +9444,48 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4752); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4537); +fatal_exit(1); } { -nit__parser_prod___AVarAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_value= on */ +nit__parser_prod___AStarstarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarstarExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#n_id= for (self: AVarAssignExpr, TId) */ -void nit__parser_prod___AVarAssignExpr___nit__parser_nodes__AVarFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#AStarstarExpr#n_expr= for (self: AStarstarExpr, AExpr) */ +void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#n_assign= for (self: AVarAssignExpr, TAssign) */ -void nit__parser_prod___AVarAssignExpr___nit__parser_nodes__AAssignFormExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; +/* method parser_prod#AStarstarExpr#n_op= for (self: AStarstarExpr, Token) */ +void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#n_value= for (self: AVarAssignExpr, AExpr) */ -void nit__parser_prod___AVarAssignExpr___nit__parser_nodes__AAssignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#AStarstarExpr#n_expr2= for (self: AStarstarExpr, AExpr) */ +void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -9286,120 +9494,125 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#visit_all for (self: AVarAssignExpr, Visitor) */ -void nit__parser_prod___AVarAssignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#AStarstarExpr#visit_all for (self: AStarstarExpr, Visitor) */ +void nit__parser_prod___AStarstarExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TId */; -val* var1 /* : TAssign */; +val* var /* : AExpr */; +val* var1 /* : Token */; val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4776); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4561); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4777); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4562); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4778); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4563); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#init_avarreassignexpr for (self: AVarReassignExpr, nullable TId, nullable AAssignOp, nullable AExpr) */ -void nit__parser_prod___AVarReassignExpr___init_avarreassignexpr(val* self, val* p0, val* p1, val* p2) { -val* var_n_id /* var n_id: nullable TId */; -val* var_n_assign_op /* var n_assign_op: nullable AAssignOp */; -val* var_n_value /* var n_value: nullable AExpr */; -var_n_id = p0; -var_n_assign_op = p1; -var_n_value = p2; -if (unlikely(var_n_id == NULL)) { +/* method parser_prod#ASlashExpr#init_aslashexpr for (self: ASlashExpr, nullable AExpr, nullable TSlash, nullable AExpr) */ +void nit__parser_prod___ASlashExpr___init_aslashexpr(val* self, val* p0, val* p1, val* p2) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TSlash */; +val* var_n_expr2 /* var n_expr2: nullable AExpr */; +{ +{ /* Inline kernel#Object#init (self) on */ +RET_LABEL1:(void)0; +} +} +var_n_expr = p0; +var_n_op = p1; +var_n_expr2 = p2; +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4788); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4573); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4789); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4574); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -if (unlikely(var_n_id == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_id->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; } } -if (unlikely(var_n_assign_op == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4790); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4575); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4791); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4576); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ -if (unlikely(var_n_assign_op == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_assign_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; } } -if (unlikely(var_n_value == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4792); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4577); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4793); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4578); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_value,self) on */ -if (unlikely(var_n_value == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_value->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#replace_child for (self: AVarReassignExpr, ANode, nullable ANode) */ -void nit__parser_prod___AVarReassignExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ASlashExpr#replace_child for (self: ASlashExpr, ANode, nullable ANode) */ +void nit__parser_prod___ASlashExpr___nit__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) { val* var_old_child /* var old_child: ANode */; val* var_new_child /* var new_child: nullable ANode */; -val* var /* : TId */; +val* var /* : AExpr */; short int var1 /* : Bool */; val* var_other /* var other: nullable Object */; short int var3 /* : Bool */; @@ -9408,7 +9621,7 @@ short int var6 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var7 /* : AAssignOp */; +val* var7 /* : Token */; short int var8 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -9426,17 +9639,17 @@ int idtype25; const char* var_class_name26; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4798); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4583); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var5 = var == var_other; var3 = var5; goto RET_LABEL4; @@ -9449,9 +9662,9 @@ RET_LABEL2:(void)0; } } if (var1){ -/* isa TId */ -cltype = type_nit__TId.color; -idtype = type_nit__TId.id; +/* isa AExpr */ +cltype = type_nit__AExpr.color; +idtype = type_nit__AExpr.id; if(var_new_child == NULL) { var6 = 0; } else { @@ -9463,27 +9676,27 @@ var6 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var6)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4799); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4584); +fatal_exit(1); } { -nit__parser_prod___AVarReassignExpr___nit__parser_nodes__AVarFormExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_id= on */ +nit__parser_prod___ASlashExpr___nit__parser_nodes__ASendExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ASlashExpr#n_expr= on */ } goto RET_LABEL; } else { } -var7 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var7 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var7 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4802); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4587); +fatal_exit(1); } { -{ /* Inline kernel#Object#== (var7,var_old_child) on */ +{ /* Inline kernel#Object#== (var7,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var7,var_other) on */ var12 = var7 == var_other; var10 = var12; goto RET_LABEL11; @@ -9496,9 +9709,9 @@ RET_LABEL9:(void)0; } } if (var8){ -/* isa AAssignOp */ -cltype14 = type_nit__AAssignOp.color; -idtype15 = type_nit__AAssignOp.id; +/* isa TSlash */ +cltype14 = type_nit__TSlash.color; +idtype15 = type_nit__TSlash.id; if(var_new_child == NULL) { var13 = 0; } else { @@ -9510,21 +9723,21 @@ var13 = var_new_child->type->type_table[cltype14] == idtype15; } if (unlikely(!var13)) { var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name16); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4803); -show_backtrace(1); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TSlash", var_class_name16); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4588); +fatal_exit(1); } { -nit__parser_prod___AVarReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_assign_op= on */ +nit__parser_prod___ASlashExpr___nit__parser_nodes__ABinopExpr__n_op_61d(self, var_new_child); /* Direct call parser_prod#ASlashExpr#n_op= on */ } goto RET_LABEL; } else { } -var17 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +var17 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var17 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4806); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4591); +fatal_exit(1); } { { /* Inline kernel#Object#== (var17,var_old_child) on */ @@ -9558,48 +9771,48 @@ var23 = var_new_child->type->type_table[cltype24] == idtype25; if (unlikely(!var23)) { var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name26); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4807); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4592); +fatal_exit(1); } { -nit__parser_prod___AVarReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_value= on */ +nit__parser_prod___ASlashExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ASlashExpr#n_expr2= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_id= for (self: AVarReassignExpr, TId) */ -void nit__parser_prod___AVarReassignExpr___nit__parser_nodes__AVarFormExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#ASlashExpr#n_expr= for (self: ASlashExpr, AExpr) */ +void nit__parser_prod___ASlashExpr___nit__parser_nodes__ASendExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_assign_op= for (self: AVarReassignExpr, AAssignOp) */ -void nit__parser_prod___AVarReassignExpr___nit__parser_nodes__AReassignFormExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; +/* method parser_prod#ASlashExpr#n_op= for (self: ASlashExpr, Token) */ +void nit__parser_prod___ASlashExpr___nit__parser_nodes__ABinopExpr__n_op_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val = var_node; /* _n_assign_op on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_node; /* _n_op on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_value= for (self: AVarReassignExpr, AExpr) */ -void nit__parser_prod___AVarReassignExpr___nit__parser_nodes__AReassignFormExpr__n_value_61d(val* self, val* p0) { +/* method parser_prod#ASlashExpr#n_expr2= for (self: ASlashExpr, AExpr) */ +void nit__parser_prod___ASlashExpr___nit__parser_nodes__ABinopExpr__n_expr2_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -9608,172 +9821,117 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#visit_all for (self: AVarReassignExpr, Visitor) */ -void nit__parser_prod___AVarReassignExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { +/* method parser_prod#ASlashExpr#visit_all for (self: ASlashExpr, Visitor) */ +void nit__parser_prod___ASlashExpr___nit__parser_nodes__ANode__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TId */; -val* var1 /* : AAssignOp */; +val* var /* : AExpr */; +val* var1 /* : Token */; val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_nit__parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4831); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4616); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var1 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val; /* _n_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4832); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4617); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +var2 = self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4833); -show_backtrace(1); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4618); +fatal_exit(1); } { nit___nit__Visitor___enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ACrangeExpr#init_acrangeexpr for (self: ACrangeExpr, nullable TObra, nullable AExpr, nullable AExpr, nullable TCbra, nullable AAnnotations) */ -void nit__parser_prod___ACrangeExpr___init_acrangeexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { -val* var_n_obra /* var n_obra: nullable TObra */; +/* method parser_prod#APercentExpr#init_apercentexpr for (self: APercentExpr, nullable AExpr, nullable TPercent, nullable AExpr) */ +void nit__parser_prod___APercentExpr___init_apercentexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_op /* var n_op: nullable TPercent */; val* var_n_expr2 /* var n_expr2: nullable AExpr */; -val* var_n_cbra /* var n_cbra: nullable TCbra */; -val* var_n_annotations /* var n_annotations: nullable AAnnotations */; -val* var /* : null */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var8 /* : Bool */; -short int var9 /* : Bool */; -var_n_obra = p0; -var_n_expr = p1; -var_n_expr2 = p2; -var_n_cbra = p3; -var_n_annotations = p4; -if (unlikely(var_n_obra == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4900); -show_backtrace(1); -} -self->attrs[COLOR_nit__parser_nodes__ACrangeExpr___n_obra].val = var_n_obra; /* _n_obra on */ -if (var_n_obra == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4901); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on */ -if (unlikely(var_n_obra == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); -} -var_n_obra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +{ +{ /* Inline kernel#Object#init (self) on */ RET_LABEL1:(void)0; } } +var_n_expr = p0; +var_n_op = p1; +var_n_expr2 = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4902); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4628); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ARangeExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_nit__parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ if (var_n_expr == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4903); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4629); +fatal_exit(1); } else { { /* Inline parser_nodes#ANode#parent= (var_n_expr,self) on */ if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } var_n_expr->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4904); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4630); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ARangeExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_op].val = var_n_op; /* _n_op on */ +if (var_n_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4905); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4631); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ -if (unlikely(var_n_expr2 == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_op,self) on */ +if (unlikely(var_n_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_op->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } -if (unlikely(var_n_cbra == NULL)) { +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4906); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4632); +fatal_exit(1); } -self->attrs[COLOR_nit__parser_nodes__ACrangeExpr___n_cbra].val = var_n_cbra; /* _n_cbra on */ -if (var_n_cbra == NULL) { +self->attrs[COLOR_nit__parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +if (var_n_expr2 == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4907); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_prod, 4633); +fatal_exit(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on */ -if (unlikely(var_n_cbra == NULL)) { +{ /* Inline parser_nodes#ANode#parent= (var_n_expr2,self) on */ +if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 36); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 46); +fatal_exit(1); } -var_n_cbra->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr2->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL4:(void)0; } } -self->attrs[COLOR_nit__parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ -var = NULL; -if (var_n_annotations == NULL) { -var5 = 0; /* is null */ -} else { -var5 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ -var_other = var; -{ -var8 = ((short int (*)(val* self, val* p0))(var_n_annotations->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; -} -var9 = !var8; -var6 = var9; -goto RET_LABEL7; -RET_LABEL7:(void)0; -} -var5 = var6; -} -if (var5){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ -var_n_annotations->attrs[COLOR_nit__parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL10:(void)0; -} -} -} else { -} RET_LABEL:; }