X-Git-Url: http://nitlanguage.org diff --git a/c_src/parser_prod.sep.4.c b/c_src/parser_prod.sep.4.c index 46cb5bf..8cf050b 100644 --- a/c_src/parser_prod.sep.4.c +++ b/c_src/parser_prod.sep.4.c @@ -1,6 +1,6 @@ #include "parser_prod.sep.0.h" -/* method parser_prod#ALtExpr#replace_child for (self: ALtExpr, ANode, nullable ANode) */ -void parser_prod__ALtExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ACallReassignExpr#replace_child for (self: ACallReassignExpr, ANode, nullable ANode) */ +void parser_prod__ACallReassignExpr__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 */; @@ -13,7 +13,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : TId */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -22,12 +22,39 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AExprs */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; +val* var30 /* : AAssignOp */; +short int var31 /* : Bool */; +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 /* : 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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4160); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4351); show_backtrace(1); } { @@ -63,26 +90,26 @@ var7 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4161); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4352); show_backtrace(1); } { -parser_prod__ALtExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALtExpr#n_expr= on */ +parser_prod__ACallReassignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_expr= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4164); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4355); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -96,9 +123,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa TId */ +cltype16 = type_parser_nodes__TId.color; +idtype17 = type_parser_nodes__TId.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -110,296 +137,244 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4165); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4356); show_backtrace(1); } { -parser_prod__ALtExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALtExpr#n_expr2= on */ +parser_prod__ACallReassignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_id= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#ALtExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ALtExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ALtExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ALtExpr#replace_child on */ -RET_LABEL:; +var19 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4359); +show_backtrace(1); } -/* method parser_prod#ALtExpr#n_expr= for (self: ALtExpr, AExpr) */ -void parser_prod__ALtExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ALtExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ALtExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ALtExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ALtExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#ALtExpr#n_expr2= for (self: ALtExpr, AExpr) */ -void parser_prod__ALtExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; } } -RET_LABEL:; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } -/* method parser_prod#ALtExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ALtExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__ALtExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#ALtExpr#n_expr2= on */ -RET_LABEL:; +var20 = var21; } -/* method parser_prod#ALtExpr#visit_all for (self: ALtExpr, Visitor) */ -void parser_prod__ALtExpr__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_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", "src/parser/parser_prod.nit", 4184); -show_backtrace(1); +if (var20){ +/* isa AExprs */ +cltype27 = type_parser_nodes__AExprs.color; +idtype28 = type_parser_nodes__AExprs.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; } -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4185); +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4360); show_backtrace(1); } { -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; +parser_prod__ACallReassignExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_args= on */ } -/* method parser_prod#ALtExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ALtExpr__visit_all(val* self, val* p0) { -parser_prod__ALtExpr__visit_all(self, p0); /* Direct call parser_prod#ALtExpr#visit_all on */ -RET_LABEL:; +goto RET_LABEL; +} else { } -/* method parser_prod#ALeExpr#init_aleexpr for (self: ALeExpr, nullable AExpr, nullable AExpr) */ -void 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", "src/parser/parser_prod.nit", 4194); +var30 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +if (unlikely(var30 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4363); show_backtrace(1); } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4195); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +{ +{ /* Inline kernel#Object#== (var30,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ +var36 = var30 == var_other; +var34 = var36; +goto RET_LABEL35; +RET_LABEL35:(void)0; } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; } +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; } -if (unlikely(var_n_expr2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4196); -show_backtrace(1); +var31 = var32; } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4197); -show_backtrace(1); +if (var31){ +/* isa AAssignOp */ +cltype38 = type_parser_nodes__AAssignOp.color; +idtype39 = type_parser_nodes__AAssignOp.id; +if(var_new_child == NULL) { +var37 = 0; } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +if(cltype38 >= var_new_child->type->table_size) { +var37 = 0; +} else { +var37 = var_new_child->type->type_table[cltype38] == idtype39; } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; } +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`", "AAssignOp", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4364); +show_backtrace(1); } -RET_LABEL:; +{ +parser_prod__ACallReassignExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_assign_op= on */ } -/* method parser_prod#ALeExpr#init_aleexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__ALeExpr__init_aleexpr(val* self, val* p0, val* p1) { -parser_prod__ALeExpr__init_aleexpr(self, p0, p1); /* Direct call parser_prod#ALeExpr#init_aleexpr on */ -RET_LABEL:; +goto RET_LABEL; +} else { } -/* method parser_prod#ALeExpr#replace_child for (self: ALeExpr, ANode, nullable ANode) */ -void parser_prod__ALeExpr__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 */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var8 /* : AExpr */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4202); +var41 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +if (unlikely(var41 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4367); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var41,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 (var41,var_other) on */ +var47 = var41 == var_other; +var45 = var47; +goto RET_LABEL46; +RET_LABEL46:(void)0; } } -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var43 = var45; +goto RET_LABEL44; +RET_LABEL44:(void)0; } -var1 = var2; +var42 = var43; } -if (var1){ +if (var42){ /* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +cltype49 = type_parser_nodes__AExpr.color; +idtype50 = type_parser_nodes__AExpr.id; if(var_new_child == NULL) { -var7 = 0; +var48 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var7 = 0; +if(cltype49 >= var_new_child->type->table_size) { +var48 = 0; } else { -var7 = var_new_child->type->type_table[cltype] == idtype; +var48 = var_new_child->type->type_table[cltype49] == idtype50; } } -if (unlikely(!var7)) { -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", "src/parser/parser_prod.nit", 4203); +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`", "AExpr", var_class_name51); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4368); show_backtrace(1); } { -parser_prod__ALeExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALeExpr#n_expr= on */ +parser_prod__ACallReassignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_value= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4206); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#ACallReassignExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ACallReassignExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ACallReassignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ACallReassignExpr#replace_child on */ +RET_LABEL:; +} +/* method parser_prod#ACallReassignExpr#n_expr= for (self: ACallReassignExpr, AExpr) */ +void parser_prod__ACallReassignExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +RET_LABEL:; } -var9 = var10; +/* method parser_prod#ACallReassignExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ACallReassignExpr__n_expr_61d(val* self, val* p0) { +parser_prod__ACallReassignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_expr= on */ +RET_LABEL:; } -if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var15 = 0; -} else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; -} else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; +/* method parser_prod#ACallReassignExpr#n_id= for (self: ACallReassignExpr, TId) */ +void parser_prod__ACallReassignExpr__n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val = var_node; /* _n_id on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4207); -show_backtrace(1); +RET_LABEL:; +} +/* method parser_prod#ACallReassignExpr#n_id= for (self: Object, TId) */ +void VIRTUAL_parser_prod__ACallReassignExpr__n_id_61d(val* self, val* p0) { +parser_prod__ACallReassignExpr__n_id_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_id= on */ +RET_LABEL:; } +/* method parser_prod#ACallReassignExpr#n_args= for (self: ACallReassignExpr, AExprs) */ +void parser_prod__ACallReassignExpr__n_args_61d(val* self, val* p0) { +val* var_node /* var node: AExprs */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val = var_node; /* _n_args on */ { -parser_prod__ALeExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALeExpr#n_expr2= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -goto RET_LABEL; -} else { } RET_LABEL:; } -/* method parser_prod#ALeExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ALeExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ALeExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ALeExpr#replace_child on */ +/* method parser_prod#ACallReassignExpr#n_args= for (self: Object, AExprs) */ +void VIRTUAL_parser_prod__ACallReassignExpr__n_args_61d(val* self, val* p0) { +parser_prod__ACallReassignExpr__n_args_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_args= on */ RET_LABEL:; } -/* method parser_prod#ALeExpr#n_expr= for (self: ALeExpr, AExpr) */ -void parser_prod__ALeExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ACallReassignExpr#n_assign_op= for (self: ACallReassignExpr, AAssignOp) */ +void parser_prod__ACallReassignExpr__n_assign_op_61d(val* self, val* p0) { +val* var_node /* var node: AAssignOp */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ALeExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ALeExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ALeExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ALeExpr#n_expr= on */ +/* method parser_prod#ACallReassignExpr#n_assign_op= for (self: Object, AAssignOp) */ +void VIRTUAL_parser_prod__ACallReassignExpr__n_assign_op_61d(val* self, val* p0) { +parser_prod__ACallReassignExpr__n_assign_op_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_assign_op= on */ RET_LABEL:; } -/* method parser_prod#ALeExpr#n_expr2= for (self: ALeExpr, AExpr) */ -void parser_prod__ALeExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#ACallReassignExpr#n_value= for (self: ACallReassignExpr, AExpr) */ +void parser_prod__ACallReassignExpr__n_value_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -408,102 +383,171 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ALeExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ALeExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__ALeExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#ALeExpr#n_expr2= on */ +/* method parser_prod#ACallReassignExpr#n_value= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ACallReassignExpr__n_value_61d(val* self, val* p0) { +parser_prod__ACallReassignExpr__n_value_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_value= on */ RET_LABEL:; } -/* method parser_prod#ALeExpr#visit_all for (self: ALeExpr, Visitor) */ -void parser_prod__ALeExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ACallReassignExpr#visit_all for (self: ACallReassignExpr, Visitor) */ +void parser_prod__ACallReassignExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : TId */; +val* var2 /* : AExprs */; +val* var3 /* : AAssignOp */; +val* var4 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4226); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4402); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4227); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4403); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4404); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_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", "parser/parser_prod.nit", 4405); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_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", "parser/parser_prod.nit", 4406); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#ALeExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ALeExpr__visit_all(val* self, val* p0) { -parser_prod__ALeExpr__visit_all(self, p0); /* Direct call parser_prod#ALeExpr#visit_all on */ +/* method parser_prod#ACallReassignExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ACallReassignExpr__visit_all(val* self, val* p0) { +parser_prod__ACallReassignExpr__visit_all(self, p0); /* Direct call parser_prod#ACallReassignExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#ALlExpr#init_allexpr for (self: ALlExpr, nullable AExpr, nullable AExpr) */ -void 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)) { +/* method parser_prod#ASuperExpr#init_asuperexpr for (self: ASuperExpr, nullable AQualified, nullable TKwsuper, nullable AExprs) */ +void 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 */; +short int var6 /* : Bool */; +var_n_qualified = p0; +var_n_kwsuper = p1; +var_n_args = p2; +self->attrs[COLOR_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; +{ +var5 = ((short int (*)(val*, val*))(var_n_qualified->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_qualified, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_qualified,self) on */ +var_n_qualified->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +} else { +} +if (unlikely(var_n_kwsuper == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4236); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4418); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val = var_n_kwsuper; /* _n_kwsuper on */ +if (var_n_kwsuper == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4237); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4419); show_backtrace(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_kwsuper,self) on */ +if (unlikely(var_n_kwsuper == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var_n_kwsuper->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4238); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4420); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_parser_nodes__ASuperExpr___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", "src/parser/parser_prod.nit", 4239); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4421); show_backtrace(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_args,self) on */ +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL9:(void)0; } } RET_LABEL:; } -/* method parser_prod#ALlExpr#init_allexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__ALlExpr__init_allexpr(val* self, val* p0, val* p1) { -parser_prod__ALlExpr__init_allexpr(self, p0, p1); /* Direct call parser_prod#ALlExpr#init_allexpr on */ +/* method parser_prod#ASuperExpr#init_asuperexpr for (self: Object, nullable AQualified, nullable TKwsuper, nullable AExprs) */ +void VIRTUAL_parser_prod__ASuperExpr__init_asuperexpr(val* self, val* p0, val* p1, val* p2) { +parser_prod__ASuperExpr__init_asuperexpr(self, p0, p1, p2); /* Direct call parser_prod#ASuperExpr#init_asuperexpr on */ RET_LABEL:; } -/* method parser_prod#ALlExpr#replace_child for (self: ALlExpr, ANode, nullable ANode) */ -void parser_prod__ALlExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ASuperExpr#replace_child for (self: ASuperExpr, ANode, nullable ANode) */ +void parser_prod__ASuperExpr__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 /* : nullable AQualified */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -513,7 +557,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : TKwsuper */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -522,19 +566,25 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AExprs */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4244); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_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_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -548,11 +598,11 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa nullable AQualified */ +cltype = type_nullable_parser_nodes__AQualified.color; +idtype = type_nullable_parser_nodes__AQualified.id; if(var_new_child == NULL) { -var7 = 0; +var7 = 1; } else { if(cltype >= var_new_child->type->table_size) { var7 = 0; @@ -562,27 +612,27 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4245); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AQualified", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4427); show_backtrace(1); } { -parser_prod__ALlExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ALlExpr#n_expr= on */ +parser_prod__ASuperExpr__n_qualified_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_qualified= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val; /* _n_kwsuper on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4248); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwsuper"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4430); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -596,9 +646,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa TKwsuper */ +cltype16 = type_parser_nodes__TKwsuper.color; +idtype17 = type_parser_nodes__TKwsuper.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -610,147 +660,271 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4249); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwsuper", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4431); +show_backtrace(1); +} +{ +parser_prod__ASuperExpr__n_kwsuper_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_kwsuper= on */ +} +goto RET_LABEL; +} else { +} +var19 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val; /* _n_args on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4434); +show_backtrace(1); +} +{ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; +} +} +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; +} +var20 = var21; +} +if (var20){ +/* isa AExprs */ +cltype27 = type_parser_nodes__AExprs.color; +idtype28 = type_parser_nodes__AExprs.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; +} +} +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4435); show_backtrace(1); } { -parser_prod__ALlExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ALlExpr#n_expr2= on */ +parser_prod__ASuperExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_args= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ALlExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ALlExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ALlExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ALlExpr#replace_child on */ +/* method parser_prod#ASuperExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ASuperExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ASuperExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ASuperExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#ALlExpr#n_expr= for (self: ALlExpr, AExpr) */ -void parser_prod__ALlExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ASuperExpr#n_qualified= for (self: ASuperExpr, nullable AQualified) */ +void 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 */; +short int var6 /* : Bool */; +var_node = p0; +self->attrs[COLOR_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; +{ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#ASuperExpr#n_qualified= for (self: Object, nullable AQualified) */ +void VIRTUAL_parser_prod__ASuperExpr__n_qualified_61d(val* self, val* p0) { +parser_prod__ASuperExpr__n_qualified_61d(self, p0); /* Direct call parser_prod#ASuperExpr#n_qualified= on */ +RET_LABEL:; +} +/* method parser_prod#ASuperExpr#n_kwsuper= for (self: ASuperExpr, TKwsuper) */ +void parser_prod__ASuperExpr__n_kwsuper_61d(val* self, val* p0) { +val* var_node /* var node: TKwsuper */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val = var_node; /* _n_kwsuper on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ALlExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ALlExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ALlExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ALlExpr#n_expr= on */ +/* method parser_prod#ASuperExpr#n_kwsuper= for (self: Object, TKwsuper) */ +void VIRTUAL_parser_prod__ASuperExpr__n_kwsuper_61d(val* self, val* p0) { +parser_prod__ASuperExpr__n_kwsuper_61d(self, p0); /* Direct call parser_prod#ASuperExpr#n_kwsuper= on */ RET_LABEL:; } -/* method parser_prod#ALlExpr#n_expr2= for (self: ALlExpr, AExpr) */ -void parser_prod__ALlExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ASuperExpr#n_args= for (self: ASuperExpr, AExprs) */ +void parser_prod__ASuperExpr__n_args_61d(val* self, val* p0) { +val* var_node /* var node: AExprs */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val = var_node; /* _n_args on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ALlExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ALlExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__ALlExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#ALlExpr#n_expr2= on */ +/* method parser_prod#ASuperExpr#n_args= for (self: Object, AExprs) */ +void VIRTUAL_parser_prod__ASuperExpr__n_args_61d(val* self, val* p0) { +parser_prod__ASuperExpr__n_args_61d(self, p0); /* Direct call parser_prod#ASuperExpr#n_args= on */ RET_LABEL:; } -/* method parser_prod#ALlExpr#visit_all for (self: ALlExpr, Visitor) */ -void parser_prod__ALlExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ASuperExpr#visit_all for (self: ASuperExpr, Visitor) */ +void parser_prod__ASuperExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var /* : nullable AQualified */; +val* var1 /* : TKwsuper */; +val* var2 /* : AExprs */; var_v = p0; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4268); -show_backtrace(1); -} +var = self->attrs[COLOR_parser_nodes__ASuperExpr___n_qualified].val; /* _n_qualified on */ { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val; /* _n_kwsuper on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4269); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwsuper"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4460); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val; /* _n_args on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4461); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#ALlExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ALlExpr__visit_all(val* self, val* p0) { -parser_prod__ALlExpr__visit_all(self, p0); /* Direct call parser_prod#ALlExpr#visit_all on */ +/* method parser_prod#ASuperExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ASuperExpr__visit_all(val* self, val* p0) { +parser_prod__ASuperExpr__visit_all(self, p0); /* Direct call parser_prod#ASuperExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AGtExpr#init_agtexpr for (self: AGtExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__AGtExpr__init_agtexpr(val* self, val* p0, val* p1) { +/* method parser_prod#AInitExpr#init_ainitexpr for (self: AInitExpr, nullable AExpr, nullable TKwinit, nullable AExprs) */ +void parser_prod__AInitExpr__init_ainitexpr(val* self, val* p0, val* p1, val* p2) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; +val* var_n_kwinit /* var n_kwinit: nullable TKwinit */; +val* var_n_args /* var n_args: nullable AExprs */; var_n_expr = p0; -var_n_expr2 = p1; +var_n_kwinit = p1; +var_n_args = p2; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4278); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4471); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4279); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4472); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_kwinit == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4280); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4473); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val = var_n_kwinit; /* _n_kwinit on */ +if (var_n_kwinit == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4281); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4474); show_backtrace(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_kwinit,self) on */ +if (unlikely(var_n_kwinit == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_kwinit->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } +if (unlikely(var_n_args == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4475); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AInitExpr___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", "parser/parser_prod.nit", 4476); +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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} RET_LABEL:; } -/* method parser_prod#AGtExpr#init_agtexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__AGtExpr__init_agtexpr(val* self, val* p0, val* p1) { -parser_prod__AGtExpr__init_agtexpr(self, p0, p1); /* Direct call parser_prod#AGtExpr#init_agtexpr on */ +/* method parser_prod#AInitExpr#init_ainitexpr for (self: Object, nullable AExpr, nullable TKwinit, nullable AExprs) */ +void VIRTUAL_parser_prod__AInitExpr__init_ainitexpr(val* self, val* p0, val* p1, val* p2) { +parser_prod__AInitExpr__init_ainitexpr(self, p0, p1, p2); /* Direct call parser_prod#AInitExpr#init_ainitexpr on */ RET_LABEL:; } -/* method parser_prod#AGtExpr#replace_child for (self: AGtExpr, ANode, nullable ANode) */ -void parser_prod__AGtExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AInitExpr#replace_child for (self: AInitExpr, ANode, nullable ANode) */ +void parser_prod__AInitExpr__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 */; @@ -763,7 +937,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : TKwinit */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -772,12 +946,21 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AExprs */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4286); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4481); show_backtrace(1); } { @@ -813,26 +996,26 @@ var7 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4287); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4482); show_backtrace(1); } { -parser_prod__AGtExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGtExpr#n_expr= on */ +parser_prod__AInitExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_expr= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val; /* _n_kwinit on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4290); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwinit"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4485); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -846,9 +1029,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa TKwinit */ +cltype16 = type_parser_nodes__TKwinit.color; +idtype17 = type_parser_nodes__TKwinit.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -860,147 +1043,223 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4291); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwinit", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4486); show_backtrace(1); } { -parser_prod__AGtExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGtExpr#n_expr2= on */ +parser_prod__AInitExpr__n_kwinit_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_kwinit= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AGtExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AGtExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AGtExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AGtExpr#replace_child on */ -RET_LABEL:; +var19 = self->attrs[COLOR_parser_nodes__AInitExpr___n_args].val; /* _n_args on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4489); +show_backtrace(1); } -/* method parser_prod#AGtExpr#n_expr= for (self: AGtExpr, AExpr) */ -void parser_prod__AGtExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AGtExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AGtExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AGtExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AGtExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#AGtExpr#n_expr2= for (self: AGtExpr, AExpr) */ -void parser_prod__AGtExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; } } -RET_LABEL:; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } -/* method parser_prod#AGtExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AGtExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__AGtExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#AGtExpr#n_expr2= on */ -RET_LABEL:; +var20 = var21; } -/* method parser_prod#AGtExpr#visit_all for (self: AGtExpr, Visitor) */ -void parser_prod__AGtExpr__visit_all(val* self, val* p0) { +if (var20){ +/* isa AExprs */ +cltype27 = type_parser_nodes__AExprs.color; +idtype28 = type_parser_nodes__AExprs.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; +} +} +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4490); +show_backtrace(1); +} +{ +parser_prod__AInitExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_args= on */ +} +goto RET_LABEL; +} else { +} +RET_LABEL:; +} +/* method parser_prod#AInitExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AInitExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AInitExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AInitExpr#replace_child on */ +RET_LABEL:; +} +/* method parser_prod#AInitExpr#n_expr= for (self: AInitExpr, AExpr) */ +void parser_prod__AInitExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AInitExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__AInitExpr__n_expr_61d(val* self, val* p0) { +parser_prod__AInitExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AInitExpr#n_expr= on */ +RET_LABEL:; +} +/* method parser_prod#AInitExpr#n_kwinit= for (self: AInitExpr, TKwinit) */ +void parser_prod__AInitExpr__n_kwinit_61d(val* self, val* p0) { +val* var_node /* var node: TKwinit */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val = var_node; /* _n_kwinit on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AInitExpr#n_kwinit= for (self: Object, TKwinit) */ +void VIRTUAL_parser_prod__AInitExpr__n_kwinit_61d(val* self, val* p0) { +parser_prod__AInitExpr__n_kwinit_61d(self, p0); /* Direct call parser_prod#AInitExpr#n_kwinit= on */ +RET_LABEL:; +} +/* method parser_prod#AInitExpr#n_args= for (self: AInitExpr, AExprs) */ +void parser_prod__AInitExpr__n_args_61d(val* self, val* p0) { +val* var_node /* var node: AExprs */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AInitExpr___n_args].val = var_node; /* _n_args on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AInitExpr#n_args= for (self: Object, AExprs) */ +void VIRTUAL_parser_prod__AInitExpr__n_args_61d(val* self, val* p0) { +parser_prod__AInitExpr__n_args_61d(self, p0); /* Direct call parser_prod#AInitExpr#n_args= on */ +RET_LABEL:; +} +/* method parser_prod#AInitExpr#visit_all for (self: AInitExpr, Visitor) */ +void parser_prod__AInitExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : TKwinit */; +val* var2 /* : AExprs */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4310); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4514); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val; /* _n_kwinit on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4311); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwinit"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4515); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_parser_nodes__AInitExpr___n_args].val; /* _n_args on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4516); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AGtExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AGtExpr__visit_all(val* self, val* p0) { -parser_prod__AGtExpr__visit_all(self, p0); /* Direct call parser_prod#AGtExpr#visit_all on */ +/* method parser_prod#AInitExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AInitExpr__visit_all(val* self, val* p0) { +parser_prod__AInitExpr__visit_all(self, p0); /* Direct call parser_prod#AInitExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AGeExpr#init_ageexpr for (self: AGeExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__AGeExpr__init_ageexpr(val* self, val* p0, val* p1) { +/* method parser_prod#ABraExpr#init_abraexpr for (self: ABraExpr, nullable AExpr, nullable AExprs) */ +void parser_prod__ABraExpr__init_abraexpr(val* self, val* p0, val* p1) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: nullable AExpr */; +val* var_n_args /* var n_args: nullable AExprs */; var_n_expr = p0; -var_n_expr2 = p1; +var_n_args = p1; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4320); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4525); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4321); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4526); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4322); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4527); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4323); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4528); show_backtrace(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_args,self) on */ +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } RET_LABEL:; } -/* method parser_prod#AGeExpr#init_ageexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__AGeExpr__init_ageexpr(val* self, val* p0, val* p1) { -parser_prod__AGeExpr__init_ageexpr(self, p0, p1); /* Direct call parser_prod#AGeExpr#init_ageexpr on */ +/* method parser_prod#ABraExpr#init_abraexpr for (self: Object, nullable AExpr, nullable AExprs) */ +void VIRTUAL_parser_prod__ABraExpr__init_abraexpr(val* self, val* p0, val* p1) { +parser_prod__ABraExpr__init_abraexpr(self, p0, p1); /* Direct call parser_prod#ABraExpr#init_abraexpr on */ RET_LABEL:; } -/* method parser_prod#AGeExpr#replace_child for (self: AGeExpr, ANode, nullable ANode) */ -void parser_prod__AGeExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ABraExpr#replace_child for (self: ABraExpr, ANode, nullable ANode) */ +void parser_prod__ABraExpr__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 */; @@ -1013,7 +1272,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : AExprs */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -1024,10 +1283,10 @@ int idtype17; const char* var_class_name18; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4328); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4533); show_backtrace(1); } { @@ -1063,26 +1322,26 @@ var7 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4329); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4534); show_backtrace(1); } { -parser_prod__AGeExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGeExpr#n_expr= on */ +parser_prod__ABraExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraExpr#n_expr= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4332); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4537); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -1096,9 +1355,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa AExprs */ +cltype16 = type_parser_nodes__AExprs.color; +idtype17 = type_parser_nodes__AExprs.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -1110,28 +1369,28 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4333); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4538); show_backtrace(1); } { -parser_prod__AGeExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGeExpr#n_expr2= on */ +parser_prod__ABraExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraExpr#n_args= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AGeExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AGeExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AGeExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AGeExpr#replace_child on */ +/* method parser_prod#ABraExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ABraExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ABraExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ABraExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AGeExpr#n_expr= for (self: AGeExpr, AExpr) */ -void parser_prod__AGeExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#ABraExpr#n_expr= for (self: ABraExpr, AExpr) */ +void parser_prod__ABraExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -1140,48 +1399,48 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AGeExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AGeExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AGeExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AGeExpr#n_expr= on */ +/* method parser_prod#ABraExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ABraExpr__n_expr_61d(val* self, val* p0) { +parser_prod__ABraExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ABraExpr#n_expr= on */ RET_LABEL:; } -/* method parser_prod#AGeExpr#n_expr2= for (self: AGeExpr, AExpr) */ -void parser_prod__AGeExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ABraExpr#n_args= for (self: ABraExpr, AExprs) */ +void parser_prod__ABraExpr__n_args_61d(val* self, val* p0) { +val* var_node /* var node: AExprs */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AGeExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AGeExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__AGeExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#AGeExpr#n_expr2= on */ +/* method parser_prod#ABraExpr#n_args= for (self: Object, AExprs) */ +void VIRTUAL_parser_prod__ABraExpr__n_args_61d(val* self, val* p0) { +parser_prod__ABraExpr__n_args_61d(self, p0); /* Direct call parser_prod#ABraExpr#n_args= on */ RET_LABEL:; } -/* method parser_prod#AGeExpr#visit_all for (self: AGeExpr, Visitor) */ -void parser_prod__AGeExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ABraExpr#visit_all for (self: ABraExpr, Visitor) */ +void parser_prod__ABraExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : AExprs */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4352); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4557); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4353); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4558); show_backtrace(1); } { @@ -1189,68 +1448,114 @@ parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Vis } RET_LABEL:; } -/* method parser_prod#AGeExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AGeExpr__visit_all(val* self, val* p0) { -parser_prod__AGeExpr__visit_all(self, p0); /* Direct call parser_prod#AGeExpr#visit_all on */ +/* method parser_prod#ABraExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ABraExpr__visit_all(val* self, val* p0) { +parser_prod__ABraExpr__visit_all(self, p0); /* Direct call parser_prod#ABraExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AGgExpr#init_aggexpr for (self: AGgExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__AGgExpr__init_aggexpr(val* self, val* p0, val* p1) { +/* method parser_prod#ABraAssignExpr#init_abraassignexpr for (self: ABraAssignExpr, nullable AExpr, nullable AExprs, nullable TAssign, nullable AExpr) */ +void parser_prod__ABraAssignExpr__init_abraassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_expr2 /* var n_expr2: 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 */; var_n_expr = p0; -var_n_expr2 = p1; +var_n_args = p1; +var_n_assign = p2; +var_n_value = p3; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4362); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4569); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4363); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4570); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4364); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4571); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4365); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4572); show_backtrace(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_args,self) on */ +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } +if (unlikely(var_n_assign == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4573); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ +if (var_n_assign == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4574); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ +if (unlikely(var_n_assign == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_assign->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_value == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4575); +show_backtrace(1); +} +self->attrs[COLOR_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", "parser/parser_prod.nit", 4576); +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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} RET_LABEL:; } -/* method parser_prod#AGgExpr#init_aggexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__AGgExpr__init_aggexpr(val* self, val* p0, val* p1) { -parser_prod__AGgExpr__init_aggexpr(self, p0, p1); /* Direct call parser_prod#AGgExpr#init_aggexpr on */ +/* method parser_prod#ABraAssignExpr#init_abraassignexpr for (self: Object, nullable AExpr, nullable AExprs, nullable TAssign, nullable AExpr) */ +void VIRTUAL_parser_prod__ABraAssignExpr__init_abraassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { +parser_prod__ABraAssignExpr__init_abraassignexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#ABraAssignExpr#init_abraassignexpr on */ RET_LABEL:; } -/* method parser_prod#AGgExpr#replace_child for (self: AGgExpr, ANode, nullable ANode) */ -void parser_prod__AGgExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ABraAssignExpr#replace_child for (self: ABraAssignExpr, ANode, nullable ANode) */ +void parser_prod__ABraAssignExpr__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 */; @@ -1263,7 +1568,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : AExprs */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -1272,21 +1577,39 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4370); -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 */ -var6 = var == var_other; -var4 = var6; +val* var19 /* : TAssign */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; +val* var30 /* : AExpr */; +short int var31 /* : Bool */; +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; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_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", "parser/parser_prod.nit", 4581); +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 */ +var6 = var == var_other; +var4 = var6; goto RET_LABEL5; RET_LABEL5:(void)0; } @@ -1313,26 +1636,26 @@ var7 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4371); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4582); show_backtrace(1); } { -parser_prod__AGgExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AGgExpr#n_expr= on */ +parser_prod__ABraAssignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_expr= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4374); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4585); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -1346,9 +1669,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa AExprs */ +cltype16 = type_parser_nodes__AExprs.color; +idtype17 = type_parser_nodes__AExprs.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -1360,28 +1683,124 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4375); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4586); +show_backtrace(1); +} +{ +parser_prod__ABraAssignExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_args= on */ +} +goto RET_LABEL; +} else { +} +var19 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4589); +show_backtrace(1); +} +{ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; +} +} +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; +} +var20 = var21; +} +if (var20){ +/* isa TAssign */ +cltype27 = type_parser_nodes__TAssign.color; +idtype28 = type_parser_nodes__TAssign.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; +} +} +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4590); +show_backtrace(1); +} +{ +parser_prod__ABraAssignExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_assign= on */ +} +goto RET_LABEL; +} else { +} +var30 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ +if (unlikely(var30 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4593); +show_backtrace(1); +} +{ +{ /* Inline kernel#Object#== (var30,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ +var36 = var30 == var_other; +var34 = var36; +goto RET_LABEL35; +RET_LABEL35:(void)0; +} +} +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; +} +var31 = var32; +} +if (var31){ +/* isa AExpr */ +cltype38 = type_parser_nodes__AExpr.color; +idtype39 = type_parser_nodes__AExpr.id; +if(var_new_child == NULL) { +var37 = 0; +} else { +if(cltype38 >= var_new_child->type->table_size) { +var37 = 0; +} else { +var37 = var_new_child->type->type_table[cltype38] == idtype39; +} +} +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`", "AExpr", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4594); show_backtrace(1); } { -parser_prod__AGgExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AGgExpr#n_expr2= on */ +parser_prod__ABraAssignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_value= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AGgExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AGgExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AGgExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AGgExpr#replace_child on */ +/* method parser_prod#ABraAssignExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ABraAssignExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ABraAssignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ABraAssignExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AGgExpr#n_expr= for (self: AGgExpr, AExpr) */ -void parser_prod__AGgExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#ABraAssignExpr#n_expr= for (self: ABraAssignExpr, AExpr) */ +void parser_prod__ABraAssignExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -1390,16 +1809,52 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AGgExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AGgExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AGgExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AGgExpr#n_expr= on */ +/* method parser_prod#ABraAssignExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ABraAssignExpr__n_expr_61d(val* self, val* p0) { +parser_prod__ABraAssignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_expr= on */ +RET_LABEL:; +} +/* method parser_prod#ABraAssignExpr#n_args= for (self: ABraAssignExpr, AExprs) */ +void parser_prod__ABraAssignExpr__n_args_61d(val* self, val* p0) { +val* var_node /* var node: AExprs */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ABraAssignExpr#n_args= for (self: Object, AExprs) */ +void VIRTUAL_parser_prod__ABraAssignExpr__n_args_61d(val* self, val* p0) { +parser_prod__ABraAssignExpr__n_args_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_args= on */ +RET_LABEL:; +} +/* method parser_prod#ABraAssignExpr#n_assign= for (self: ABraAssignExpr, TAssign) */ +void parser_prod__ABraAssignExpr__n_assign_61d(val* self, val* p0) { +val* var_node /* var node: TAssign */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ABraAssignExpr#n_assign= for (self: Object, TAssign) */ +void VIRTUAL_parser_prod__ABraAssignExpr__n_assign_61d(val* self, val* p0) { +parser_prod__ABraAssignExpr__n_assign_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_assign= on */ RET_LABEL:; } -/* method parser_prod#AGgExpr#n_expr2= for (self: AGgExpr, AExpr) */ -void parser_prod__AGgExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#ABraAssignExpr#n_value= for (self: ABraAssignExpr, AExpr) */ +void parser_prod__ABraAssignExpr__n_value_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -1408,99 +1863,165 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AGgExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AGgExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__AGgExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#AGgExpr#n_expr2= on */ +/* method parser_prod#ABraAssignExpr#n_value= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ABraAssignExpr__n_value_61d(val* self, val* p0) { +parser_prod__ABraAssignExpr__n_value_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_value= on */ RET_LABEL:; } -/* method parser_prod#AGgExpr#visit_all for (self: AGgExpr, Visitor) */ -void parser_prod__AGgExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ABraAssignExpr#visit_all for (self: ABraAssignExpr, Visitor) */ +void parser_prod__ABraAssignExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var1 /* : AExprs */; +val* var2 /* : TAssign */; +val* var3 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4394); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4623); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4395); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4624); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4625); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_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", "parser/parser_prod.nit", 4626); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AGgExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AGgExpr__visit_all(val* self, val* p0) { -parser_prod__AGgExpr__visit_all(self, p0); /* Direct call parser_prod#AGgExpr#visit_all on */ +/* method parser_prod#ABraAssignExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ABraAssignExpr__visit_all(val* self, val* p0) { +parser_prod__ABraAssignExpr__visit_all(self, p0); /* Direct call parser_prod#ABraAssignExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AIsaExpr#init_aisaexpr for (self: AIsaExpr, nullable AExpr, nullable AType) */ -void parser_prod__AIsaExpr__init_aisaexpr(val* self, val* p0, val* p1) { +/* method parser_prod#ABraReassignExpr#init_abrareassignexpr for (self: ABraReassignExpr, nullable AExpr, nullable AExprs, nullable AAssignOp, nullable AExpr) */ +void 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_type /* var n_type: nullable AType */; +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_type = p1; +var_n_args = p1; +var_n_assign_op = p2; +var_n_value = p3; if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4404); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4637); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AIsaExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4405); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4638); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_type == NULL)) { +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4406); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4639); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AIsaExpr___n_type].val = var_n_type; /* _n_type on */ -if (var_n_type == NULL) { +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4407); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4640); show_backtrace(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_args,self) on */ +if (unlikely(var_n_args == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_type->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -RET_LABEL:; +if (unlikely(var_n_assign_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4641); +show_backtrace(1); } -/* method parser_prod#AIsaExpr#init_aisaexpr for (self: Object, nullable AExpr, nullable AType) */ -void VIRTUAL_parser_prod__AIsaExpr__init_aisaexpr(val* self, val* p0, val* p1) { -parser_prod__AIsaExpr__init_aisaexpr(self, p0, p1); /* Direct call parser_prod#AIsaExpr#init_aisaexpr on */ -RET_LABEL:; +self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ +if (var_n_assign_op == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4642); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ +if (unlikely(var_n_assign_op == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); } -/* method parser_prod#AIsaExpr#replace_child for (self: AIsaExpr, ANode, nullable ANode) */ -void parser_prod__AIsaExpr__replace_child(val* self, val* p0, val* p1) { +var_n_assign_op->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_value == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4643); +show_backtrace(1); +} +self->attrs[COLOR_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", "parser/parser_prod.nit", 4644); +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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ABraReassignExpr#init_abrareassignexpr for (self: Object, nullable AExpr, nullable AExprs, nullable AAssignOp, nullable AExpr) */ +void VIRTUAL_parser_prod__ABraReassignExpr__init_abrareassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { +parser_prod__ABraReassignExpr__init_abrareassignexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#ABraReassignExpr#init_abrareassignexpr on */ +RET_LABEL:; +} +/* method parser_prod#ABraReassignExpr#replace_child for (self: ABraReassignExpr, ANode, nullable ANode) */ +void parser_prod__ABraReassignExpr__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 */; @@ -1513,7 +2034,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AType */; +val* var8 /* : AExprs */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -1522,12 +2043,30 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AAssignOp */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; +val* var30 /* : AExpr */; +short int var31 /* : Bool */; +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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AIsaExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4412); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4649); show_backtrace(1); } { @@ -1563,26 +2102,26 @@ var7 = var_new_child->type->type_table[cltype] == idtype; if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4413); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4650); show_backtrace(1); } { -parser_prod__AIsaExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AIsaExpr#n_expr= on */ +parser_prod__ABraReassignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_expr= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__AIsaExpr___n_type].val; /* _n_type on */ +var8 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4416); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4653); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -1596,9 +2135,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AType */ -cltype16 = type_parser_nodes__AType.color; -idtype17 = type_parser_nodes__AType.id; +/* isa AExprs */ +cltype16 = type_parser_nodes__AExprs.color; +idtype17 = type_parser_nodes__AExprs.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -1610,28 +2149,124 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AType", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4417); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4654); +show_backtrace(1); +} +{ +parser_prod__ABraReassignExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_args= on */ +} +goto RET_LABEL; +} else { +} +var19 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4657); +show_backtrace(1); +} +{ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; +} +} +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; +} +var20 = var21; +} +if (var20){ +/* isa AAssignOp */ +cltype27 = type_parser_nodes__AAssignOp.color; +idtype28 = type_parser_nodes__AAssignOp.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; +} +} +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4658); +show_backtrace(1); +} +{ +parser_prod__ABraReassignExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_assign_op= on */ +} +goto RET_LABEL; +} else { +} +var30 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +if (unlikely(var30 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4661); +show_backtrace(1); +} +{ +{ /* Inline kernel#Object#== (var30,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ +var36 = var30 == var_other; +var34 = var36; +goto RET_LABEL35; +RET_LABEL35:(void)0; +} +} +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; +} +var31 = var32; +} +if (var31){ +/* isa AExpr */ +cltype38 = type_parser_nodes__AExpr.color; +idtype39 = type_parser_nodes__AExpr.id; +if(var_new_child == NULL) { +var37 = 0; +} else { +if(cltype38 >= var_new_child->type->table_size) { +var37 = 0; +} else { +var37 = var_new_child->type->type_table[cltype38] == idtype39; +} +} +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`", "AExpr", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4662); show_backtrace(1); } { -parser_prod__AIsaExpr__n_type_61d(self, var_new_child); /* Direct call parser_prod#AIsaExpr#n_type= on */ +parser_prod__ABraReassignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_value= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AIsaExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AIsaExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AIsaExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AIsaExpr#replace_child on */ +/* method parser_prod#ABraReassignExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ABraReassignExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ABraReassignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ABraReassignExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AIsaExpr#n_expr= for (self: AIsaExpr, AExpr) */ -void parser_prod__AIsaExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#ABraReassignExpr#n_expr= for (self: ABraReassignExpr, AExpr) */ +void parser_prod__ABraReassignExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__AIsaExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -1640,120 +2275,153 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AIsaExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AIsaExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AIsaExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AIsaExpr#n_expr= on */ +/* method parser_prod#ABraReassignExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ABraReassignExpr__n_expr_61d(val* self, val* p0) { +parser_prod__ABraReassignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_expr= on */ RET_LABEL:; } -/* method parser_prod#AIsaExpr#n_type= for (self: AIsaExpr, AType) */ -void parser_prod__AIsaExpr__n_type_61d(val* self, val* p0) { -val* var_node /* var node: AType */; +/* method parser_prod#ABraReassignExpr#n_args= for (self: ABraReassignExpr, AExprs) */ +void parser_prod__ABraReassignExpr__n_args_61d(val* self, val* p0) { +val* var_node /* var node: AExprs */; var_node = p0; -self->attrs[COLOR_parser_nodes__AIsaExpr___n_type].val = var_node; /* _n_type on */ +self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ABraReassignExpr#n_args= for (self: Object, AExprs) */ +void VIRTUAL_parser_prod__ABraReassignExpr__n_args_61d(val* self, val* p0) { +parser_prod__ABraReassignExpr__n_args_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_args= on */ +RET_LABEL:; +} +/* method parser_prod#ABraReassignExpr#n_assign_op= for (self: ABraReassignExpr, AAssignOp) */ +void parser_prod__ABraReassignExpr__n_assign_op_61d(val* self, val* p0) { +val* var_node /* var node: AAssignOp */; +var_node = p0; +self->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ABraReassignExpr#n_assign_op= for (self: Object, AAssignOp) */ +void VIRTUAL_parser_prod__ABraReassignExpr__n_assign_op_61d(val* self, val* p0) { +parser_prod__ABraReassignExpr__n_assign_op_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_assign_op= on */ +RET_LABEL:; +} +/* method parser_prod#ABraReassignExpr#n_value= for (self: ABraReassignExpr, AExpr) */ +void parser_prod__ABraReassignExpr__n_value_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AIsaExpr#n_type= for (self: Object, AType) */ -void VIRTUAL_parser_prod__AIsaExpr__n_type_61d(val* self, val* p0) { -parser_prod__AIsaExpr__n_type_61d(self, p0); /* Direct call parser_prod#AIsaExpr#n_type= on */ +/* method parser_prod#ABraReassignExpr#n_value= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ABraReassignExpr__n_value_61d(val* self, val* p0) { +parser_prod__ABraReassignExpr__n_value_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_value= on */ RET_LABEL:; } -/* method parser_prod#AIsaExpr#visit_all for (self: AIsaExpr, Visitor) */ -void parser_prod__AIsaExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ABraReassignExpr#visit_all for (self: ABraReassignExpr, Visitor) */ +void parser_prod__ABraReassignExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; val* var /* : AExpr */; -val* var1 /* : AType */; +val* var1 /* : AExprs */; +val* var2 /* : AAssignOp */; +val* var3 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__AIsaExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4436); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4691); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__AIsaExpr___n_type].val; /* _n_type on */ +var1 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4437); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4692); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4693); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_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", "parser/parser_prod.nit", 4694); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AIsaExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AIsaExpr__visit_all(val* self, val* p0) { -parser_prod__AIsaExpr__visit_all(self, p0); /* Direct call parser_prod#AIsaExpr#visit_all on */ +/* method parser_prod#ABraReassignExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ABraReassignExpr__visit_all(val* self, val* p0) { +parser_prod__ABraReassignExpr__visit_all(self, p0); /* Direct call parser_prod#ABraReassignExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#APlusExpr#init_aplusexpr for (self: APlusExpr, nullable AExpr, nullable AExpr) */ -void 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)) { +/* method parser_prod#AVarExpr#init_avarexpr for (self: AVarExpr, nullable TId) */ +void 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", "src/parser/parser_prod.nit", 4446); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4702); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4447); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4703); show_backtrace(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_id,self) on */ +if (unlikely(var_n_id == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_id->attrs[COLOR_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", "src/parser/parser_prod.nit", 4448); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4449); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} RET_LABEL:; } -/* method parser_prod#APlusExpr#init_aplusexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__APlusExpr__init_aplusexpr(val* self, val* p0, val* p1) { -parser_prod__APlusExpr__init_aplusexpr(self, p0, p1); /* Direct call parser_prod#APlusExpr#init_aplusexpr on */ +/* method parser_prod#AVarExpr#init_avarexpr for (self: Object, nullable TId) */ +void VIRTUAL_parser_prod__AVarExpr__init_avarexpr(val* self, val* p0) { +parser_prod__AVarExpr__init_avarexpr(self, p0); /* Direct call parser_prod#AVarExpr#init_avarexpr on */ RET_LABEL:; } -/* method parser_prod#APlusExpr#replace_child for (self: APlusExpr, ANode, nullable ANode) */ -void parser_prod__APlusExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AVarExpr#replace_child for (self: AVarExpr, ANode, nullable ANode) */ +void parser_prod__AVarExpr__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 /* : TId */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -1763,28 +2431,19 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4454); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4708); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -1798,9 +2457,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TId */ +cltype = type_parser_nodes__TId.color; +idtype = type_parser_nodes__TId.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -1812,198 +2471,145 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4455); -show_backtrace(1); -} -{ -parser_prod__APlusExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#APlusExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4458); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; -} -} -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -var9 = var10; -} -if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var15 = 0; -} else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; -} else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; -} -} -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4459); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4709); show_backtrace(1); } { -parser_prod__APlusExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#APlusExpr#n_expr2= on */ +parser_prod__AVarExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarExpr#n_id= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#APlusExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__APlusExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__APlusExpr__replace_child(self, p0, p1); /* Direct call parser_prod#APlusExpr#replace_child on */ -RET_LABEL:; -} -/* method parser_prod#APlusExpr#n_expr= for (self: APlusExpr, AExpr) */ -void parser_prod__APlusExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#APlusExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__APlusExpr__n_expr_61d(val* self, val* p0) { -parser_prod__APlusExpr__n_expr_61d(self, p0); /* Direct call parser_prod#APlusExpr#n_expr= on */ +/* method parser_prod#AVarExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AVarExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AVarExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AVarExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#APlusExpr#n_expr2= for (self: APlusExpr, AExpr) */ -void parser_prod__APlusExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AVarExpr#n_id= for (self: AVarExpr, TId) */ +void parser_prod__AVarExpr__n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#APlusExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__APlusExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__APlusExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#APlusExpr#n_expr2= on */ +/* method parser_prod#AVarExpr#n_id= for (self: Object, TId) */ +void VIRTUAL_parser_prod__AVarExpr__n_id_61d(val* self, val* p0) { +parser_prod__AVarExpr__n_id_61d(self, p0); /* Direct call parser_prod#AVarExpr#n_id= on */ RET_LABEL:; } -/* method parser_prod#APlusExpr#visit_all for (self: APlusExpr, Visitor) */ -void parser_prod__APlusExpr__visit_all(val* self, val* p0) { +/* method parser_prod#AVarExpr#visit_all for (self: AVarExpr, Visitor) */ +void parser_prod__AVarExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var /* : TId */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4478); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4723); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4479); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#APlusExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__APlusExpr__visit_all(val* self, val* p0) { -parser_prod__APlusExpr__visit_all(self, p0); /* Direct call parser_prod#APlusExpr#visit_all on */ +/* method parser_prod#AVarExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AVarExpr__visit_all(val* self, val* p0) { +parser_prod__AVarExpr__visit_all(self, p0); /* Direct call parser_prod#AVarExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AMinusExpr#init_aminusexpr for (self: AMinusExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__AMinusExpr__init_aminusexpr(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)) { +/* method parser_prod#AVarAssignExpr#init_avarassignexpr for (self: AVarAssignExpr, nullable TId, nullable TAssign, nullable AExpr) */ +void 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)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4488); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4733); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4489); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4734); show_backtrace(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_id,self) on */ +if (unlikely(var_n_id == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_assign == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4490); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4735); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ +if (var_n_assign == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4491); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4736); show_backtrace(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_assign,self) on */ +if (unlikely(var_n_assign == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_assign->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } +if (unlikely(var_n_value == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4737); +show_backtrace(1); +} +self->attrs[COLOR_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", "parser/parser_prod.nit", 4738); +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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} RET_LABEL:; } -/* method parser_prod#AMinusExpr#init_aminusexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__AMinusExpr__init_aminusexpr(val* self, val* p0, val* p1) { -parser_prod__AMinusExpr__init_aminusexpr(self, p0, p1); /* Direct call parser_prod#AMinusExpr#init_aminusexpr on */ +/* method parser_prod#AVarAssignExpr#init_avarassignexpr for (self: Object, nullable TId, nullable TAssign, nullable AExpr) */ +void VIRTUAL_parser_prod__AVarAssignExpr__init_avarassignexpr(val* self, val* p0, val* p1, val* p2) { +parser_prod__AVarAssignExpr__init_avarassignexpr(self, p0, p1, p2); /* Direct call parser_prod#AVarAssignExpr#init_avarassignexpr on */ RET_LABEL:; } -/* method parser_prod#AMinusExpr#replace_child for (self: AMinusExpr, ANode, nullable ANode) */ -void parser_prod__AMinusExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AVarAssignExpr#replace_child for (self: AVarAssignExpr, ANode, nullable ANode) */ +void parser_prod__AVarAssignExpr__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 /* : TId */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -2013,7 +2619,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : TAssign */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -2022,19 +2628,28 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AExpr */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4496); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4743); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -2048,9 +2663,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TId */ +cltype = type_parser_nodes__TId.color; +idtype = type_parser_nodes__TId.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -2062,27 +2677,27 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4497); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4744); show_backtrace(1); } { -parser_prod__AMinusExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AMinusExpr#n_expr= on */ +parser_prod__AVarAssignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_id= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4500); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4747); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -2096,9 +2711,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa TAssign */ +cltype16 = type_parser_nodes__TAssign.color; +idtype17 = type_parser_nodes__TAssign.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -2110,46 +2725,112 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4501); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4748); show_backtrace(1); } { -parser_prod__AMinusExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AMinusExpr#n_expr2= on */ +parser_prod__AVarAssignExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_assign= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AMinusExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AMinusExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AMinusExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AMinusExpr#replace_child on */ -RET_LABEL:; +var19 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4751); +show_backtrace(1); } -/* method parser_prod#AMinusExpr#n_expr= for (self: AMinusExpr, AExpr) */ -void parser_prod__AMinusExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; +} +} +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; +} +var20 = var21; +} +if (var20){ +/* isa AExpr */ +cltype27 = type_parser_nodes__AExpr.color; +idtype28 = type_parser_nodes__AExpr.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; +} +} +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4752); +show_backtrace(1); +} +{ +parser_prod__AVarAssignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_value= on */ +} +goto RET_LABEL; +} else { +} +RET_LABEL:; +} +/* method parser_prod#AVarAssignExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AVarAssignExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AVarAssignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AVarAssignExpr#replace_child on */ +RET_LABEL:; +} +/* method parser_prod#AVarAssignExpr#n_id= for (self: AVarAssignExpr, TId) */ +void parser_prod__AVarAssignExpr__n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AVarAssignExpr#n_id= for (self: Object, TId) */ +void VIRTUAL_parser_prod__AVarAssignExpr__n_id_61d(val* self, val* p0) { +parser_prod__AVarAssignExpr__n_id_61d(self, p0); /* Direct call parser_prod#AVarAssignExpr#n_id= on */ +RET_LABEL:; } -/* method parser_prod#AMinusExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AMinusExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AMinusExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AMinusExpr#n_expr= on */ +/* method parser_prod#AVarAssignExpr#n_assign= for (self: AVarAssignExpr, TAssign) */ +void parser_prod__AVarAssignExpr__n_assign_61d(val* self, val* p0) { +val* var_node /* var node: TAssign */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AVarAssignExpr#n_assign= for (self: Object, TAssign) */ +void VIRTUAL_parser_prod__AVarAssignExpr__n_assign_61d(val* self, val* p0) { +parser_prod__AVarAssignExpr__n_assign_61d(self, p0); /* Direct call parser_prod#AVarAssignExpr#n_assign= on */ RET_LABEL:; } -/* method parser_prod#AMinusExpr#n_expr2= for (self: AMinusExpr, AExpr) */ -void parser_prod__AMinusExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#AVarAssignExpr#n_value= for (self: AVarAssignExpr, AExpr) */ +void parser_prod__AVarAssignExpr__n_value_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -2158,102 +2839,135 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AMinusExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AMinusExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__AMinusExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#AMinusExpr#n_expr2= on */ +/* method parser_prod#AVarAssignExpr#n_value= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__AVarAssignExpr__n_value_61d(val* self, val* p0) { +parser_prod__AVarAssignExpr__n_value_61d(self, p0); /* Direct call parser_prod#AVarAssignExpr#n_value= on */ RET_LABEL:; } -/* method parser_prod#AMinusExpr#visit_all for (self: AMinusExpr, Visitor) */ -void parser_prod__AMinusExpr__visit_all(val* self, val* p0) { +/* method parser_prod#AVarAssignExpr#visit_all for (self: AVarAssignExpr, Visitor) */ +void parser_prod__AVarAssignExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var /* : TId */; +val* var1 /* : TAssign */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4520); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4776); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4521); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4777); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4778); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AMinusExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AMinusExpr__visit_all(val* self, val* p0) { -parser_prod__AMinusExpr__visit_all(self, p0); /* Direct call parser_prod#AMinusExpr#visit_all on */ +/* method parser_prod#AVarAssignExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AVarAssignExpr__visit_all(val* self, val* p0) { +parser_prod__AVarAssignExpr__visit_all(self, p0); /* Direct call parser_prod#AVarAssignExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AStarshipExpr#init_astarshipexpr for (self: AStarshipExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__AStarshipExpr__init_astarshipexpr(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)) { +/* method parser_prod#AVarReassignExpr#init_avarreassignexpr for (self: AVarReassignExpr, nullable TId, nullable AAssignOp, nullable AExpr) */ +void 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)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4530); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4788); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4531); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4789); show_backtrace(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_id,self) on */ +if (unlikely(var_n_id == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr2 == NULL)) { +if (unlikely(var_n_assign_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4532); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4790); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ -if (var_n_expr2 == NULL) { +self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ +if (var_n_assign_op == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4533); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4791); show_backtrace(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_assign_op,self) on */ +if (unlikely(var_n_assign_op == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_assign_op->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } +if (unlikely(var_n_value == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4792); +show_backtrace(1); +} +self->attrs[COLOR_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", "parser/parser_prod.nit", 4793); +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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL3:(void)0; +} +} RET_LABEL:; } -/* method parser_prod#AStarshipExpr#init_astarshipexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__AStarshipExpr__init_astarshipexpr(val* self, val* p0, val* p1) { -parser_prod__AStarshipExpr__init_astarshipexpr(self, p0, p1); /* Direct call parser_prod#AStarshipExpr#init_astarshipexpr on */ +/* method parser_prod#AVarReassignExpr#init_avarreassignexpr for (self: Object, nullable TId, nullable AAssignOp, nullable AExpr) */ +void VIRTUAL_parser_prod__AVarReassignExpr__init_avarreassignexpr(val* self, val* p0, val* p1, val* p2) { +parser_prod__AVarReassignExpr__init_avarreassignexpr(self, p0, p1, p2); /* Direct call parser_prod#AVarReassignExpr#init_avarreassignexpr on */ RET_LABEL:; } -/* method parser_prod#AStarshipExpr#replace_child for (self: AStarshipExpr, ANode, nullable ANode) */ -void parser_prod__AStarshipExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AVarReassignExpr#replace_child for (self: AVarReassignExpr, ANode, nullable ANode) */ +void parser_prod__AVarReassignExpr__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 /* : TId */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -2263,7 +2977,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : AAssignOp */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -2272,19 +2986,28 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AExpr */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4538); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4798); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -2298,9 +3021,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TId */ +cltype = type_parser_nodes__TId.color; +idtype = type_parser_nodes__TId.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -2312,27 +3035,27 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4539); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4799); show_backtrace(1); } { -parser_prod__AStarshipExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarshipExpr#n_expr= on */ +parser_prod__AVarReassignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_id= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4542); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4802); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -2346,9 +3069,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa AAssignOp */ +cltype16 = type_parser_nodes__AAssignOp.color; +idtype17 = type_parser_nodes__AAssignOp.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -2360,150 +3083,311 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4543); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4803); show_backtrace(1); } { -parser_prod__AStarshipExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarshipExpr#n_expr2= on */ +parser_prod__AVarReassignExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_assign_op= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AStarshipExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AStarshipExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AStarshipExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AStarshipExpr#replace_child on */ -RET_LABEL:; +var19 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4806); +show_backtrace(1); } -/* method parser_prod#AStarshipExpr#n_expr= for (self: AStarshipExpr, AExpr) */ -void parser_prod__AStarshipExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; } -RET_LABEL:; } -/* method parser_prod#AStarshipExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AStarshipExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AStarshipExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AStarshipExpr#n_expr= on */ -RET_LABEL:; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } -/* method parser_prod#AStarshipExpr#n_expr2= for (self: AStarshipExpr, AExpr) */ -void parser_prod__AStarshipExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var20 = var21; } +if (var20){ +/* isa AExpr */ +cltype27 = type_parser_nodes__AExpr.color; +idtype28 = type_parser_nodes__AExpr.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; } -RET_LABEL:; } -/* method parser_prod#AStarshipExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AStarshipExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__AStarshipExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#AStarshipExpr#n_expr2= on */ +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4807); +show_backtrace(1); +} +{ +parser_prod__AVarReassignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_value= on */ +} +goto RET_LABEL; +} else { +} +RET_LABEL:; +} +/* method parser_prod#AVarReassignExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AVarReassignExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AVarReassignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AVarReassignExpr#replace_child on */ +RET_LABEL:; +} +/* method parser_prod#AVarReassignExpr#n_id= for (self: AVarReassignExpr, TId) */ +void parser_prod__AVarReassignExpr__n_id_61d(val* self, val* p0) { +val* var_node /* var node: TId */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AVarReassignExpr#n_id= for (self: Object, TId) */ +void VIRTUAL_parser_prod__AVarReassignExpr__n_id_61d(val* self, val* p0) { +parser_prod__AVarReassignExpr__n_id_61d(self, p0); /* Direct call parser_prod#AVarReassignExpr#n_id= on */ +RET_LABEL:; +} +/* method parser_prod#AVarReassignExpr#n_assign_op= for (self: AVarReassignExpr, AAssignOp) */ +void parser_prod__AVarReassignExpr__n_assign_op_61d(val* self, val* p0) { +val* var_node /* var node: AAssignOp */; +var_node = p0; +self->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AVarReassignExpr#n_assign_op= for (self: Object, AAssignOp) */ +void VIRTUAL_parser_prod__AVarReassignExpr__n_assign_op_61d(val* self, val* p0) { +parser_prod__AVarReassignExpr__n_assign_op_61d(self, p0); /* Direct call parser_prod#AVarReassignExpr#n_assign_op= on */ +RET_LABEL:; +} +/* method parser_prod#AVarReassignExpr#n_value= for (self: AVarReassignExpr, AExpr) */ +void parser_prod__AVarReassignExpr__n_value_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AVarReassignExpr#n_value= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__AVarReassignExpr__n_value_61d(val* self, val* p0) { +parser_prod__AVarReassignExpr__n_value_61d(self, p0); /* Direct call parser_prod#AVarReassignExpr#n_value= on */ RET_LABEL:; } -/* method parser_prod#AStarshipExpr#visit_all for (self: AStarshipExpr, Visitor) */ -void parser_prod__AStarshipExpr__visit_all(val* self, val* p0) { +/* method parser_prod#AVarReassignExpr#visit_all for (self: AVarReassignExpr, Visitor) */ +void parser_prod__AVarReassignExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExpr */; +val* var /* : TId */; +val* var1 /* : AAssignOp */; +val* var2 /* : AExpr */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4562); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4831); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var1 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4563); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4832); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var2 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4833); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AStarshipExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AStarshipExpr__visit_all(val* self, val* p0) { -parser_prod__AStarshipExpr__visit_all(self, p0); /* Direct call parser_prod#AStarshipExpr#visit_all on */ +/* method parser_prod#AVarReassignExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AVarReassignExpr__visit_all(val* self, val* p0) { +parser_prod__AVarReassignExpr__visit_all(self, p0); /* Direct call parser_prod#AVarReassignExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AStarExpr#init_astarexpr for (self: AStarExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__AStarExpr__init_astarexpr(val* self, val* p0, val* p1) { +/* method parser_prod#ACrangeExpr#init_acrangeexpr for (self: ACrangeExpr, nullable TObra, nullable AExpr, nullable AExpr, nullable TCbra, nullable AAnnotations) */ +void 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 */; 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_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 */; +short int var10 /* : 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", "parser/parser_prod.nit", 4900); +show_backtrace(1); +} +self->attrs[COLOR_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", "parser/parser_prod.nit", 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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_obra->attrs[COLOR_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", "src/parser/parser_prod.nit", 4572); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4902); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ARangeExpr___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", "src/parser/parser_prod.nit", 4573); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4903); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; } } if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4574); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4904); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__ARangeExpr___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", "src/parser/parser_prod.nit", 4575); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4905); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_cbra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4906); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val = var_n_cbra; /* _n_cbra on */ +if (var_n_cbra == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4907); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on */ +if (unlikely(var_n_cbra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_cbra->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} +self->attrs[COLOR_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; +{ +var9 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var8 = var9; +} +var10 = !var8; +var6 = var10; +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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL11:(void)0; +} +} +} else { } RET_LABEL:; } -/* method parser_prod#AStarExpr#init_astarexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__AStarExpr__init_astarexpr(val* self, val* p0, val* p1) { -parser_prod__AStarExpr__init_astarexpr(self, p0, p1); /* Direct call parser_prod#AStarExpr#init_astarexpr on */ +/* method parser_prod#ACrangeExpr#init_acrangeexpr for (self: Object, nullable TObra, nullable AExpr, nullable AExpr, nullable TCbra, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ACrangeExpr__init_acrangeexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +parser_prod__ACrangeExpr__init_acrangeexpr(self, p0, p1, p2, p3, p4); /* Direct call parser_prod#ACrangeExpr#init_acrangeexpr on */ RET_LABEL:; } -/* method parser_prod#AStarExpr#replace_child for (self: AStarExpr, ANode, nullable ANode) */ -void parser_prod__AStarExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ACrangeExpr#replace_child for (self: ACrangeExpr, ANode, nullable ANode) */ +void parser_prod__ACrangeExpr__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 /* : TObra */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -2522,19 +3406,46 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AExpr */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; +val* var30 /* : TCbra */; +short int var31 /* : Bool */; +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 AAnnotations */; +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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_obra].val; /* _n_obra on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4580); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4914); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -2548,9 +3459,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TObra */ +cltype = type_parser_nodes__TObra.color; +idtype = type_parser_nodes__TObra.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -2562,20 +3473,20 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4581); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4915); show_backtrace(1); } { -parser_prod__AStarExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AStarExpr#n_expr= on */ +parser_prod__ACrangeExpr__n_obra_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_obra= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val; /* _n_expr on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4584); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4918); show_backtrace(1); } { @@ -2611,295 +3522,186 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4585); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4919); show_backtrace(1); } { -parser_prod__AStarExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AStarExpr#n_expr2= on */ +parser_prod__ACrangeExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_expr= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#AStarExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AStarExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AStarExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AStarExpr#replace_child on */ -RET_LABEL:; +var19 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4922); +show_backtrace(1); } -/* method parser_prod#AStarExpr#n_expr= for (self: AStarExpr, AExpr) */ -void parser_prod__AStarExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AStarExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AStarExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AStarExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AStarExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#AStarExpr#n_expr2= for (self: AStarExpr, AExpr) */ -void parser_prod__AStarExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; } } -RET_LABEL:; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } -/* method parser_prod#AStarExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AStarExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__AStarExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#AStarExpr#n_expr2= on */ -RET_LABEL:; +var20 = var21; } -/* method parser_prod#AStarExpr#visit_all for (self: AStarExpr, Visitor) */ -void parser_prod__AStarExpr__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_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", "src/parser/parser_prod.nit", 4604); -show_backtrace(1); +if (var20){ +/* isa AExpr */ +cltype27 = type_parser_nodes__AExpr.color; +idtype28 = type_parser_nodes__AExpr.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; } -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4605); +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4923); show_backtrace(1); } { -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AStarExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AStarExpr__visit_all(val* self, val* p0) { -parser_prod__AStarExpr__visit_all(self, p0); /* Direct call parser_prod#AStarExpr#visit_all on */ -RET_LABEL:; -} -/* method parser_prod#ASlashExpr#init_aslashexpr for (self: ASlashExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__ASlashExpr__init_aslashexpr(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", "src/parser/parser_prod.nit", 4614); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4615); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_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", "src/parser/parser_prod.nit", 4616); -show_backtrace(1); +parser_prod__ACrangeExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_expr2= on */ } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4617); -show_backtrace(1); +goto RET_LABEL; } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ASlashExpr#init_aslashexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__ASlashExpr__init_aslashexpr(val* self, val* p0, val* p1) { -parser_prod__ASlashExpr__init_aslashexpr(self, p0, p1); /* Direct call parser_prod#ASlashExpr#init_aslashexpr on */ -RET_LABEL:; } -/* method parser_prod#ASlashExpr#replace_child for (self: ASlashExpr, ANode, nullable ANode) */ -void parser_prod__ASlashExpr__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 */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var8 /* : AExpr */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4622); +var30 = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val; /* _n_cbra on */ +if (unlikely(var30 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4926); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var30,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 (var30,var_other) on */ +var36 = var30 == var_other; +var34 = var36; +goto RET_LABEL35; +RET_LABEL35:(void)0; } } -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; } -var1 = var2; +var31 = var32; } -if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +if (var31){ +/* isa TCbra */ +cltype38 = type_parser_nodes__TCbra.color; +idtype39 = type_parser_nodes__TCbra.id; if(var_new_child == NULL) { -var7 = 0; +var37 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var7 = 0; +if(cltype38 >= var_new_child->type->table_size) { +var37 = 0; } else { -var7 = var_new_child->type->type_table[cltype] == idtype; +var37 = var_new_child->type->type_table[cltype38] == idtype39; } } -if (unlikely(!var7)) { -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", "src/parser/parser_prod.nit", 4623); +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`", "TCbra", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4927); show_backtrace(1); } { -parser_prod__ASlashExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ASlashExpr#n_expr= on */ +parser_prod__ACrangeExpr__n_cbra_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_cbra= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4626); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var41 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations 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 (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; +{ /* Inline kernel#Object#is_same_instance (var41,var_other) on */ +var47 = var41 == var_other; +var45 = var47; +goto RET_LABEL46; +RET_LABEL46:(void)0; } } -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +var43 = var45; +goto RET_LABEL44; +RET_LABEL44:(void)0; } -var9 = var10; +var42 = var43; } -if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +if (var42){ +/* isa nullable AAnnotations */ +cltype49 = type_nullable_parser_nodes__AAnnotations.color; +idtype50 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var48 = 1; } else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; +if(cltype49 >= var_new_child->type->table_size) { +var48 = 0; } else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; +var48 = var_new_child->type->type_table[cltype49] == idtype50; } } -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4627); +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 AAnnotations", var_class_name51); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4931); show_backtrace(1); } { -parser_prod__ASlashExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ASlashExpr#n_expr2= on */ +parser_prod__ACrangeExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ASlashExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ASlashExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ASlashExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ASlashExpr#replace_child on */ +/* method parser_prod#ACrangeExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ACrangeExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ACrangeExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ACrangeExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#ASlashExpr#n_expr= for (self: ASlashExpr, AExpr) */ -void parser_prod__ASlashExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ACrangeExpr#n_obra= for (self: ACrangeExpr, TObra) */ +void parser_prod__ACrangeExpr__n_obra_61d(val* self, val* p0) { +val* var_node /* var node: TObra */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ACrangeExpr___n_obra].val = var_node; /* _n_obra on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ASlashExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ASlashExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ASlashExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ASlashExpr#n_expr= on */ +/* method parser_prod#ACrangeExpr#n_obra= for (self: Object, TObra) */ +void VIRTUAL_parser_prod__ACrangeExpr__n_obra_61d(val* self, val* p0) { +parser_prod__ACrangeExpr__n_obra_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_obra= on */ RET_LABEL:; } -/* method parser_prod#ASlashExpr#n_expr2= for (self: ASlashExpr, AExpr) */ -void parser_prod__ASlashExpr__n_expr2_61d(val* self, val* p0) { +/* method parser_prod#ACrangeExpr#n_expr= for (self: ACrangeExpr, AExpr) */ +void parser_prod__ACrangeExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -2908,102 +3710,296 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#ASlashExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ASlashExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__ASlashExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#ASlashExpr#n_expr2= on */ +/* method parser_prod#ACrangeExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ACrangeExpr__n_expr_61d(val* self, val* p0) { +parser_prod__ACrangeExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_expr= on */ RET_LABEL:; } -/* method parser_prod#ASlashExpr#visit_all for (self: ASlashExpr, Visitor) */ -void parser_prod__ASlashExpr__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_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", "src/parser/parser_prod.nit", 4646); -show_backtrace(1); -} +/* method parser_prod#ACrangeExpr#n_expr2= for (self: ACrangeExpr, AExpr) */ +void parser_prod__ACrangeExpr__n_expr2_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val = var_node; /* _n_expr2 on */ { -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4647); -show_backtrace(1); +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ASlashExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ASlashExpr__visit_all(val* self, val* p0) { -parser_prod__ASlashExpr__visit_all(self, p0); /* Direct call parser_prod#ASlashExpr#visit_all on */ +/* method parser_prod#ACrangeExpr#n_expr2= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__ACrangeExpr__n_expr2_61d(val* self, val* p0) { +parser_prod__ACrangeExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_expr2= on */ +RET_LABEL:; +} +/* method parser_prod#ACrangeExpr#n_cbra= for (self: ACrangeExpr, TCbra) */ +void parser_prod__ACrangeExpr__n_cbra_61d(val* self, val* p0) { +val* var_node /* var node: TCbra */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val = var_node; /* _n_cbra on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#ACrangeExpr#n_cbra= for (self: Object, TCbra) */ +void VIRTUAL_parser_prod__ACrangeExpr__n_cbra_61d(val* self, val* p0) { +parser_prod__ACrangeExpr__n_cbra_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_cbra= on */ +RET_LABEL:; +} +/* method parser_prod#ACrangeExpr#n_annotations= for (self: ACrangeExpr, nullable AAnnotations) */ +void parser_prod__ACrangeExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; +var_node = p0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations 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; +{ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +} else { +} RET_LABEL:; } -/* method parser_prod#APercentExpr#init_apercentexpr for (self: APercentExpr, nullable AExpr, nullable AExpr) */ -void parser_prod__APercentExpr__init_apercentexpr(val* self, val* p0, val* p1) { +/* method parser_prod#ACrangeExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ACrangeExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__ACrangeExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_annotations= on */ +RET_LABEL:; +} +/* method parser_prod#ACrangeExpr#visit_all for (self: ACrangeExpr, Visitor) */ +void parser_prod__ACrangeExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TObra */; +val* var1 /* : AExpr */; +val* var2 /* : AExpr */; +val* var3 /* : TCbra */; +val* var4 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_obra].val; /* _n_obra on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4965); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var1 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4966); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var2 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4967); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val; /* _n_cbra on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4968); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#ACrangeExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ACrangeExpr__visit_all(val* self, val* p0) { +parser_prod__ACrangeExpr__visit_all(self, p0); /* Direct call parser_prod#ACrangeExpr#visit_all on */ +RET_LABEL:; +} +/* method parser_prod#AOrangeExpr#init_aorangeexpr for (self: AOrangeExpr, nullable TObra, nullable AExpr, nullable AExpr, nullable TObra, nullable AAnnotations) */ +void parser_prod__AOrangeExpr__init_aorangeexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +val* var_n_obra /* var n_obra: nullable TObra */; 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_cbra /* var n_cbra: nullable TObra */; +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 */; +short int var10 /* : 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", "parser/parser_prod.nit", 4981); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AOrangeExpr___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", "parser/parser_prod.nit", 4982); +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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_obra->attrs[COLOR_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", "src/parser/parser_prod.nit", 4656); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4983); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ARangeExpr___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", "src/parser/parser_prod.nit", 4657); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4984); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +RET_LABEL2:(void)0; } } if (unlikely(var_n_expr2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4658); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4985); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_n_expr2; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__ARangeExpr___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", "src/parser/parser_prod.nit", 4659); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4986); 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +RET_LABEL3:(void)0; +} +} +if (unlikely(var_n_cbra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4987); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AOrangeExpr___n_cbra].val = var_n_cbra; /* _n_cbra on */ +if (var_n_cbra == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4988); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_cbra,self) on */ +if (unlikely(var_n_cbra == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_cbra->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL4:(void)0; +} +} +self->attrs[COLOR_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; +{ +var9 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var8 = var9; +} +var10 = !var8; +var6 = var10; +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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL11:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#APercentExpr#init_apercentexpr for (self: Object, nullable AExpr, nullable AExpr) */ -void VIRTUAL_parser_prod__APercentExpr__init_apercentexpr(val* self, val* p0, val* p1) { -parser_prod__APercentExpr__init_apercentexpr(self, p0, p1); /* Direct call parser_prod#APercentExpr#init_apercentexpr on */ +/* method parser_prod#AOrangeExpr#init_aorangeexpr for (self: Object, nullable TObra, nullable AExpr, nullable AExpr, nullable TObra, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AOrangeExpr__init_aorangeexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +parser_prod__AOrangeExpr__init_aorangeexpr(self, p0, p1, p2, p3, p4); /* Direct call parser_prod#AOrangeExpr#init_aorangeexpr on */ RET_LABEL:; } -/* method parser_prod#APercentExpr#replace_child for (self: APercentExpr, ANode, nullable ANode) */ -void parser_prod__APercentExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AOrangeExpr#replace_child for (self: AOrangeExpr, ANode, nullable ANode) */ +void parser_prod__AOrangeExpr__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 /* : TObra */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -3022,19 +4018,46 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; +val* var19 /* : AExpr */; +short int var20 /* : Bool */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; +short int var25 /* : Bool */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +const char* var_class_name29; +val* var30 /* : TObra */; +short int var31 /* : Bool */; +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 AAnnotations */; +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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AOrangeExpr___n_obra].val; /* _n_obra on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4664); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4995); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -3048,9 +4071,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TObra */ +cltype = type_parser_nodes__TObra.color; +idtype = type_parser_nodes__TObra.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -3062,20 +4085,20 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4665); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4996); show_backtrace(1); } { -parser_prod__APercentExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#APercentExpr#n_expr= on */ +parser_prod__AOrangeExpr__n_obra_61d(self, var_new_child); /* Direct call parser_prod#AOrangeExpr#n_obra= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val; /* _n_expr2 on */ +var8 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val; /* _n_expr on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4668); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 4999); show_backtrace(1); } { @@ -3111,295 +4134,186 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4669); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5000); show_backtrace(1); } { -parser_prod__APercentExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#APercentExpr#n_expr2= on */ +parser_prod__AOrangeExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AOrangeExpr#n_expr= on */ } goto RET_LABEL; } else { } -RET_LABEL:; -} -/* method parser_prod#APercentExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__APercentExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__APercentExpr__replace_child(self, p0, p1); /* Direct call parser_prod#APercentExpr#replace_child on */ -RET_LABEL:; +var19 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var19 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5003); +show_backtrace(1); } -/* method parser_prod#APercentExpr#n_expr= for (self: APercentExpr, AExpr) */ -void parser_prod__APercentExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} +{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +var25 = var19 == var_other; +var23 = var25; +goto RET_LABEL24; +RET_LABEL24:(void)0; } -RET_LABEL:; } -/* method parser_prod#APercentExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__APercentExpr__n_expr_61d(val* self, val* p0) { -parser_prod__APercentExpr__n_expr_61d(self, p0); /* Direct call parser_prod#APercentExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#APercentExpr#n_expr2= for (self: APercentExpr, AExpr) */ -void parser_prod__APercentExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ABinopExpr___n_expr2].val = var_node; /* _n_expr2 on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } -/* method parser_prod#APercentExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__APercentExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__APercentExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#APercentExpr#n_expr2= on */ -RET_LABEL:; +var20 = var21; } -/* method parser_prod#APercentExpr#visit_all for (self: APercentExpr, Visitor) */ -void parser_prod__APercentExpr__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_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", "src/parser/parser_prod.nit", 4688); -show_backtrace(1); +if (var20){ +/* isa AExpr */ +cltype27 = type_parser_nodes__AExpr.color; +idtype28 = type_parser_nodes__AExpr.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; } -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4689); +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5004); show_backtrace(1); } { -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#APercentExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__APercentExpr__visit_all(val* self, val* p0) { -parser_prod__APercentExpr__visit_all(self, p0); /* Direct call parser_prod#APercentExpr#visit_all on */ -RET_LABEL:; -} -/* method parser_prod#AUminusExpr#init_auminusexpr for (self: AUminusExpr, nullable TMinus, nullable AExpr) */ -void parser_prod__AUminusExpr__init_auminusexpr(val* self, val* p0, val* p1) { -val* var_n_minus /* var n_minus: nullable TMinus */; -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", "src/parser/parser_prod.nit", 4698); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4699); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +parser_prod__AOrangeExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#AOrangeExpr#n_expr2= on */ } -var_n_minus->attrs[COLOR_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", "src/parser/parser_prod.nit", 4700); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4701); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AUminusExpr#init_auminusexpr for (self: Object, nullable TMinus, nullable AExpr) */ -void VIRTUAL_parser_prod__AUminusExpr__init_auminusexpr(val* self, val* p0, val* p1) { -parser_prod__AUminusExpr__init_auminusexpr(self, p0, p1); /* Direct call parser_prod#AUminusExpr#init_auminusexpr on */ -RET_LABEL:; } -/* method parser_prod#AUminusExpr#replace_child for (self: AUminusExpr, ANode, nullable ANode) */ -void parser_prod__AUminusExpr__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 */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var8 /* : AExpr */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AUminusExpr___n_minus].val; /* _n_minus on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_minus"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4706); +var30 = self->attrs[COLOR_parser_nodes__AOrangeExpr___n_cbra].val; /* _n_cbra on */ +if (unlikely(var30 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5007); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var,var_old_child) on */ +{ /* Inline kernel#Object#== (var30,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 (var30,var_other) on */ +var36 = var30 == var_other; +var34 = var36; +goto RET_LABEL35; +RET_LABEL35:(void)0; } } -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; } -var1 = var2; +var31 = var32; } -if (var1){ -/* isa TMinus */ -cltype = type_parser_nodes__TMinus.color; -idtype = type_parser_nodes__TMinus.id; +if (var31){ +/* isa TObra */ +cltype38 = type_parser_nodes__TObra.color; +idtype39 = type_parser_nodes__TObra.id; if(var_new_child == NULL) { -var7 = 0; +var37 = 0; } else { -if(cltype >= var_new_child->type->table_size) { -var7 = 0; +if(cltype38 >= var_new_child->type->table_size) { +var37 = 0; } else { -var7 = var_new_child->type->type_table[cltype] == idtype; +var37 = var_new_child->type->type_table[cltype38] == idtype39; } } -if (unlikely(!var7)) { -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", "src/parser/parser_prod.nit", 4707); +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`", "TObra", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5008); show_backtrace(1); } { -parser_prod__AUminusExpr__n_minus_61d(self, var_new_child); /* Direct call parser_prod#AUminusExpr#n_minus= on */ +parser_prod__AOrangeExpr__n_cbra_61d(self, var_new_child); /* Direct call parser_prod#AOrangeExpr#n_cbra= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4710); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var41 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations 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 (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; +{ /* Inline kernel#Object#is_same_instance (var41,var_other) on */ +var47 = var41 == var_other; +var45 = var47; +goto RET_LABEL46; +RET_LABEL46:(void)0; } } -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; +var43 = var45; +goto RET_LABEL44; +RET_LABEL44:(void)0; } -var9 = var10; +var42 = var43; } -if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +if (var42){ +/* isa nullable AAnnotations */ +cltype49 = type_nullable_parser_nodes__AAnnotations.color; +idtype50 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var48 = 1; } else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; +if(cltype49 >= var_new_child->type->table_size) { +var48 = 0; } else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; +var48 = var_new_child->type->type_table[cltype49] == idtype50; } } -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4711); +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 AAnnotations", var_class_name51); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5012); show_backtrace(1); } { -parser_prod__AUminusExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AUminusExpr#n_expr= on */ +parser_prod__AOrangeExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AOrangeExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AUminusExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AUminusExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AUminusExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AUminusExpr#replace_child on */ +/* method parser_prod#AOrangeExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AOrangeExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AOrangeExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AOrangeExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AUminusExpr#n_minus= for (self: AUminusExpr, TMinus) */ -void parser_prod__AUminusExpr__n_minus_61d(val* self, val* p0) { -val* var_node /* var node: TMinus */; +/* method parser_prod#AOrangeExpr#n_obra= for (self: AOrangeExpr, TObra) */ +void parser_prod__AOrangeExpr__n_obra_61d(val* self, val* p0) { +val* var_node /* var node: TObra */; var_node = p0; -self->attrs[COLOR_parser_nodes__AUminusExpr___n_minus].val = var_node; /* _n_minus on */ +self->attrs[COLOR_parser_nodes__AOrangeExpr___n_obra].val = var_node; /* _n_obra on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AUminusExpr#n_minus= for (self: Object, TMinus) */ -void VIRTUAL_parser_prod__AUminusExpr__n_minus_61d(val* self, val* p0) { -parser_prod__AUminusExpr__n_minus_61d(self, p0); /* Direct call parser_prod#AUminusExpr#n_minus= on */ +/* method parser_prod#AOrangeExpr#n_obra= for (self: Object, TObra) */ +void VIRTUAL_parser_prod__AOrangeExpr__n_obra_61d(val* self, val* p0) { +parser_prod__AOrangeExpr__n_obra_61d(self, p0); /* Direct call parser_prod#AOrangeExpr#n_obra= on */ RET_LABEL:; } -/* method parser_prod#AUminusExpr#n_expr= for (self: AUminusExpr, AExpr) */ -void parser_prod__AUminusExpr__n_expr_61d(val* self, val* p0) { +/* method parser_prod#AOrangeExpr#n_expr= for (self: AOrangeExpr, AExpr) */ +void parser_prod__AOrangeExpr__n_expr_61d(val* self, val* p0) { val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val = var_node; /* _n_expr on */ { { /* Inline parser_nodes#ANode#parent= (var_node,self) on */ var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ @@ -3408,113 +4322,230 @@ RET_LABEL1:(void)0; } RET_LABEL:; } -/* method parser_prod#AUminusExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AUminusExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AUminusExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AUminusExpr#n_expr= on */ +/* method parser_prod#AOrangeExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__AOrangeExpr__n_expr_61d(val* self, val* p0) { +parser_prod__AOrangeExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AOrangeExpr#n_expr= on */ RET_LABEL:; } -/* method parser_prod#AUminusExpr#visit_all for (self: AUminusExpr, Visitor) */ -void parser_prod__AUminusExpr__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : TMinus */; -val* var1 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_parser_nodes__AUminusExpr___n_minus].val; /* _n_minus on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_minus"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4730); -show_backtrace(1); -} +/* method parser_prod#AOrangeExpr#n_expr2= for (self: AOrangeExpr, AExpr) */ +void parser_prod__AOrangeExpr__n_expr2_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val = var_node; /* _n_expr2 on */ { -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -var1 = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4731); -show_backtrace(1); } +RET_LABEL:; +} +/* method parser_prod#AOrangeExpr#n_expr2= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__AOrangeExpr__n_expr2_61d(val* self, val* p0) { +parser_prod__AOrangeExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#AOrangeExpr#n_expr2= on */ +RET_LABEL:; +} +/* method parser_prod#AOrangeExpr#n_cbra= for (self: AOrangeExpr, TObra) */ +void parser_prod__AOrangeExpr__n_cbra_61d(val* self, val* p0) { +val* var_node /* var node: TObra */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AOrangeExpr___n_cbra].val = var_node; /* _n_cbra on */ { -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} } RET_LABEL:; } -/* method parser_prod#AUminusExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AUminusExpr__visit_all(val* self, val* p0) { -parser_prod__AUminusExpr__visit_all(self, p0); /* Direct call parser_prod#AUminusExpr#visit_all on */ +/* method parser_prod#AOrangeExpr#n_cbra= for (self: Object, TObra) */ +void VIRTUAL_parser_prod__AOrangeExpr__n_cbra_61d(val* self, val* p0) { +parser_prod__AOrangeExpr__n_cbra_61d(self, p0); /* Direct call parser_prod#AOrangeExpr#n_cbra= on */ RET_LABEL:; } -/* method parser_prod#ANewExpr#init_anewexpr for (self: ANewExpr, nullable TKwnew, nullable AType, nullable TId, nullable AExprs) */ -void 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 */; +/* method parser_prod#AOrangeExpr#n_annotations= for (self: AOrangeExpr, nullable AAnnotations) */ +void parser_prod__AOrangeExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; val* var /* : null */; -short int var3 /* : Bool */; -short int var4 /* : Bool */; +short int var1 /* : Bool */; +short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var4 /* : Bool */; +short int var5 /* : Bool */; short int var6 /* : Bool */; -short int var7 /* : Bool */; -short int var8 /* : 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", "src/parser/parser_prod.nit", 4742); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4743); -show_backtrace(1); +var_node = p0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +var = NULL; +if (var_node == NULL) { +var1 = 0; /* is null */ } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var1 = 1; /* arg is null and recv is not */ } -var_n_kwnew->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +if (0) { +{ /* Inline kernel#Object#!= (var_node,var) on */ +var_other = var; +{ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; } +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } -if (unlikely(var_n_type == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4744); -show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ANewExpr___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", "src/parser/parser_prod.nit", 4745); -show_backtrace(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ -if (unlikely(var_n_type == NULL)) { +} +RET_LABEL:; +} +/* method parser_prod#AOrangeExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AOrangeExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__AOrangeExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#AOrangeExpr#n_annotations= on */ +RET_LABEL:; +} +/* method parser_prod#AOrangeExpr#visit_all for (self: AOrangeExpr, Visitor) */ +void parser_prod__AOrangeExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TObra */; +val* var1 /* : AExpr */; +val* var2 /* : AExpr */; +val* var3 /* : TObra */; +val* var4 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__AOrangeExpr___n_obra].val; /* _n_obra on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5046); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var1 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5047); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var2 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val; /* _n_expr2 on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5048); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_parser_nodes__AOrangeExpr___n_cbra].val; /* _n_cbra on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5049); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#AOrangeExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AOrangeExpr__visit_all(val* self, val* p0) { +parser_prod__AOrangeExpr__visit_all(self, p0); /* Direct call parser_prod#AOrangeExpr#visit_all on */ +RET_LABEL:; +} +/* method parser_prod#AArrayExpr#init_aarrayexpr for (self: AArrayExpr, nullable TObra, nullable AExprs, nullable AType, nullable TCbra, nullable AAnnotations) */ +void parser_prod__AArrayExpr__init_aarrayexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +val* var_n_obra /* var n_obra: nullable TObra */; +val* var_n_exprs /* var n_exprs: nullable AExprs */; +val* var_n_type /* var n_type: nullable AType */; +val* var_n_cbra /* var n_cbra: nullable TCbra */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +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 */; +short int var8 /* : Bool */; +val* var11 /* : null */; +short int var12 /* : Bool */; +short int var13 /* : Bool */; +short int var15 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +var_n_obra = p0; +var_n_exprs = p1; +var_n_type = 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", "parser/parser_prod.nit", 5062); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AArrayExpr___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", "parser/parser_prod.nit", 5063); +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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_type->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_obra->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +if (unlikely(var_n_exprs == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5064); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AArrayExpr___n_exprs].val = var_n_exprs; /* _n_exprs on */ +if (var_n_exprs == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5065); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_exprs,self) on */ +if (unlikely(var_n_exprs == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_exprs->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -self->attrs[COLOR_parser_nodes__ANewExpr___n_id].val = var_n_id; /* _n_id on */ +self->attrs[COLOR_parser_nodes__AArrayExpr___n_type].val = var_n_type; /* _n_type on */ var = NULL; -if (var_n_id == NULL) { +if (var_n_type == 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 */ +{ /* Inline kernel#Object#!= (var_n_type,var) on */ var_other = var; { -var7 = ((short int (*)(val*, val*))(var_n_id->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_id, var_other) /* == on */; +var7 = ((short int (*)(val*, val*))(var_n_type->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_type, var_other) /* == on */; var6 = var7; } var8 = !var6; @@ -3526,46 +4557,76 @@ var3 = var4; } if (var3){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_id,self) on */ -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_type,self) on */ +var_n_type->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL9:(void)0; } } } else { } -if (unlikely(var_n_args == NULL)) { +if (unlikely(var_n_cbra == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4748); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5068); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ANewExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_parser_nodes__AArrayExpr___n_cbra].val = var_n_cbra; /* _n_cbra on */ +if (var_n_cbra == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4749); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5069); show_backtrace(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_cbra,self) on */ +if (unlikely(var_n_cbra == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_cbra->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL10:(void)0; } } +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var11 = NULL; +if (var_n_annotations == NULL) { +var12 = 0; /* is null */ +} else { +var12 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var11) on */ +var_other = var11; +{ +var16 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var15 = var16; +} +var17 = !var15; +var13 = var17; +goto RET_LABEL14; +RET_LABEL14:(void)0; +} +var12 = var13; +} +if (var12){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL18:(void)0; +} +} +} else { +} RET_LABEL:; } -/* method parser_prod#ANewExpr#init_anewexpr for (self: Object, nullable TKwnew, nullable AType, nullable TId, nullable AExprs) */ -void VIRTUAL_parser_prod__ANewExpr__init_anewexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -parser_prod__ANewExpr__init_anewexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#ANewExpr#init_anewexpr on */ +/* method parser_prod#AArrayExpr#init_aarrayexpr for (self: Object, nullable TObra, nullable AExprs, nullable AType, nullable TCbra, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AArrayExpr__init_aarrayexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +parser_prod__AArrayExpr__init_aarrayexpr(self, p0, p1, p2, p3, p4); /* Direct call parser_prod#AArrayExpr#init_aarrayexpr on */ RET_LABEL:; } -/* method parser_prod#ANewExpr#replace_child for (self: ANewExpr, ANode, nullable ANode) */ -void parser_prod__ANewExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AArrayExpr#replace_child for (self: AArrayExpr, ANode, nullable ANode) */ +void parser_prod__AArrayExpr__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 /* : TObra */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -3575,7 +4636,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AType */; +val* var8 /* : AExprs */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -3584,7 +4645,7 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : nullable TId */; +val* var19 /* : nullable AType */; short int var20 /* : Bool */; short int var21 /* : Bool */; short int var23 /* : Bool */; @@ -3593,7 +4654,7 @@ short int var26 /* : Bool */; int cltype27; int idtype28; const char* var_class_name29; -val* var30 /* : AExprs */; +val* var30 /* : TCbra */; short int var31 /* : Bool */; short int var32 /* : Bool */; short int var34 /* : Bool */; @@ -3602,19 +4663,28 @@ short int var37 /* : Bool */; int cltype38; int idtype39; const char* var_class_name40; +val* var41 /* : nullable AAnnotations */; +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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ANewExpr___n_kwnew].val; /* _n_kwnew on */ +var = self->attrs[COLOR_parser_nodes__AArrayExpr___n_obra].val; /* _n_obra on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnew"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4754); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5076); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -3628,9 +4698,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa TKwnew */ -cltype = type_parser_nodes__TKwnew.color; -idtype = type_parser_nodes__TKwnew.id; +/* isa TObra */ +cltype = type_parser_nodes__TObra.color; +idtype = type_parser_nodes__TObra.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -3642,27 +4712,27 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4755); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5077); show_backtrace(1); } { -parser_prod__ANewExpr__n_kwnew_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_kwnew= on */ +parser_prod__AArrayExpr__n_obra_61d(self, var_new_child); /* Direct call parser_prod#AArrayExpr#n_obra= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ANewExpr___n_type].val; /* _n_type on */ +var8 = self->attrs[COLOR_parser_nodes__AArrayExpr___n_exprs].val; /* _n_exprs on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4758); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5080); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -3676,9 +4746,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AType */ -cltype16 = type_parser_nodes__AType.color; -idtype17 = type_parser_nodes__AType.id; +/* isa AExprs */ +cltype16 = type_parser_nodes__AExprs.color; +idtype17 = type_parser_nodes__AExprs.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -3690,24 +4760,24 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AType", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4759); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5081); show_backtrace(1); } { -parser_prod__ANewExpr__n_type_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_type= on */ +parser_prod__AArrayExpr__n_exprs_61d(self, var_new_child); /* Direct call parser_prod#AArrayExpr#n_exprs= on */ } goto RET_LABEL; } else { } -var19 = self->attrs[COLOR_parser_nodes__ANewExpr___n_id].val; /* _n_id on */ +var19 = self->attrs[COLOR_parser_nodes__AArrayExpr___n_type].val; /* _n_type on */ if (var19 == NULL) { var20 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var19,var_old_child) on */ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ var25 = var19 == var_other; var23 = var25; goto RET_LABEL24; @@ -3721,9 +4791,9 @@ RET_LABEL22:(void)0; var20 = var21; } if (var20){ -/* isa nullable TId */ -cltype27 = type_nullable_parser_nodes__TId.color; -idtype28 = type_nullable_parser_nodes__TId.id; +/* isa nullable AType */ +cltype27 = type_nullable_parser_nodes__AType.color; +idtype28 = type_nullable_parser_nodes__AType.id; if(var_new_child == NULL) { var26 = 1; } else { @@ -3735,27 +4805,27 @@ var26 = var_new_child->type->type_table[cltype27] == idtype28; } if (unlikely(!var26)) { var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TId", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4763); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AType", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5085); show_backtrace(1); } { -parser_prod__ANewExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_id= on */ +parser_prod__AArrayExpr__n_type_61d(self, var_new_child); /* Direct call parser_prod#AArrayExpr#n_type= on */ } goto RET_LABEL; } else { } -var30 = self->attrs[COLOR_parser_nodes__ANewExpr___n_args].val; /* _n_args on */ +var30 = self->attrs[COLOR_parser_nodes__AArrayExpr___n_cbra].val; /* _n_cbra on */ if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4766); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5088); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var30,var_old_child) on */ +{ /* Inline kernel#Object#== (var30,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ var36 = var30 == var_other; var34 = var36; goto RET_LABEL35; @@ -3769,9 +4839,9 @@ RET_LABEL33:(void)0; var31 = var32; } if (var31){ -/* isa AExprs */ -cltype38 = type_parser_nodes__AExprs.color; -idtype39 = type_parser_nodes__AExprs.id; +/* isa TCbra */ +cltype38 = type_parser_nodes__TCbra.color; +idtype39 = type_parser_nodes__TCbra.id; if(var_new_child == NULL) { var37 = 0; } else { @@ -3783,62 +4853,107 @@ var37 = var_new_child->type->type_table[cltype38] == idtype39; } 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`", "AExprs", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4767); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5089); +show_backtrace(1); +} +{ +parser_prod__AArrayExpr__n_cbra_61d(self, var_new_child); /* Direct call parser_prod#AArrayExpr#n_cbra= on */ +} +goto RET_LABEL; +} else { +} +var41 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations 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 AAnnotations */ +cltype49 = type_nullable_parser_nodes__AAnnotations.color; +idtype50 = type_nullable_parser_nodes__AAnnotations.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 AAnnotations", var_class_name51); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5093); show_backtrace(1); } { -parser_prod__ANewExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ANewExpr#n_args= on */ +parser_prod__AArrayExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AArrayExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ANewExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ANewExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ANewExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ANewExpr#replace_child on */ +/* method parser_prod#AArrayExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AArrayExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AArrayExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AArrayExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#ANewExpr#n_kwnew= for (self: ANewExpr, TKwnew) */ -void parser_prod__ANewExpr__n_kwnew_61d(val* self, val* p0) { -val* var_node /* var node: TKwnew */; +/* method parser_prod#AArrayExpr#n_obra= for (self: AArrayExpr, TObra) */ +void parser_prod__AArrayExpr__n_obra_61d(val* self, val* p0) { +val* var_node /* var node: TObra */; var_node = p0; -self->attrs[COLOR_parser_nodes__ANewExpr___n_kwnew].val = var_node; /* _n_kwnew on */ +self->attrs[COLOR_parser_nodes__AArrayExpr___n_obra].val = var_node; /* _n_obra on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ANewExpr#n_kwnew= for (self: Object, TKwnew) */ -void VIRTUAL_parser_prod__ANewExpr__n_kwnew_61d(val* self, val* p0) { -parser_prod__ANewExpr__n_kwnew_61d(self, p0); /* Direct call parser_prod#ANewExpr#n_kwnew= on */ +/* method parser_prod#AArrayExpr#n_obra= for (self: Object, TObra) */ +void VIRTUAL_parser_prod__AArrayExpr__n_obra_61d(val* self, val* p0) { +parser_prod__AArrayExpr__n_obra_61d(self, p0); /* Direct call parser_prod#AArrayExpr#n_obra= on */ RET_LABEL:; } -/* method parser_prod#ANewExpr#n_type= for (self: ANewExpr, AType) */ -void parser_prod__ANewExpr__n_type_61d(val* self, val* p0) { -val* var_node /* var node: AType */; +/* method parser_prod#AArrayExpr#n_exprs= for (self: AArrayExpr, AExprs) */ +void parser_prod__AArrayExpr__n_exprs_61d(val* self, val* p0) { +val* var_node /* var node: AExprs */; var_node = p0; -self->attrs[COLOR_parser_nodes__ANewExpr___n_type].val = var_node; /* _n_type on */ +self->attrs[COLOR_parser_nodes__AArrayExpr___n_exprs].val = var_node; /* _n_exprs on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ANewExpr#n_type= for (self: Object, AType) */ -void VIRTUAL_parser_prod__ANewExpr__n_type_61d(val* self, val* p0) { -parser_prod__ANewExpr__n_type_61d(self, p0); /* Direct call parser_prod#ANewExpr#n_type= on */ +/* method parser_prod#AArrayExpr#n_exprs= for (self: Object, AExprs) */ +void VIRTUAL_parser_prod__AArrayExpr__n_exprs_61d(val* self, val* p0) { +parser_prod__AArrayExpr__n_exprs_61d(self, p0); /* Direct call parser_prod#AArrayExpr#n_exprs= on */ RET_LABEL:; } -/* method parser_prod#ANewExpr#n_id= for (self: ANewExpr, nullable TId) */ -void parser_prod__ANewExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: nullable TId */; +/* method parser_prod#AArrayExpr#n_type= for (self: AArrayExpr, nullable AType) */ +void parser_prod__AArrayExpr__n_type_61d(val* self, val* p0) { +val* var_node /* var node: nullable AType */; val* var /* : null */; short int var1 /* : Bool */; short int var2 /* : Bool */; @@ -3847,7 +4962,7 @@ short int var4 /* : Bool */; short int var5 /* : Bool */; short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__ANewExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_parser_nodes__AArrayExpr___n_type].val = var_node; /* _n_type on */ var = NULL; if (var_node == NULL) { var1 = 0; /* is null */ @@ -3855,10 +4970,10 @@ var1 = 0; /* is null */ var1 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ +{ /* Inline kernel#Object#!= (var_node,var) on */ var_other = var; { -var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; var4 = var5; } var6 = !var4; @@ -3870,8 +4985,8 @@ var1 = var2; } if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL7:(void)0; } } @@ -3879,135 +4994,204 @@ RET_LABEL7:(void)0; } RET_LABEL:; } -/* method parser_prod#ANewExpr#n_id= for (self: Object, nullable TId) */ -void VIRTUAL_parser_prod__ANewExpr__n_id_61d(val* self, val* p0) { -parser_prod__ANewExpr__n_id_61d(self, p0); /* Direct call parser_prod#ANewExpr#n_id= on */ +/* method parser_prod#AArrayExpr#n_type= for (self: Object, nullable AType) */ +void VIRTUAL_parser_prod__AArrayExpr__n_type_61d(val* self, val* p0) { +parser_prod__AArrayExpr__n_type_61d(self, p0); /* Direct call parser_prod#AArrayExpr#n_type= on */ RET_LABEL:; } -/* method parser_prod#ANewExpr#n_args= for (self: ANewExpr, AExprs) */ -void parser_prod__ANewExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#AArrayExpr#n_cbra= for (self: AArrayExpr, TCbra) */ +void parser_prod__AArrayExpr__n_cbra_61d(val* self, val* p0) { +val* var_node /* var node: TCbra */; var_node = p0; -self->attrs[COLOR_parser_nodes__ANewExpr___n_args].val = var_node; /* _n_args on */ +self->attrs[COLOR_parser_nodes__AArrayExpr___n_cbra].val = var_node; /* _n_cbra on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ANewExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ANewExpr__n_args_61d(val* self, val* p0) { -parser_prod__ANewExpr__n_args_61d(self, p0); /* Direct call parser_prod#ANewExpr#n_args= on */ +/* method parser_prod#AArrayExpr#n_cbra= for (self: Object, TCbra) */ +void VIRTUAL_parser_prod__AArrayExpr__n_cbra_61d(val* self, val* p0) { +parser_prod__AArrayExpr__n_cbra_61d(self, p0); /* Direct call parser_prod#AArrayExpr#n_cbra= on */ RET_LABEL:; } -/* method parser_prod#ANewExpr#visit_all for (self: ANewExpr, Visitor) */ -void parser_prod__ANewExpr__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 */; -var_v = p0; -var = self->attrs[COLOR_parser_nodes__ANewExpr___n_kwnew].val; /* _n_kwnew on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnew"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4796); -show_backtrace(1); +/* method parser_prod#AArrayExpr#n_annotations= for (self: AArrayExpr, nullable AAnnotations) */ +void parser_prod__AArrayExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; +var_node = p0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations 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; { -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; } -var1 = self->attrs[COLOR_parser_nodes__ANewExpr___n_type].val; /* _n_type on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4797); -show_backtrace(1); +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +var1 = var2; } -var2 = self->attrs[COLOR_parser_nodes__ANewExpr___n_id].val; /* _n_id on */ +if (var1){ { -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } -var3 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4799); -show_backtrace(1); } -{ -parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} else { } RET_LABEL:; } -/* method parser_prod#ANewExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ANewExpr__visit_all(val* self, val* p0) { -parser_prod__ANewExpr__visit_all(self, p0); /* Direct call parser_prod#ANewExpr#visit_all on */ +/* method parser_prod#AArrayExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AArrayExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__AArrayExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#AArrayExpr#n_annotations= on */ RET_LABEL:; } -/* method parser_prod#AAttrExpr#init_aattrexpr for (self: AAttrExpr, nullable AExpr, nullable TAttrid) */ -void 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; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4808); +/* method parser_prod#AArrayExpr#visit_all for (self: AArrayExpr, Visitor) */ +void parser_prod__AArrayExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TObra */; +val* var1 /* : AExprs */; +val* var2 /* : nullable AType */; +val* var3 /* : TCbra */; +val* var4 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__AArrayExpr___n_obra].val; /* _n_obra on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5127); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AAttrFormExpr___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", "src/parser/parser_prod.nit", 4809); +{ +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var1 = self->attrs[COLOR_parser_nodes__AArrayExpr___n_exprs].val; /* _n_exprs on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5128); 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", "src/parser/parser_nodes.nit", 38); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var2 = self->attrs[COLOR_parser_nodes__AArrayExpr___n_type].val; /* _n_type on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_parser_nodes__AArrayExpr___n_cbra].val; /* _n_cbra on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5130); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var4 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ } -if (unlikely(var_n_id == NULL)) { +RET_LABEL:; +} +/* method parser_prod#AArrayExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AArrayExpr__visit_all(val* self, val* p0) { +parser_prod__AArrayExpr__visit_all(self, p0); /* Direct call parser_prod#AArrayExpr#visit_all on */ +RET_LABEL:; +} +/* method parser_prod#ASelfExpr#init_aselfexpr for (self: ASelfExpr, nullable TKwself, nullable AAnnotations) */ +void parser_prod__ASelfExpr__init_aselfexpr(val* self, val* p0, val* p1) { +val* var_n_kwself /* var n_kwself: nullable TKwself */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_kwself = p0; +var_n_annotations = p1; +if (unlikely(var_n_kwself == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4810); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5140); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_parser_nodes__ASelfExpr___n_kwself].val = var_n_kwself; /* _n_kwself on */ +if (var_n_kwself == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4811); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5141); show_backtrace(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_kwself,self) on */ +if (unlikely(var_n_kwself == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +var_n_kwself->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ +} else { +var2 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; +} +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; +} +var2 = var3; +} +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#AAttrExpr#init_aattrexpr for (self: Object, nullable AExpr, nullable TAttrid) */ -void VIRTUAL_parser_prod__AAttrExpr__init_aattrexpr(val* self, val* p0, val* p1) { -parser_prod__AAttrExpr__init_aattrexpr(self, p0, p1); /* Direct call parser_prod#AAttrExpr#init_aattrexpr on */ +/* method parser_prod#ASelfExpr#init_aselfexpr for (self: Object, nullable TKwself, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ASelfExpr__init_aselfexpr(val* self, val* p0, val* p1) { +parser_prod__ASelfExpr__init_aselfexpr(self, p0, p1); /* Direct call parser_prod#ASelfExpr#init_aselfexpr on */ RET_LABEL:; } -/* method parser_prod#AAttrExpr#replace_child for (self: AAttrExpr, ANode, nullable ANode) */ -void parser_prod__AAttrExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ASelfExpr#replace_child for (self: ASelfExpr, ANode, nullable ANode) */ +void parser_prod__ASelfExpr__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 /* : nullable TKwself */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -4017,7 +5201,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TAttrid */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -4028,17 +5212,14 @@ int idtype17; const char* var_class_name18; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4816); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var,var_old_child) on */ +var = self->attrs[COLOR_parser_nodes__ASelfExpr___n_kwself].val; /* _n_kwself on */ +if (var == NULL) { +var1 = 0; /* cannot be null */ +} else { +{ /* 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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -4052,9 +5233,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TKwself */ +cltype = type_parser_nodes__TKwself.color; +idtype = type_parser_nodes__TKwself.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -4066,27 +5247,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4817); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwself", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5149); show_backtrace(1); } { -parser_prod__AAttrExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAttrExpr#n_expr= on */ +parser_prod__ASelfExpr__n_kwself_61d(self, var_new_child); /* Direct call parser_prod#ASelfExpr#n_kwself= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4820); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -4100,11 +5278,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa TAttrid */ -cltype16 = type_parser_nodes__TAttrid.color; -idtype17 = type_parser_nodes__TAttrid.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -4114,196 +5292,240 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAttrid", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4821); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5153); show_backtrace(1); } { -parser_prod__AAttrExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AAttrExpr#n_id= on */ +parser_prod__ASelfExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ASelfExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AAttrExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AAttrExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AAttrExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AAttrExpr#replace_child on */ +/* method parser_prod#ASelfExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ASelfExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ASelfExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ASelfExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AAttrExpr#n_expr= for (self: AAttrExpr, AExpr) */ -void parser_prod__AAttrExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ASelfExpr#n_kwself= for (self: ASelfExpr, nullable TKwself) */ +void parser_prod__ASelfExpr__n_kwself_61d(val* self, val* p0) { +val* var_node /* var node: nullable TKwself */; var_node = p0; -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +self->attrs[COLOR_parser_nodes__ASelfExpr___n_kwself].val = var_node; /* _n_kwself on */ +if (var_node == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5161); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +if (unlikely(var_node == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AAttrExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AAttrExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AAttrExpr#n_expr= on */ +/* method parser_prod#ASelfExpr#n_kwself= for (self: Object, nullable TKwself) */ +void VIRTUAL_parser_prod__ASelfExpr__n_kwself_61d(val* self, val* p0) { +parser_prod__ASelfExpr__n_kwself_61d(self, p0); /* Direct call parser_prod#ASelfExpr#n_kwself= on */ RET_LABEL:; } -/* method parser_prod#AAttrExpr#n_id= for (self: AAttrExpr, TAttrid) */ -void parser_prod__AAttrExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TAttrid */; +/* method parser_prod#ASelfExpr#n_annotations= for (self: ASelfExpr, nullable AAnnotations) */ +void parser_prod__ASelfExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations 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; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} } +} else { } RET_LABEL:; } -/* method parser_prod#AAttrExpr#n_id= for (self: Object, TAttrid) */ -void VIRTUAL_parser_prod__AAttrExpr__n_id_61d(val* self, val* p0) { -parser_prod__AAttrExpr__n_id_61d(self, p0); /* Direct call parser_prod#AAttrExpr#n_id= on */ +/* method parser_prod#ASelfExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ASelfExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__ASelfExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ASelfExpr#n_annotations= on */ RET_LABEL:; } -/* method parser_prod#AAttrExpr#visit_all for (self: AAttrExpr, Visitor) */ -void parser_prod__AAttrExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ASelfExpr#visit_all for (self: ASelfExpr, Visitor) */ +void parser_prod__ASelfExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : TAttrid */; +val* var /* : nullable TKwself */; +val* var1 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4840); -show_backtrace(1); -} +var = self->attrs[COLOR_parser_nodes__ASelfExpr___n_kwself].val; /* _n_kwself on */ { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4841); -show_backtrace(1); -} +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AAttrExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AAttrExpr__visit_all(val* self, val* p0) { -parser_prod__AAttrExpr__visit_all(self, p0); /* Direct call parser_prod#AAttrExpr#visit_all on */ +/* method parser_prod#ASelfExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ASelfExpr__visit_all(val* self, val* p0) { +parser_prod__ASelfExpr__visit_all(self, p0); /* Direct call parser_prod#ASelfExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#init_aattrassignexpr for (self: AAttrAssignExpr, nullable AExpr, nullable TAttrid, nullable TAssign, nullable AExpr) */ -void parser_prod__AAttrAssignExpr__init_aattrassignexpr(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 /* var n_assign: nullable TAssign */; -val* var_n_value /* var n_value: nullable AExpr */; -var_n_expr = p0; -var_n_id = p1; -var_n_assign = p2; -var_n_value = p3; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4852); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__AAttrFormExpr___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", "src/parser/parser_prod.nit", 4853); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +/* method parser_prod#AImplicitSelfExpr#init_aimplicitselfexpr for (self: AImplicitSelfExpr) */ +void parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr(val* self) { +RET_LABEL:; } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +/* method parser_prod#AImplicitSelfExpr#init_aimplicitselfexpr for (self: Object) */ +void VIRTUAL_parser_prod__AImplicitSelfExpr__init_aimplicitselfexpr(val* self) { +{ /* Inline parser_prod#AImplicitSelfExpr#init_aimplicitselfexpr (self) on */ RET_LABEL1:(void)0; } +RET_LABEL:; } -if (unlikely(var_n_id == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4854); -show_backtrace(1); +/* method parser_prod#AImplicitSelfExpr#replace_child for (self: AImplicitSelfExpr, ANode, nullable ANode) */ +void parser_prod__AImplicitSelfExpr__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 */; +var_old_child = p0; +var_new_child = p1; +RET_LABEL:; } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4855); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +/* method parser_prod#AImplicitSelfExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AImplicitSelfExpr__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 */; +{ /* Inline parser_prod#AImplicitSelfExpr#replace_child (self,p0,p1) on */ +var_old_child = p0; +var_new_child = p1; +RET_LABEL1:(void)0; } -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +RET_LABEL:; +} +/* method parser_prod#AImplicitSelfExpr#visit_all for (self: AImplicitSelfExpr, Visitor) */ +void parser_prod__AImplicitSelfExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +var_v = p0; +RET_LABEL:; +} +/* method parser_prod#AImplicitSelfExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AImplicitSelfExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +{ /* Inline parser_prod#AImplicitSelfExpr#visit_all (self,p0) on */ +var_v = p0; +RET_LABEL1:(void)0; } +RET_LABEL:; } -if (unlikely(var_n_assign == NULL)) { +/* method parser_prod#ATrueExpr#init_atrueexpr for (self: ATrueExpr, nullable TKwtrue, nullable AAnnotations) */ +void parser_prod__ATrueExpr__init_atrueexpr(val* self, val* p0, val* p1) { +val* var_n_kwtrue /* var n_kwtrue: nullable TKwtrue */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_kwtrue = p0; +var_n_annotations = p1; +if (unlikely(var_n_kwtrue == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4856); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5197); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { +self->attrs[COLOR_parser_nodes__ATrueExpr___n_kwtrue].val = var_n_kwtrue; /* _n_kwtrue on */ +if (var_n_kwtrue == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4857); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5198); show_backtrace(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_kwtrue,self) on */ +if (unlikely(var_n_kwtrue == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_assign->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; -} +var_n_kwtrue->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4858); -show_backtrace(1); } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4859); -show_backtrace(1); +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var2 = 1; /* arg is null and recv is not */ } -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; +} +var7 = !var5; +var3 = var7; +goto RET_LABEL4; RET_LABEL4:(void)0; } +var2 = var3; +} +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; +} +} +} else { } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#init_aattrassignexpr for (self: Object, nullable AExpr, nullable TAttrid, nullable TAssign, nullable AExpr) */ -void VIRTUAL_parser_prod__AAttrAssignExpr__init_aattrassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -parser_prod__AAttrAssignExpr__init_aattrassignexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#AAttrAssignExpr#init_aattrassignexpr on */ +/* method parser_prod#ATrueExpr#init_atrueexpr for (self: Object, nullable TKwtrue, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ATrueExpr__init_atrueexpr(val* self, val* p0, val* p1) { +parser_prod__ATrueExpr__init_atrueexpr(self, p0, p1); /* Direct call parser_prod#ATrueExpr#init_atrueexpr on */ RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#replace_child for (self: AAttrAssignExpr, ANode, nullable ANode) */ -void parser_prod__AAttrAssignExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ATrueExpr#replace_child for (self: ATrueExpr, ANode, nullable ANode) */ +void parser_prod__ATrueExpr__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 /* : TKwtrue */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -4313,7 +5535,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TAttrid */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -4322,37 +5544,19 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : TAssign */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; -val* var30 /* : AExpr */; -short int var31 /* : Bool */; -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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__ATrueExpr___n_kwtrue].val; /* _n_kwtrue on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4864); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwtrue"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5205); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -4366,9 +5570,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TKwtrue */ +cltype = type_parser_nodes__TKwtrue.color; +idtype = type_parser_nodes__TKwtrue.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -4380,27 +5584,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4865); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwtrue", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5206); show_backtrace(1); } { -parser_prod__AAttrAssignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_expr= on */ +parser_prod__ATrueExpr__n_kwtrue_61d(self, var_new_child); /* Direct call parser_prod#ATrueExpr#n_kwtrue= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4868); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -4414,11 +5615,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa TAttrid */ -cltype16 = type_parser_nodes__TAttrid.color; -idtype17 = type_parser_nodes__TAttrid.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -4428,348 +5629,191 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAttrid", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4869); -show_backtrace(1); -} -{ -parser_prod__AAttrAssignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_id= on */ -} -goto RET_LABEL; -} else { -} -var19 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4872); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; -} -} -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -var20 = var21; -} -if (var20){ -/* isa TAssign */ -cltype27 = type_parser_nodes__TAssign.color; -idtype28 = type_parser_nodes__TAssign.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; -} else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} -} -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4873); -show_backtrace(1); -} -{ -parser_prod__AAttrAssignExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_assign= on */ -} -goto RET_LABEL; -} else { -} -var30 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4876); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var30,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ -var36 = var30 == var_other; -var34 = var36; -goto RET_LABEL35; -RET_LABEL35:(void)0; -} -} -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; -} -var31 = var32; -} -if (var31){ -/* isa AExpr */ -cltype38 = type_parser_nodes__AExpr.color; -idtype39 = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var37 = 0; -} else { -if(cltype38 >= var_new_child->type->table_size) { -var37 = 0; -} else { -var37 = var_new_child->type->type_table[cltype38] == idtype39; -} -} -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`", "AExpr", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4877); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5210); show_backtrace(1); } { -parser_prod__AAttrAssignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AAttrAssignExpr#n_value= on */ +parser_prod__ATrueExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ATrueExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AAttrAssignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AAttrAssignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AAttrAssignExpr#replace_child on */ +/* method parser_prod#ATrueExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ATrueExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ATrueExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ATrueExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#n_expr= for (self: AAttrAssignExpr, AExpr) */ -void parser_prod__AAttrAssignExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ATrueExpr#n_kwtrue= for (self: ATrueExpr, TKwtrue) */ +void parser_prod__ATrueExpr__n_kwtrue_61d(val* self, val* p0) { +val* var_node /* var node: TKwtrue */; var_node = p0; -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ATrueExpr___n_kwtrue].val = var_node; /* _n_kwtrue on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AAttrAssignExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AAttrAssignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AAttrAssignExpr#n_expr= on */ +/* method parser_prod#ATrueExpr#n_kwtrue= for (self: Object, TKwtrue) */ +void VIRTUAL_parser_prod__ATrueExpr__n_kwtrue_61d(val* self, val* p0) { +parser_prod__ATrueExpr__n_kwtrue_61d(self, p0); /* Direct call parser_prod#ATrueExpr#n_kwtrue= on */ RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#n_id= for (self: AAttrAssignExpr, TAttrid) */ -void parser_prod__AAttrAssignExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TAttrid */; +/* method parser_prod#ATrueExpr#n_annotations= for (self: ATrueExpr, nullable AAnnotations) */ +void parser_prod__ATrueExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAttrAssignExpr#n_id= for (self: Object, TAttrid) */ -void VIRTUAL_parser_prod__AAttrAssignExpr__n_id_61d(val* self, val* p0) { -parser_prod__AAttrAssignExpr__n_id_61d(self, p0); /* Direct call parser_prod#AAttrAssignExpr#n_id= on */ -RET_LABEL:; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +var = NULL; +if (var_node == NULL) { +var1 = 0; /* is null */ +} else { +var1 = 1; /* arg is null and recv is not */ } -/* method parser_prod#AAttrAssignExpr#n_assign= for (self: AAttrAssignExpr, TAssign) */ -void parser_prod__AAttrAssignExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +if (0) { +{ /* Inline kernel#Object#!= (var_node,var) on */ +var_other = var; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; } -RET_LABEL:; +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -/* method parser_prod#AAttrAssignExpr#n_assign= for (self: Object, TAssign) */ -void VIRTUAL_parser_prod__AAttrAssignExpr__n_assign_61d(val* self, val* p0) { -parser_prod__AAttrAssignExpr__n_assign_61d(self, p0); /* Direct call parser_prod#AAttrAssignExpr#n_assign= on */ -RET_LABEL:; +var1 = var2; } -/* method parser_prod#AAttrAssignExpr#n_value= for (self: AAttrAssignExpr, AExpr) */ -void parser_prod__AAttrAssignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ +if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} } +} else { } RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AAttrAssignExpr__n_value_61d(val* self, val* p0) { -parser_prod__AAttrAssignExpr__n_value_61d(self, p0); /* Direct call parser_prod#AAttrAssignExpr#n_value= on */ +/* method parser_prod#ATrueExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ATrueExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__ATrueExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ATrueExpr#n_annotations= on */ RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#visit_all for (self: AAttrAssignExpr, Visitor) */ -void parser_prod__AAttrAssignExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ATrueExpr#visit_all for (self: ATrueExpr, Visitor) */ +void parser_prod__ATrueExpr__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* var /* : TKwtrue */; +val* var1 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__ATrueExpr___n_kwtrue].val; /* _n_kwtrue on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4906); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwtrue"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5229); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4907); -show_backtrace(1); -} +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4908); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4909); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#AAttrAssignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AAttrAssignExpr__visit_all(val* self, val* p0) { -parser_prod__AAttrAssignExpr__visit_all(self, p0); /* Direct call parser_prod#AAttrAssignExpr#visit_all on */ +/* method parser_prod#ATrueExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ATrueExpr__visit_all(val* self, val* p0) { +parser_prod__ATrueExpr__visit_all(self, p0); /* Direct call parser_prod#ATrueExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#init_aattrreassignexpr for (self: AAttrReassignExpr, nullable AExpr, nullable TAttrid, nullable AAssignOp, nullable AExpr) */ -void 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; -if (unlikely(var_n_expr == NULL)) { +/* method parser_prod#AFalseExpr#init_afalseexpr for (self: AFalseExpr, nullable TKwfalse, nullable AAnnotations) */ +void parser_prod__AFalseExpr__init_afalseexpr(val* self, val* p0, val* p1) { +val* var_n_kwfalse /* var n_kwfalse: nullable TKwfalse */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_kwfalse = p0; +var_n_annotations = p1; +if (unlikely(var_n_kwfalse == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4920); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5239); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_parser_nodes__AFalseExpr___n_kwfalse].val = var_n_kwfalse; /* _n_kwfalse on */ +if (var_n_kwfalse == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4921); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5240); show_backtrace(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_kwfalse,self) on */ +if (unlikely(var_n_kwfalse == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_kwfalse->attrs[COLOR_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", "src/parser/parser_prod.nit", 4922); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4923); -show_backtrace(1); +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var2 = 1; /* arg is null and recv is not */ } -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -if (unlikely(var_n_assign_op == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4924); -show_backtrace(1); +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; } -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4925); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ -if (unlikely(var_n_assign_op == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var_n_assign_op->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +var2 = var3; } +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4926); -show_backtrace(1); } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4927); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL4:(void)0; -} } RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#init_aattrreassignexpr for (self: Object, nullable AExpr, nullable TAttrid, nullable AAssignOp, nullable AExpr) */ -void VIRTUAL_parser_prod__AAttrReassignExpr__init_aattrreassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -parser_prod__AAttrReassignExpr__init_aattrreassignexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#AAttrReassignExpr#init_aattrreassignexpr on */ +/* method parser_prod#AFalseExpr#init_afalseexpr for (self: Object, nullable TKwfalse, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AFalseExpr__init_afalseexpr(val* self, val* p0, val* p1) { +parser_prod__AFalseExpr__init_afalseexpr(self, p0, p1); /* Direct call parser_prod#AFalseExpr#init_afalseexpr on */ RET_LABEL:; } -/* method parser_prod#AAttrReassignExpr#replace_child for (self: AAttrReassignExpr, ANode, nullable ANode) */ -void parser_prod__AAttrReassignExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AFalseExpr#replace_child for (self: AFalseExpr, ANode, nullable ANode) */ +void parser_prod__AFalseExpr__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 /* : TKwfalse */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -4779,7 +5823,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TAttrid */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -4788,37 +5832,19 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : AAssignOp */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; -val* var30 /* : AExpr */; -short int var31 /* : Bool */; -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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AFalseExpr___n_kwfalse].val; /* _n_kwfalse on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4932); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwfalse"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5247); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -4832,9 +5858,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TKwfalse */ +cltype = type_parser_nodes__TKwfalse.color; +idtype = type_parser_nodes__TKwfalse.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -4846,27 +5872,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 4933); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwfalse", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5248); show_backtrace(1); } { -parser_prod__AAttrReassignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_expr= on */ +parser_prod__AFalseExpr__n_kwfalse_61d(self, var_new_child); /* Direct call parser_prod#AFalseExpr#n_kwfalse= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4936); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -4880,11 +5903,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa TAttrid */ -cltype16 = type_parser_nodes__TAttrid.color; -idtype17 = type_parser_nodes__TAttrid.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -4893,1754 +5916,45 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } } if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAttrid", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4937); -show_backtrace(1); -} -{ -parser_prod__AAttrReassignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_id= on */ -} -goto RET_LABEL; -} else { -} -var19 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4940); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; -} -} -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -var20 = var21; -} -if (var20){ -/* isa AAssignOp */ -cltype27 = type_parser_nodes__AAssignOp.color; -idtype28 = type_parser_nodes__AAssignOp.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; -} else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} -} -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4941); -show_backtrace(1); -} -{ -parser_prod__AAttrReassignExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_assign_op= on */ -} -goto RET_LABEL; -} else { -} -var30 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4944); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var30,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ -var36 = var30 == var_other; -var34 = var36; -goto RET_LABEL35; -RET_LABEL35:(void)0; -} -} -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; -} -var31 = var32; -} -if (var31){ -/* isa AExpr */ -cltype38 = type_parser_nodes__AExpr.color; -idtype39 = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var37 = 0; -} else { -if(cltype38 >= var_new_child->type->table_size) { -var37 = 0; -} else { -var37 = var_new_child->type->type_table[cltype38] == idtype39; -} -} -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`", "AExpr", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4945); -show_backtrace(1); -} -{ -parser_prod__AAttrReassignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AAttrReassignExpr#n_value= on */ -} -goto RET_LABEL; -} else { -} -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AAttrReassignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AAttrReassignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AAttrReassignExpr#replace_child on */ -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_expr= for (self: AAttrReassignExpr, AExpr) */ -void parser_prod__AAttrReassignExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AAttrReassignExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AAttrReassignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AAttrReassignExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_id= for (self: AAttrReassignExpr, TAttrid) */ -void parser_prod__AAttrReassignExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TAttrid */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_id= for (self: Object, TAttrid) */ -void VIRTUAL_parser_prod__AAttrReassignExpr__n_id_61d(val* self, val* p0) { -parser_prod__AAttrReassignExpr__n_id_61d(self, p0); /* Direct call parser_prod#AAttrReassignExpr#n_id= on */ -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_assign_op= for (self: AAttrReassignExpr, AAssignOp) */ -void parser_prod__AAttrReassignExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; -var_node = p0; -self->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_assign_op= for (self: Object, AAssignOp) */ -void VIRTUAL_parser_prod__AAttrReassignExpr__n_assign_op_61d(val* self, val* p0) { -parser_prod__AAttrReassignExpr__n_assign_op_61d(self, p0); /* Direct call parser_prod#AAttrReassignExpr#n_assign_op= on */ -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_value= for (self: AAttrReassignExpr, AExpr) */ -void parser_prod__AAttrReassignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AAttrReassignExpr__n_value_61d(val* self, val* p0) { -parser_prod__AAttrReassignExpr__n_value_61d(self, p0); /* Direct call parser_prod#AAttrReassignExpr#n_value= on */ -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#visit_all for (self: AAttrReassignExpr, Visitor) */ -void parser_prod__AAttrReassignExpr__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : TAttrid */; -val* var2 /* : AAssignOp */; -val* var3 /* : AExpr */; -var_v = p0; -var = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_expr].val; /* _n_expr on */ -if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4974); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_parser_nodes__AAttrFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4975); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4976); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4977); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#AAttrReassignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AAttrReassignExpr__visit_all(val* self, val* p0) { -parser_prod__AAttrReassignExpr__visit_all(self, p0); /* Direct call parser_prod#AAttrReassignExpr#visit_all on */ -RET_LABEL:; -} -/* method parser_prod#ACallExpr#init_acallexpr for (self: ACallExpr, nullable AExpr, nullable TId, nullable AExprs) */ -void 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; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4987); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4988); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_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", "src/parser/parser_prod.nit", 4989); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4990); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 4991); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__ACallFormExpr___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", "src/parser/parser_prod.nit", 4992); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallExpr#init_acallexpr for (self: Object, nullable AExpr, nullable TId, nullable AExprs) */ -void VIRTUAL_parser_prod__ACallExpr__init_acallexpr(val* self, val* p0, val* p1, val* p2) { -parser_prod__ACallExpr__init_acallexpr(self, p0, p1, p2); /* Direct call parser_prod#ACallExpr#init_acallexpr on */ -RET_LABEL:; -} -/* method parser_prod#ACallExpr#replace_child for (self: ACallExpr, ANode, nullable ANode) */ -void parser_prod__ACallExpr__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 */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var8 /* : TId */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; -val* var19 /* : AExprs */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 4997); -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 */ -var6 = var == var_other; -var4 = var6; -goto RET_LABEL5; -RET_LABEL5:(void)0; -} -} -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var7 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var7 = 0; -} else { -var7 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var7)) { -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", "src/parser/parser_prod.nit", 4998); -show_backtrace(1); -} -{ -parser_prod__ACallExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACallExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -var8 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5001); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; -} -} -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -var9 = var10; -} -if (var9){ -/* isa TId */ -cltype16 = type_parser_nodes__TId.color; -idtype17 = type_parser_nodes__TId.id; -if(var_new_child == NULL) { -var15 = 0; -} else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; -} else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; -} -} -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5002); -show_backtrace(1); -} -{ -parser_prod__ACallExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ACallExpr#n_id= on */ -} -goto RET_LABEL; -} else { -} -var19 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5005); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; -} -} -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -var20 = var21; -} -if (var20){ -/* isa AExprs */ -cltype27 = type_parser_nodes__AExprs.color; -idtype28 = type_parser_nodes__AExprs.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; -} else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} -} -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5006); -show_backtrace(1); -} -{ -parser_prod__ACallExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ACallExpr#n_args= on */ -} -goto RET_LABEL; -} else { -} -RET_LABEL:; -} -/* method parser_prod#ACallExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ACallExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ACallExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ACallExpr#replace_child on */ -RET_LABEL:; -} -/* method parser_prod#ACallExpr#n_expr= for (self: ACallExpr, AExpr) */ -void parser_prod__ACallExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ACallExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ACallExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ACallExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#ACallExpr#n_id= for (self: ACallExpr, TId) */ -void parser_prod__ACallExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallExpr#n_id= for (self: Object, TId) */ -void VIRTUAL_parser_prod__ACallExpr__n_id_61d(val* self, val* p0) { -parser_prod__ACallExpr__n_id_61d(self, p0); /* Direct call parser_prod#ACallExpr#n_id= on */ -RET_LABEL:; -} -/* method parser_prod#ACallExpr#n_args= for (self: ACallExpr, AExprs) */ -void parser_prod__ACallExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ACallExpr__n_args_61d(val* self, val* p0) { -parser_prod__ACallExpr__n_args_61d(self, p0); /* Direct call parser_prod#ACallExpr#n_args= on */ -RET_LABEL:; -} -/* method parser_prod#ACallExpr#visit_all for (self: ACallExpr, Visitor) */ -void parser_prod__ACallExpr__visit_all(val* self, val* p0) { -val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : TId */; -val* var2 /* : AExprs */; -var_v = p0; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5030); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5031); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5032); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#ACallExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ACallExpr__visit_all(val* self, val* p0) { -parser_prod__ACallExpr__visit_all(self, p0); /* Direct call parser_prod#ACallExpr#visit_all on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#init_acallassignexpr for (self: ACallAssignExpr, nullable AExpr, nullable TId, nullable AExprs, nullable TAssign, nullable AExpr) */ -void parser_prod__ACallAssignExpr__init_acallassignexpr(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 /* var n_assign: nullable TAssign */; -val* var_n_value /* var n_value: nullable AExpr */; -var_n_expr = p0; -var_n_id = p1; -var_n_args = p2; -var_n_assign = p3; -var_n_value = p4; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5044); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5045); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_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", "src/parser/parser_prod.nit", 5046); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5047); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5048); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__ACallFormExpr___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", "src/parser/parser_prod.nit", 5049); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; -} -} -if (unlikely(var_n_assign == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5050); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5051); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -if (unlikely(var_n_assign == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_assign->attrs[COLOR_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", "src/parser/parser_prod.nit", 5052); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5053); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL5:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#init_acallassignexpr for (self: Object, nullable AExpr, nullable TId, nullable AExprs, nullable TAssign, nullable AExpr) */ -void VIRTUAL_parser_prod__ACallAssignExpr__init_acallassignexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { -parser_prod__ACallAssignExpr__init_acallassignexpr(self, p0, p1, p2, p3, p4); /* Direct call parser_prod#ACallAssignExpr#init_acallassignexpr on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#replace_child for (self: ACallAssignExpr, ANode, nullable ANode) */ -void parser_prod__ACallAssignExpr__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 */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var8 /* : TId */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; -val* var19 /* : AExprs */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; -val* var30 /* : TAssign */; -short int var31 /* : Bool */; -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 /* : 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; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5058); -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 */ -var6 = var == var_other; -var4 = var6; -goto RET_LABEL5; -RET_LABEL5:(void)0; -} -} -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var7 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var7 = 0; -} else { -var7 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var7)) { -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", "src/parser/parser_prod.nit", 5059); -show_backtrace(1); -} -{ -parser_prod__ACallAssignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -var8 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5062); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; -} -} -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -var9 = var10; -} -if (var9){ -/* isa TId */ -cltype16 = type_parser_nodes__TId.color; -idtype17 = type_parser_nodes__TId.id; -if(var_new_child == NULL) { -var15 = 0; -} else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; -} else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; -} -} -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5063); -show_backtrace(1); -} -{ -parser_prod__ACallAssignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_id= on */ -} -goto RET_LABEL; -} else { -} -var19 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5066); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; -} -} -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -var20 = var21; -} -if (var20){ -/* isa AExprs */ -cltype27 = type_parser_nodes__AExprs.color; -idtype28 = type_parser_nodes__AExprs.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; -} else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} -} -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5067); -show_backtrace(1); -} -{ -parser_prod__ACallAssignExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_args= on */ -} -goto RET_LABEL; -} else { -} -var30 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5070); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var30,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ -var36 = var30 == var_other; -var34 = var36; -goto RET_LABEL35; -RET_LABEL35:(void)0; -} -} -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; -} -var31 = var32; -} -if (var31){ -/* isa TAssign */ -cltype38 = type_parser_nodes__TAssign.color; -idtype39 = type_parser_nodes__TAssign.id; -if(var_new_child == NULL) { -var37 = 0; -} else { -if(cltype38 >= var_new_child->type->table_size) { -var37 = 0; -} else { -var37 = var_new_child->type->type_table[cltype38] == idtype39; -} -} -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`", "TAssign", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5071); -show_backtrace(1); -} -{ -parser_prod__ACallAssignExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_assign= on */ -} -goto RET_LABEL; -} else { -} -var41 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var41 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5074); -show_backtrace(1); -} -{ -{ /* 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 AExpr */ -cltype49 = type_parser_nodes__AExpr.color; -idtype50 = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var48 = 0; -} 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`", "AExpr", var_class_name51); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5075); -show_backtrace(1); -} -{ -parser_prod__ACallAssignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ACallAssignExpr#n_value= on */ -} -goto RET_LABEL; -} else { -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ACallAssignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ACallAssignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ACallAssignExpr#replace_child on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_expr= for (self: ACallAssignExpr, AExpr) */ -void parser_prod__ACallAssignExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ACallAssignExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ACallAssignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ACallAssignExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_id= for (self: ACallAssignExpr, TId) */ -void parser_prod__ACallAssignExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_id= for (self: Object, TId) */ -void VIRTUAL_parser_prod__ACallAssignExpr__n_id_61d(val* self, val* p0) { -parser_prod__ACallAssignExpr__n_id_61d(self, p0); /* Direct call parser_prod#ACallAssignExpr#n_id= on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_args= for (self: ACallAssignExpr, AExprs) */ -void parser_prod__ACallAssignExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ACallAssignExpr__n_args_61d(val* self, val* p0) { -parser_prod__ACallAssignExpr__n_args_61d(self, p0); /* Direct call parser_prod#ACallAssignExpr#n_args= on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_assign= for (self: ACallAssignExpr, TAssign) */ -void parser_prod__ACallAssignExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_assign= for (self: Object, TAssign) */ -void VIRTUAL_parser_prod__ACallAssignExpr__n_assign_61d(val* self, val* p0) { -parser_prod__ACallAssignExpr__n_assign_61d(self, p0); /* Direct call parser_prod#ACallAssignExpr#n_assign= on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_value= for (self: ACallAssignExpr, AExpr) */ -void parser_prod__ACallAssignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ACallAssignExpr__n_value_61d(val* self, val* p0) { -parser_prod__ACallAssignExpr__n_value_61d(self, p0); /* Direct call parser_prod#ACallAssignExpr#n_value= on */ -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#visit_all for (self: ACallAssignExpr, Visitor) */ -void parser_prod__ACallAssignExpr__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 */; -var_v = p0; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5109); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5110); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5111); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5112); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var4 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5113); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -RET_LABEL:; -} -/* method parser_prod#ACallAssignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ACallAssignExpr__visit_all(val* self, val* p0) { -parser_prod__ACallAssignExpr__visit_all(self, p0); /* Direct call parser_prod#ACallAssignExpr#visit_all on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#init_acallreassignexpr for (self: ACallReassignExpr, nullable AExpr, nullable TId, nullable AExprs, nullable AAssignOp, nullable AExpr) */ -void 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; -if (unlikely(var_n_expr == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5125); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5126); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_expr->attrs[COLOR_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", "src/parser/parser_prod.nit", 5127); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5128); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5129); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__ACallFormExpr___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", "src/parser/parser_prod.nit", 5130); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; -} -} -if (unlikely(var_n_assign_op == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5131); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5132); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ -if (unlikely(var_n_assign_op == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_assign_op->attrs[COLOR_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", "src/parser/parser_prod.nit", 5133); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5134); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL5:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#init_acallreassignexpr for (self: Object, nullable AExpr, nullable TId, nullable AExprs, nullable AAssignOp, nullable AExpr) */ -void VIRTUAL_parser_prod__ACallReassignExpr__init_acallreassignexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { -parser_prod__ACallReassignExpr__init_acallreassignexpr(self, p0, p1, p2, p3, p4); /* Direct call parser_prod#ACallReassignExpr#init_acallreassignexpr on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#replace_child for (self: ACallReassignExpr, ANode, nullable ANode) */ -void parser_prod__ACallReassignExpr__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 */; -short int var2 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var4 /* : Bool */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var8 /* : TId */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; -val* var19 /* : AExprs */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; -val* var30 /* : AAssignOp */; -short int var31 /* : Bool */; -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 /* : 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; -var_old_child = p0; -var_new_child = p1; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5139); -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 */ -var6 = var == var_other; -var4 = var6; -goto RET_LABEL5; -RET_LABEL5:(void)0; -} -} -var2 = var4; -goto RET_LABEL3; -RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var7 = 0; -} else { -if(cltype >= var_new_child->type->table_size) { -var7 = 0; -} else { -var7 = var_new_child->type->type_table[cltype] == idtype; -} -} -if (unlikely(!var7)) { -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", "src/parser/parser_prod.nit", 5140); -show_backtrace(1); -} -{ -parser_prod__ACallReassignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_expr= on */ -} -goto RET_LABEL; -} else { -} -var8 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5143); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; -} -} -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; -} -var9 = var10; -} -if (var9){ -/* isa TId */ -cltype16 = type_parser_nodes__TId.color; -idtype17 = type_parser_nodes__TId.id; -if(var_new_child == NULL) { -var15 = 0; -} else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; -} else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; -} -} -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TId", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5144); -show_backtrace(1); -} -{ -parser_prod__ACallReassignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_id= on */ -} -goto RET_LABEL; -} else { -} -var19 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5147); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; -} -} -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -var20 = var21; -} -if (var20){ -/* isa AExprs */ -cltype27 = type_parser_nodes__AExprs.color; -idtype28 = type_parser_nodes__AExprs.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; -} else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} -} -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5148); -show_backtrace(1); -} -{ -parser_prod__ACallReassignExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_args= on */ -} -goto RET_LABEL; -} else { -} -var30 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ -if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5151); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var30,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ -var36 = var30 == var_other; -var34 = var36; -goto RET_LABEL35; -RET_LABEL35:(void)0; -} -} -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; -} -var31 = var32; -} -if (var31){ -/* isa AAssignOp */ -cltype38 = type_parser_nodes__AAssignOp.color; -idtype39 = type_parser_nodes__AAssignOp.id; -if(var_new_child == NULL) { -var37 = 0; -} else { -if(cltype38 >= var_new_child->type->table_size) { -var37 = 0; -} else { -var37 = var_new_child->type->type_table[cltype38] == idtype39; -} -} -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`", "AAssignOp", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5152); -show_backtrace(1); -} -{ -parser_prod__ACallReassignExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_assign_op= on */ -} -goto RET_LABEL; -} else { -} -var41 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var41 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5155); -show_backtrace(1); -} -{ -{ /* 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 AExpr */ -cltype49 = type_parser_nodes__AExpr.color; -idtype50 = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var48 = 0; -} 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`", "AExpr", var_class_name51); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5156); -show_backtrace(1); -} -{ -parser_prod__ACallReassignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ACallReassignExpr#n_value= on */ -} -goto RET_LABEL; -} else { -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ACallReassignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ACallReassignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ACallReassignExpr#replace_child on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_expr= for (self: ACallReassignExpr, AExpr) */ -void parser_prod__ACallReassignExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ACallReassignExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ACallReassignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_expr= on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_id= for (self: ACallReassignExpr, TId) */ -void parser_prod__ACallReassignExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_id= for (self: Object, TId) */ -void VIRTUAL_parser_prod__ACallReassignExpr__n_id_61d(val* self, val* p0) { -parser_prod__ACallReassignExpr__n_id_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_id= on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_args= for (self: ACallReassignExpr, AExprs) */ -void parser_prod__ACallReassignExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ACallReassignExpr__n_args_61d(val* self, val* p0) { -parser_prod__ACallReassignExpr__n_args_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_args= on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_assign_op= for (self: ACallReassignExpr, AAssignOp) */ -void parser_prod__ACallReassignExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; -var_node = p0; -self->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_assign_op= for (self: Object, AAssignOp) */ -void VIRTUAL_parser_prod__ACallReassignExpr__n_assign_op_61d(val* self, val* p0) { -parser_prod__ACallReassignExpr__n_assign_op_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_assign_op= on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_value= for (self: ACallReassignExpr, AExpr) */ -void parser_prod__ACallReassignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ACallReassignExpr__n_value_61d(val* self, val* p0) { -parser_prod__ACallReassignExpr__n_value_61d(self, p0); /* Direct call parser_prod#ACallReassignExpr#n_value= on */ -RET_LABEL:; -} -/* method parser_prod#ACallReassignExpr#visit_all for (self: ACallReassignExpr, Visitor) */ -void parser_prod__ACallReassignExpr__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 */; -var_v = p0; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5190); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5191); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5192); +var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5252); show_backtrace(1); } { -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +parser_prod__AFalseExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AFalseExpr#n_annotations= on */ } -var3 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5193); -show_backtrace(1); +goto RET_LABEL; +} else { } -{ -parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +RET_LABEL:; } -var4 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5194); -show_backtrace(1); +/* method parser_prod#AFalseExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AFalseExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AFalseExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AFalseExpr#replace_child on */ +RET_LABEL:; } +/* method parser_prod#AFalseExpr#n_kwfalse= for (self: AFalseExpr, TKwfalse) */ +void parser_prod__AFalseExpr__n_kwfalse_61d(val* self, val* p0) { +val* var_node /* var node: TKwfalse */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AFalseExpr___n_kwfalse].val = var_node; /* _n_kwfalse on */ { -parser_nodes__Visitor__enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} } RET_LABEL:; } -/* method parser_prod#ACallReassignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ACallReassignExpr__visit_all(val* self, val* p0) { -parser_prod__ACallReassignExpr__visit_all(self, p0); /* Direct call parser_prod#ACallReassignExpr#visit_all on */ +/* method parser_prod#AFalseExpr#n_kwfalse= for (self: Object, TKwfalse) */ +void VIRTUAL_parser_prod__AFalseExpr__n_kwfalse_61d(val* self, val* p0) { +parser_prod__AFalseExpr__n_kwfalse_61d(self, p0); /* Direct call parser_prod#AFalseExpr#n_kwfalse= on */ RET_LABEL:; } -/* method parser_prod#ASuperExpr#init_asuperexpr for (self: ASuperExpr, nullable AQualified, nullable TKwsuper, nullable AExprs) */ -void 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 */; +/* method parser_prod#AFalseExpr#n_annotations= for (self: AFalseExpr, nullable AAnnotations) */ +void parser_prod__AFalseExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; val* var /* : null */; short int var1 /* : Bool */; short int var2 /* : Bool */; @@ -6648,21 +5962,19 @@ val* var_other /* var other: nullable Object */; short int var4 /* : Bool */; short int var5 /* : Bool */; short int var6 /* : Bool */; -var_n_qualified = p0; -var_n_kwsuper = p1; -var_n_args = p2; -self->attrs[COLOR_parser_nodes__ASuperExpr___n_qualified].val = var_n_qualified; /* _n_qualified on */ +var_node = p0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ var = NULL; -if (var_n_qualified == 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_n_qualified,var) on */ +{ /* Inline kernel#Object#!= (var_node,var) on */ var_other = var; { -var5 = ((short int (*)(val*, val*))(var_n_qualified->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_qualified, var_other) /* == on */; +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; var4 = var5; } var6 = !var4; @@ -6674,67 +5986,122 @@ var1 = var2; } if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_qualified,self) on */ -var_n_qualified->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL7:(void)0; } } } else { } -if (unlikely(var_n_kwsuper == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5206); -show_backtrace(1); +RET_LABEL:; } -self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val = var_n_kwsuper; /* _n_kwsuper on */ -if (var_n_kwsuper == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5207); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwsuper,self) on */ -if (unlikely(var_n_kwsuper == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +/* method parser_prod#AFalseExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AFalseExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__AFalseExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#AFalseExpr#n_annotations= on */ +RET_LABEL:; +} +/* method parser_prod#AFalseExpr#visit_all for (self: AFalseExpr, Visitor) */ +void parser_prod__AFalseExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TKwfalse */; +val* var1 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__AFalseExpr___n_kwfalse].val; /* _n_kwfalse on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwfalse"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5271); show_backtrace(1); } -var_n_kwsuper->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL8:(void)0; +{ +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -if (unlikely(var_n_args == NULL)) { +RET_LABEL:; +} +/* method parser_prod#AFalseExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AFalseExpr__visit_all(val* self, val* p0) { +parser_prod__AFalseExpr__visit_all(self, p0); /* Direct call parser_prod#AFalseExpr#visit_all on */ +RET_LABEL:; +} +/* method parser_prod#ANullExpr#init_anullexpr for (self: ANullExpr, nullable TKwnull, nullable AAnnotations) */ +void parser_prod__ANullExpr__init_anullexpr(val* self, val* p0, val* p1) { +val* var_n_kwnull /* var n_kwnull: nullable TKwnull */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_kwnull = p0; +var_n_annotations = p1; +if (unlikely(var_n_kwnull == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5208); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5281); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val = var_n_args; /* _n_args on */ -if (var_n_args == NULL) { +self->attrs[COLOR_parser_nodes__ANullExpr___n_kwnull].val = var_n_kwnull; /* _n_kwnull on */ +if (var_n_kwnull == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5209); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5282); show_backtrace(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_kwnull,self) on */ +if (unlikely(var_n_kwnull == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL9:(void)0; +var_n_kwnull->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ +} else { +var2 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; +} +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; +} +var2 = var3; +} +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#ASuperExpr#init_asuperexpr for (self: Object, nullable AQualified, nullable TKwsuper, nullable AExprs) */ -void VIRTUAL_parser_prod__ASuperExpr__init_asuperexpr(val* self, val* p0, val* p1, val* p2) { -parser_prod__ASuperExpr__init_asuperexpr(self, p0, p1, p2); /* Direct call parser_prod#ASuperExpr#init_asuperexpr on */ +/* method parser_prod#ANullExpr#init_anullexpr for (self: Object, nullable TKwnull, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ANullExpr__init_anullexpr(val* self, val* p0, val* p1) { +parser_prod__ANullExpr__init_anullexpr(self, p0, p1); /* Direct call parser_prod#ANullExpr#init_anullexpr on */ RET_LABEL:; } -/* method parser_prod#ASuperExpr#replace_child for (self: ASuperExpr, ANode, nullable ANode) */ -void parser_prod__ASuperExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ANullExpr#replace_child for (self: ANullExpr, ANode, nullable ANode) */ +void parser_prod__ANullExpr__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 /* : TKwnull */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -6744,7 +6111,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TKwsuper */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -6753,25 +6120,19 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : AExprs */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_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_parser_nodes__ANullExpr___n_kwnull].val; /* _n_kwnull on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnull"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5289); +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 */ +{ /* Inline kernel#Object#is_same_instance (var,var_other) on */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -6785,11 +6146,11 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa nullable AQualified */ -cltype = type_nullable_parser_nodes__AQualified.color; -idtype = type_nullable_parser_nodes__AQualified.id; +/* isa TKwnull */ +cltype = type_parser_nodes__TKwnull.color; +idtype = type_parser_nodes__TKwnull.id; if(var_new_child == NULL) { -var7 = 1; +var7 = 0; } else { if(cltype >= var_new_child->type->table_size) { var7 = 0; @@ -6799,27 +6160,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5215); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwnull", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5290); show_backtrace(1); } { -parser_prod__ASuperExpr__n_qualified_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_qualified= on */ +parser_prod__ANullExpr__n_kwnull_61d(self, var_new_child); /* Direct call parser_prod#ANullExpr#n_kwnull= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5218); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -6833,11 +6191,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa TKwsuper */ -cltype16 = type_parser_nodes__TKwsuper.color; -idtype17 = type_parser_nodes__TKwsuper.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -6847,74 +6205,44 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwsuper", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5219); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5294); show_backtrace(1); } { -parser_prod__ASuperExpr__n_kwsuper_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_kwsuper= on */ +parser_prod__ANullExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ANullExpr#n_annotations= on */ } goto RET_LABEL; } else { } -var19 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val; /* _n_args on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5222); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; -} -} -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -var20 = var21; -} -if (var20){ -/* isa AExprs */ -cltype27 = type_parser_nodes__AExprs.color; -idtype28 = type_parser_nodes__AExprs.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; -} else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} +RET_LABEL:; } -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5223); -show_backtrace(1); +/* method parser_prod#ANullExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ANullExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ANullExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ANullExpr#replace_child on */ +RET_LABEL:; } +/* method parser_prod#ANullExpr#n_kwnull= for (self: ANullExpr, TKwnull) */ +void parser_prod__ANullExpr__n_kwnull_61d(val* self, val* p0) { +val* var_node /* var node: TKwnull */; +var_node = p0; +self->attrs[COLOR_parser_nodes__ANullExpr___n_kwnull].val = var_node; /* _n_kwnull on */ { -parser_prod__ASuperExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ASuperExpr#n_args= on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } -goto RET_LABEL; -} else { } RET_LABEL:; } -/* method parser_prod#ASuperExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ASuperExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ASuperExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ASuperExpr#replace_child on */ +/* method parser_prod#ANullExpr#n_kwnull= for (self: Object, TKwnull) */ +void VIRTUAL_parser_prod__ANullExpr__n_kwnull_61d(val* self, val* p0) { +parser_prod__ANullExpr__n_kwnull_61d(self, p0); /* Direct call parser_prod#ANullExpr#n_kwnull= on */ RET_LABEL:; } -/* method parser_prod#ASuperExpr#n_qualified= for (self: ASuperExpr, nullable AQualified) */ -void parser_prod__ASuperExpr__n_qualified_61d(val* self, val* p0) { -val* var_node /* var node: nullable AQualified */; +/* method parser_prod#ANullExpr#n_annotations= for (self: ANullExpr, nullable AAnnotations) */ +void parser_prod__ANullExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; val* var /* : null */; short int var1 /* : Bool */; short int var2 /* : Bool */; @@ -6923,7 +6251,7 @@ short int var4 /* : Bool */; short int var5 /* : Bool */; short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASuperExpr___n_qualified].val = var_node; /* _n_qualified on */ +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ var = NULL; if (var_node == NULL) { var1 = 0; /* is null */ @@ -6931,190 +6259,137 @@ var1 = 0; /* is null */ var1 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ +{ /* Inline kernel#Object#!= (var_node,var) on */ var_other = var; { -var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; var4 = var5; } var6 = !var4; var2 = var6; goto RET_LABEL3; RET_LABEL3:(void)0; -} -var1 = var2; -} -if (var1){ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL7:(void)0; -} -} -} else { -} -RET_LABEL:; -} -/* method parser_prod#ASuperExpr#n_qualified= for (self: Object, nullable AQualified) */ -void VIRTUAL_parser_prod__ASuperExpr__n_qualified_61d(val* self, val* p0) { -parser_prod__ASuperExpr__n_qualified_61d(self, p0); /* Direct call parser_prod#ASuperExpr#n_qualified= on */ -RET_LABEL:; -} -/* method parser_prod#ASuperExpr#n_kwsuper= for (self: ASuperExpr, TKwsuper) */ -void parser_prod__ASuperExpr__n_kwsuper_61d(val* self, val* p0) { -val* var_node /* var node: TKwsuper */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val = var_node; /* _n_kwsuper on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ASuperExpr#n_kwsuper= for (self: Object, TKwsuper) */ -void VIRTUAL_parser_prod__ASuperExpr__n_kwsuper_61d(val* self, val* p0) { -parser_prod__ASuperExpr__n_kwsuper_61d(self, p0); /* Direct call parser_prod#ASuperExpr#n_kwsuper= on */ -RET_LABEL:; -} -/* method parser_prod#ASuperExpr#n_args= for (self: ASuperExpr, AExprs) */ -void parser_prod__ASuperExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val = var_node; /* _n_args on */ +} +var1 = var2; +} +if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#ASuperExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ASuperExpr__n_args_61d(val* self, val* p0) { -parser_prod__ASuperExpr__n_args_61d(self, p0); /* Direct call parser_prod#ASuperExpr#n_args= on */ +/* method parser_prod#ANullExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ANullExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__ANullExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ANullExpr#n_annotations= on */ RET_LABEL:; } -/* method parser_prod#ASuperExpr#visit_all for (self: ASuperExpr, Visitor) */ -void parser_prod__ASuperExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ANullExpr#visit_all for (self: ANullExpr, Visitor) */ +void parser_prod__ANullExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : nullable AQualified */; -val* var1 /* : TKwsuper */; -val* var2 /* : AExprs */; +val* var /* : TKwnull */; +val* var1 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASuperExpr___n_qualified].val; /* _n_qualified on */ -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val; /* _n_kwsuper on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwsuper"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5248); +var = self->attrs[COLOR_parser_nodes__ANullExpr___n_kwnull].val; /* _n_kwnull on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwnull"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5313); show_backtrace(1); } { -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val; /* _n_args on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5249); -show_backtrace(1); +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ASuperExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ASuperExpr__visit_all(val* self, val* p0) { -parser_prod__ASuperExpr__visit_all(self, p0); /* Direct call parser_prod#ASuperExpr#visit_all on */ +/* method parser_prod#ANullExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ANullExpr__visit_all(val* self, val* p0) { +parser_prod__ANullExpr__visit_all(self, p0); /* Direct call parser_prod#ANullExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AInitExpr#init_ainitexpr for (self: AInitExpr, nullable AExpr, nullable TKwinit, nullable AExprs) */ -void parser_prod__AInitExpr__init_ainitexpr(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 */; -var_n_expr = p0; -var_n_kwinit = p1; -var_n_args = p2; -if (unlikely(var_n_expr == NULL)) { +/* method parser_prod#ADecIntExpr#init_adecintexpr for (self: ADecIntExpr, nullable TNumber, nullable AAnnotations) */ +void parser_prod__ADecIntExpr__init_adecintexpr(val* self, val* p0, val* p1) { +val* var_n_number /* var n_number: nullable TNumber */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_number = p0; +var_n_annotations = p1; +if (unlikely(var_n_number == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5259); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5323); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_parser_nodes__ADecIntExpr___n_number].val = var_n_number; /* _n_number on */ +if (var_n_number == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5260); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5324); show_backtrace(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_number,self) on */ +if (unlikely(var_n_number == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_number->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_kwinit == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5261); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val = var_n_kwinit; /* _n_kwinit on */ -if (var_n_kwinit == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5262); -show_backtrace(1); +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_kwinit,self) on */ -if (unlikely(var_n_kwinit == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var2 = 1; /* arg is null and recv is not */ } -var_n_kwinit->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; } +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -if (unlikely(var_n_args == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5263); -show_backtrace(1); +var2 = var3; } -self->attrs[COLOR_parser_nodes__AInitExpr___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", "src/parser/parser_prod.nit", 5264); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; } +} else { } RET_LABEL:; } -/* method parser_prod#AInitExpr#init_ainitexpr for (self: Object, nullable AExpr, nullable TKwinit, nullable AExprs) */ -void VIRTUAL_parser_prod__AInitExpr__init_ainitexpr(val* self, val* p0, val* p1, val* p2) { -parser_prod__AInitExpr__init_ainitexpr(self, p0, p1, p2); /* Direct call parser_prod#AInitExpr#init_ainitexpr on */ +/* method parser_prod#ADecIntExpr#init_adecintexpr for (self: Object, nullable TNumber, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ADecIntExpr__init_adecintexpr(val* self, val* p0, val* p1) { +parser_prod__ADecIntExpr__init_adecintexpr(self, p0, p1); /* Direct call parser_prod#ADecIntExpr#init_adecintexpr on */ RET_LABEL:; } -/* method parser_prod#AInitExpr#replace_child for (self: AInitExpr, ANode, nullable ANode) */ -void parser_prod__AInitExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#ADecIntExpr#replace_child for (self: ADecIntExpr, ANode, nullable ANode) */ +void parser_prod__ADecIntExpr__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 /* : TNumber */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -7124,7 +6399,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TKwinit */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -7133,28 +6408,19 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : AExprs */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__ADecIntExpr___n_number].val; /* _n_number on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5269); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_number"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5331); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -7168,9 +6434,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TNumber */ +cltype = type_parser_nodes__TNumber.color; +idtype = type_parser_nodes__TNumber.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -7182,27 +6448,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5270); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TNumber", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5332); show_backtrace(1); } { -parser_prod__AInitExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_expr= on */ +parser_prod__ADecIntExpr__n_number_61d(self, var_new_child); /* Direct call parser_prod#ADecIntExpr#n_number= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val; /* _n_kwinit on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwinit"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5273); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -7216,11 +6479,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa TKwinit */ -cltype16 = type_parser_nodes__TKwinit.color; -idtype17 = type_parser_nodes__TKwinit.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -7230,226 +6493,191 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwinit", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5274); -show_backtrace(1); -} -{ -parser_prod__AInitExpr__n_kwinit_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_kwinit= on */ -} -goto RET_LABEL; -} else { -} -var19 = self->attrs[COLOR_parser_nodes__AInitExpr___n_args].val; /* _n_args on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5277); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; -} -} -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; -} -var20 = var21; -} -if (var20){ -/* isa AExprs */ -cltype27 = type_parser_nodes__AExprs.color; -idtype28 = type_parser_nodes__AExprs.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; -} else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} -} -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5278); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5336); show_backtrace(1); } { -parser_prod__AInitExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#AInitExpr#n_args= on */ +parser_prod__ADecIntExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ADecIntExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AInitExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AInitExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AInitExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AInitExpr#replace_child on */ +/* method parser_prod#ADecIntExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ADecIntExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ADecIntExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ADecIntExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AInitExpr#n_expr= for (self: AInitExpr, AExpr) */ -void parser_prod__AInitExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ADecIntExpr#n_number= for (self: ADecIntExpr, TNumber) */ +void parser_prod__ADecIntExpr__n_number_61d(val* self, val* p0) { +val* var_node /* var node: TNumber */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ADecIntExpr___n_number].val = var_node; /* _n_number on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AInitExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AInitExpr__n_expr_61d(val* self, val* p0) { -parser_prod__AInitExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AInitExpr#n_expr= on */ +/* method parser_prod#ADecIntExpr#n_number= for (self: Object, TNumber) */ +void VIRTUAL_parser_prod__ADecIntExpr__n_number_61d(val* self, val* p0) { +parser_prod__ADecIntExpr__n_number_61d(self, p0); /* Direct call parser_prod#ADecIntExpr#n_number= on */ RET_LABEL:; } -/* method parser_prod#AInitExpr#n_kwinit= for (self: AInitExpr, TKwinit) */ -void parser_prod__AInitExpr__n_kwinit_61d(val* self, val* p0) { -val* var_node /* var node: TKwinit */; +/* method parser_prod#ADecIntExpr#n_annotations= for (self: ADecIntExpr, nullable AAnnotations) */ +void parser_prod__ADecIntExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val = var_node; /* _n_kwinit on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations 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; +{ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; } -RET_LABEL:; +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -/* method parser_prod#AInitExpr#n_kwinit= for (self: Object, TKwinit) */ -void VIRTUAL_parser_prod__AInitExpr__n_kwinit_61d(val* self, val* p0) { -parser_prod__AInitExpr__n_kwinit_61d(self, p0); /* Direct call parser_prod#AInitExpr#n_kwinit= on */ -RET_LABEL:; +var1 = var2; } -/* method parser_prod#AInitExpr#n_args= for (self: AInitExpr, AExprs) */ -void parser_prod__AInitExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AInitExpr___n_args].val = var_node; /* _n_args on */ +if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } } -RET_LABEL:; +} else { } -/* method parser_prod#AInitExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__AInitExpr__n_args_61d(val* self, val* p0) { -parser_prod__AInitExpr__n_args_61d(self, p0); /* Direct call parser_prod#AInitExpr#n_args= on */ RET_LABEL:; } -/* method parser_prod#AInitExpr#visit_all for (self: AInitExpr, Visitor) */ -void parser_prod__AInitExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ADecIntExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ADecIntExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__ADecIntExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ADecIntExpr#n_annotations= on */ +RET_LABEL:; +} +/* method parser_prod#ADecIntExpr#visit_all for (self: ADecIntExpr, Visitor) */ +void parser_prod__ADecIntExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : TKwinit */; -val* var2 /* : AExprs */; +val* var /* : TNumber */; +val* var1 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__ADecIntExpr___n_number].val; /* _n_number on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5302); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_number"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5355); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val; /* _n_kwinit on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwinit"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5303); -show_backtrace(1); -} +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_parser_nodes__AInitExpr___n_args].val; /* _n_args on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5304); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#AInitExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AInitExpr__visit_all(val* self, val* p0) { -parser_prod__AInitExpr__visit_all(self, p0); /* Direct call parser_prod#AInitExpr#visit_all on */ +/* method parser_prod#ADecIntExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ADecIntExpr__visit_all(val* self, val* p0) { +parser_prod__ADecIntExpr__visit_all(self, p0); /* Direct call parser_prod#ADecIntExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#ABraExpr#init_abraexpr for (self: ABraExpr, nullable AExpr, nullable AExprs) */ -void parser_prod__ABraExpr__init_abraexpr(val* self, val* p0, val* p1) { -val* var_n_expr /* var n_expr: nullable AExpr */; -val* var_n_args /* var n_args: nullable AExprs */; -var_n_expr = p0; -var_n_args = p1; -if (unlikely(var_n_expr == NULL)) { +/* method parser_prod#AHexIntExpr#init_ahexintexpr for (self: AHexIntExpr, nullable THexNumber, nullable AAnnotations) */ +void parser_prod__AHexIntExpr__init_ahexintexpr(val* self, val* p0, val* p1) { +val* var_n_hex_number /* var n_hex_number: nullable THexNumber */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_hex_number = p0; +var_n_annotations = p1; +if (unlikely(var_n_hex_number == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5313); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5365); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_parser_nodes__AHexIntExpr___n_hex_number].val = var_n_hex_number; /* _n_hex_number on */ +if (var_n_hex_number == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5314); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5366); show_backtrace(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_hex_number,self) on */ +if (unlikely(var_n_hex_number == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_hex_number->attrs[COLOR_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", "src/parser/parser_prod.nit", 5315); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5316); -show_backtrace(1); +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var2 = 1; /* arg is null and recv is not */ } -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; +} +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; +} +var2 = var3; +} +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#ABraExpr#init_abraexpr for (self: Object, nullable AExpr, nullable AExprs) */ -void VIRTUAL_parser_prod__ABraExpr__init_abraexpr(val* self, val* p0, val* p1) { -parser_prod__ABraExpr__init_abraexpr(self, p0, p1); /* Direct call parser_prod#ABraExpr#init_abraexpr on */ +/* method parser_prod#AHexIntExpr#init_ahexintexpr for (self: Object, nullable THexNumber, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AHexIntExpr__init_ahexintexpr(val* self, val* p0, val* p1) { +parser_prod__AHexIntExpr__init_ahexintexpr(self, p0, p1); /* Direct call parser_prod#AHexIntExpr#init_ahexintexpr on */ RET_LABEL:; } -/* method parser_prod#ABraExpr#replace_child for (self: ABraExpr, ANode, nullable ANode) */ -void parser_prod__ABraExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AHexIntExpr#replace_child for (self: AHexIntExpr, ANode, nullable ANode) */ +void parser_prod__AHexIntExpr__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 /* : THexNumber */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -7459,7 +6687,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExprs */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -7470,17 +6698,17 @@ int idtype17; const char* var_class_name18; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AHexIntExpr___n_hex_number].val; /* _n_hex_number on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5321); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_hex_number"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5373); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -7494,9 +6722,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa THexNumber */ +cltype = type_parser_nodes__THexNumber.color; +idtype = type_parser_nodes__THexNumber.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -7508,27 +6736,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5322); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "THexNumber", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5374); show_backtrace(1); } { -parser_prod__ABraExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraExpr#n_expr= on */ +parser_prod__AHexIntExpr__n_hex_number_61d(self, var_new_child); /* Direct call parser_prod#AHexIntExpr#n_hex_number= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5325); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -7542,11 +6767,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExprs */ -cltype16 = type_parser_nodes__AExprs.color; -idtype17 = type_parser_nodes__AExprs.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -7556,196 +6781,191 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5326); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5378); show_backtrace(1); } { -parser_prod__ABraExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraExpr#n_args= on */ +parser_prod__AHexIntExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AHexIntExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABraExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ABraExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ABraExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ABraExpr#replace_child on */ +/* method parser_prod#AHexIntExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AHexIntExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AHexIntExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AHexIntExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#ABraExpr#n_expr= for (self: ABraExpr, AExpr) */ -void parser_prod__ABraExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AHexIntExpr#n_hex_number= for (self: AHexIntExpr, THexNumber) */ +void parser_prod__AHexIntExpr__n_hex_number_61d(val* self, val* p0) { +val* var_node /* var node: THexNumber */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__AHexIntExpr___n_hex_number].val = var_node; /* _n_hex_number on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ABraExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ABraExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ABraExpr#n_expr= on */ +/* method parser_prod#AHexIntExpr#n_hex_number= for (self: Object, THexNumber) */ +void VIRTUAL_parser_prod__AHexIntExpr__n_hex_number_61d(val* self, val* p0) { +parser_prod__AHexIntExpr__n_hex_number_61d(self, p0); /* Direct call parser_prod#AHexIntExpr#n_hex_number= on */ RET_LABEL:; } -/* method parser_prod#ABraExpr#n_args= for (self: ABraExpr, AExprs) */ -void parser_prod__ABraExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#AHexIntExpr#n_annotations= for (self: AHexIntExpr, nullable AAnnotations) */ +void parser_prod__AHexIntExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations 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; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} } +} else { } RET_LABEL:; } -/* method parser_prod#ABraExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ABraExpr__n_args_61d(val* self, val* p0) { -parser_prod__ABraExpr__n_args_61d(self, p0); /* Direct call parser_prod#ABraExpr#n_args= on */ +/* method parser_prod#AHexIntExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AHexIntExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__AHexIntExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#AHexIntExpr#n_annotations= on */ RET_LABEL:; } -/* method parser_prod#ABraExpr#visit_all for (self: ABraExpr, Visitor) */ -void parser_prod__ABraExpr__visit_all(val* self, val* p0) { +/* method parser_prod#AHexIntExpr#visit_all for (self: AHexIntExpr, Visitor) */ +void parser_prod__AHexIntExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : AExpr */; -val* var1 /* : AExprs */; +val* var /* : THexNumber */; +val* var1 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AHexIntExpr___n_hex_number].val; /* _n_hex_number on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5345); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_hex_number"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5397); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5346); -show_backtrace(1); -} +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ABraExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ABraExpr__visit_all(val* self, val* p0) { -parser_prod__ABraExpr__visit_all(self, p0); /* Direct call parser_prod#ABraExpr#visit_all on */ +/* method parser_prod#AHexIntExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AHexIntExpr__visit_all(val* self, val* p0) { +parser_prod__AHexIntExpr__visit_all(self, p0); /* Direct call parser_prod#AHexIntExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#init_abraassignexpr for (self: ABraAssignExpr, nullable AExpr, nullable AExprs, nullable TAssign, nullable AExpr) */ -void parser_prod__ABraAssignExpr__init_abraassignexpr(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 /* var n_assign: nullable TAssign */; -val* var_n_value /* var n_value: nullable AExpr */; -var_n_expr = p0; -var_n_args = p1; -var_n_assign = p2; -var_n_value = p3; -if (unlikely(var_n_expr == NULL)) { +/* method parser_prod#AFloatExpr#init_afloatexpr for (self: AFloatExpr, nullable TFloat, nullable AAnnotations) */ +void parser_prod__AFloatExpr__init_afloatexpr(val* self, val* p0, val* p1) { +val* var_n_float /* var n_float: nullable TFloat */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_float = p0; +var_n_annotations = p1; +if (unlikely(var_n_float == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5357); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5407); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_parser_nodes__AFloatExpr___n_float].val = var_n_float; /* _n_float on */ +if (var_n_float == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5358); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5408); show_backtrace(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_float,self) on */ +if (unlikely(var_n_float == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_float->attrs[COLOR_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", "src/parser/parser_prod.nit", 5359); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5360); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -if (unlikely(var_n_assign == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5361); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5362); -show_backtrace(1); +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -if (unlikely(var_n_assign == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var2 = 1; /* arg is null and recv is not */ } -var_n_assign->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; } +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5363); -show_backtrace(1); +var2 = var3; } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5364); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL4:(void)0; } +} else { } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#init_abraassignexpr for (self: Object, nullable AExpr, nullable AExprs, nullable TAssign, nullable AExpr) */ -void VIRTUAL_parser_prod__ABraAssignExpr__init_abraassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -parser_prod__ABraAssignExpr__init_abraassignexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#ABraAssignExpr#init_abraassignexpr on */ +/* method parser_prod#AFloatExpr#init_afloatexpr for (self: Object, nullable TFloat, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AFloatExpr__init_afloatexpr(val* self, val* p0, val* p1) { +parser_prod__AFloatExpr__init_afloatexpr(self, p0, p1); /* Direct call parser_prod#AFloatExpr#init_afloatexpr on */ RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#replace_child for (self: ABraAssignExpr, ANode, nullable ANode) */ -void parser_prod__ABraAssignExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AFloatExpr#replace_child for (self: AFloatExpr, ANode, nullable ANode) */ +void parser_prod__AFloatExpr__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 /* : TFloat */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -7755,7 +6975,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExprs */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -7764,37 +6984,19 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : TAssign */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; -val* var30 /* : AExpr */; -short int var31 /* : Bool */; -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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AFloatExpr___n_float].val; /* _n_float on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5369); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_float"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5415); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -7808,9 +7010,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TFloat */ +cltype = type_parser_nodes__TFloat.color; +idtype = type_parser_nodes__TFloat.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -7822,27 +7024,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5370); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TFloat", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5416); show_backtrace(1); } { -parser_prod__ABraAssignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_expr= on */ +parser_prod__AFloatExpr__n_float_61d(self, var_new_child); /* Direct call parser_prod#AFloatExpr#n_float= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5373); -show_backtrace(1); -} -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -7856,11 +7055,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExprs */ -cltype16 = type_parser_nodes__AExprs.color; -idtype17 = type_parser_nodes__AExprs.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -7870,348 +7069,479 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5374); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5420); show_backtrace(1); } { -parser_prod__ABraAssignExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_args= on */ +parser_prod__AFloatExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AFloatExpr#n_annotations= on */ } goto RET_LABEL; } else { } -var19 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5377); +RET_LABEL:; +} +/* method parser_prod#AFloatExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AFloatExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AFloatExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AFloatExpr#replace_child on */ +RET_LABEL:; +} +/* method parser_prod#AFloatExpr#n_float= for (self: AFloatExpr, TFloat) */ +void parser_prod__AFloatExpr__n_float_61d(val* self, val* p0) { +val* var_node /* var node: TFloat */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AFloatExpr___n_float].val = var_node; /* _n_float on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AFloatExpr#n_float= for (self: Object, TFloat) */ +void VIRTUAL_parser_prod__AFloatExpr__n_float_61d(val* self, val* p0) { +parser_prod__AFloatExpr__n_float_61d(self, p0); /* Direct call parser_prod#AFloatExpr#n_float= on */ +RET_LABEL:; +} +/* method parser_prod#AFloatExpr#n_annotations= for (self: AFloatExpr, nullable AAnnotations) */ +void parser_prod__AFloatExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; +var_node = p0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations 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; +{ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AFloatExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AFloatExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__AFloatExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#AFloatExpr#n_annotations= on */ +RET_LABEL:; +} +/* method parser_prod#AFloatExpr#visit_all for (self: AFloatExpr, Visitor) */ +void parser_prod__AFloatExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : TFloat */; +val* var1 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__AFloatExpr___n_float].val; /* _n_float on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_float"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5439); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } +RET_LABEL:; } -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; +/* method parser_prod#AFloatExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AFloatExpr__visit_all(val* self, val* p0) { +parser_prod__AFloatExpr__visit_all(self, p0); /* Direct call parser_prod#AFloatExpr#visit_all on */ +RET_LABEL:; } -var20 = var21; +/* method parser_prod#ACharExpr#init_acharexpr for (self: ACharExpr, nullable TChar, nullable AAnnotations) */ +void parser_prod__ACharExpr__init_acharexpr(val* self, val* p0, val* p1) { +val* var_n_char /* var n_char: nullable TChar */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_char = p0; +var_n_annotations = p1; +if (unlikely(var_n_char == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5449); +show_backtrace(1); } -if (var20){ -/* isa TAssign */ -cltype27 = type_parser_nodes__TAssign.color; -idtype28 = type_parser_nodes__TAssign.id; -if(var_new_child == NULL) { -var26 = 0; +self->attrs[COLOR_parser_nodes__ACharExpr___n_char].val = var_n_char; /* _n_char on */ +if (var_n_char == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5450); +show_backtrace(1); } else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; +{ /* Inline parser_nodes#ANode#parent= (var_n_char,self) on */ +if (unlikely(var_n_char == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_char->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ } else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; +var2 = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; } -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5378); +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; +} +var2 = var3; +} +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#ACharExpr#init_acharexpr for (self: Object, nullable TChar, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ACharExpr__init_acharexpr(val* self, val* p0, val* p1) { +parser_prod__ACharExpr__init_acharexpr(self, p0, p1); /* Direct call parser_prod#ACharExpr#init_acharexpr on */ +RET_LABEL:; +} +/* method parser_prod#ACharExpr#replace_child for (self: ACharExpr, ANode, nullable ANode) */ +void parser_prod__ACharExpr__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 /* : TChar */; +short int var1 /* : Bool */; +short int var2 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var4 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +val* var8 /* : nullable AAnnotations */; +short int var9 /* : Bool */; +short int var10 /* : Bool */; +short int var12 /* : Bool */; +short int var14 /* : Bool */; +short int var15 /* : Bool */; +int cltype16; +int idtype17; +const char* var_class_name18; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_parser_nodes__ACharExpr___n_char].val; /* _n_char on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_char"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5457); show_backtrace(1); } { -parser_prod__ABraAssignExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_assign= on */ +{ /* 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; } -goto RET_LABEL; +} +var2 = var4; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +/* isa TChar */ +cltype = type_parser_nodes__TChar.color; +idtype = type_parser_nodes__TChar.id; +if(var_new_child == NULL) { +var7 = 0; } else { +if(cltype >= var_new_child->type->table_size) { +var7 = 0; +} else { +var7 = var_new_child->type->type_table[cltype] == idtype; } -var30 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5381); +} +if (unlikely(!var7)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TChar", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5458); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var30,var_old_child) on */ +parser_prod__ACharExpr__n_char_61d(self, var_new_child); /* Direct call parser_prod#ACharExpr#n_char= on */ +} +goto RET_LABEL; +} else { +} +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ -var36 = var30 == var_other; -var34 = var36; -goto RET_LABEL35; -RET_LABEL35:(void)0; +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +var14 = var8 == var_other; +var12 = var14; +goto RET_LABEL13; +RET_LABEL13:(void)0; } } -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; +var10 = var12; +goto RET_LABEL11; +RET_LABEL11:(void)0; } -var31 = var32; +var9 = var10; } -if (var31){ -/* isa AExpr */ -cltype38 = type_parser_nodes__AExpr.color; -idtype39 = type_parser_nodes__AExpr.id; +if (var9){ +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var37 = 0; +var15 = 1; } else { -if(cltype38 >= var_new_child->type->table_size) { -var37 = 0; +if(cltype16 >= var_new_child->type->table_size) { +var15 = 0; } else { -var37 = var_new_child->type->type_table[cltype38] == idtype39; +var15 = var_new_child->type->type_table[cltype16] == idtype17; } } -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`", "AExpr", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5382); +if (unlikely(!var15)) { +var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5462); show_backtrace(1); } { -parser_prod__ABraAssignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ABraAssignExpr#n_value= on */ +parser_prod__ACharExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ACharExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ABraAssignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ABraAssignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ABraAssignExpr#replace_child on */ +/* method parser_prod#ACharExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ACharExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ACharExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ACharExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#n_expr= for (self: ABraAssignExpr, AExpr) */ -void parser_prod__ABraAssignExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#ACharExpr#n_char= for (self: ACharExpr, TChar) */ +void parser_prod__ACharExpr__n_char_61d(val* self, val* p0) { +val* var_node /* var node: TChar */; var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__ACharExpr___n_char].val = var_node; /* _n_char on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ABraAssignExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ABraAssignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_expr= on */ +/* method parser_prod#ACharExpr#n_char= for (self: Object, TChar) */ +void VIRTUAL_parser_prod__ACharExpr__n_char_61d(val* self, val* p0) { +parser_prod__ACharExpr__n_char_61d(self, p0); /* Direct call parser_prod#ACharExpr#n_char= on */ RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#n_args= for (self: ABraAssignExpr, AExprs) */ -void parser_prod__ABraAssignExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; +/* method parser_prod#ACharExpr#n_annotations= for (self: ACharExpr, nullable AAnnotations) */ +void parser_prod__ACharExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#ABraAssignExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ABraAssignExpr__n_args_61d(val* self, val* p0) { -parser_prod__ABraAssignExpr__n_args_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_args= on */ -RET_LABEL:; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +var = NULL; +if (var_node == NULL) { +var1 = 0; /* is null */ +} else { +var1 = 1; /* arg is null and recv is not */ } -/* method parser_prod#ABraAssignExpr#n_assign= for (self: ABraAssignExpr, TAssign) */ -void parser_prod__ABraAssignExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +if (0) { +{ /* Inline kernel#Object#!= (var_node,var) on */ +var_other = var; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; } -RET_LABEL:; +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -/* method parser_prod#ABraAssignExpr#n_assign= for (self: Object, TAssign) */ -void VIRTUAL_parser_prod__ABraAssignExpr__n_assign_61d(val* self, val* p0) { -parser_prod__ABraAssignExpr__n_assign_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_assign= on */ -RET_LABEL:; +var1 = var2; } -/* method parser_prod#ABraAssignExpr#n_value= for (self: ABraAssignExpr, AExpr) */ -void parser_prod__ABraAssignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ +if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} } +} else { } RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ABraAssignExpr__n_value_61d(val* self, val* p0) { -parser_prod__ABraAssignExpr__n_value_61d(self, p0); /* Direct call parser_prod#ABraAssignExpr#n_value= on */ +/* method parser_prod#ACharExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ACharExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__ACharExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ACharExpr#n_annotations= on */ RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#visit_all for (self: ABraAssignExpr, Visitor) */ -void parser_prod__ABraAssignExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ACharExpr#visit_all for (self: ACharExpr, Visitor) */ +void parser_prod__ACharExpr__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* var /* : TChar */; +val* var1 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__ACharExpr___n_char].val; /* _n_char on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5411); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_char"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5481); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5412); -show_backtrace(1); -} +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5413); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5414); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ -} RET_LABEL:; } -/* method parser_prod#ABraAssignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ABraAssignExpr__visit_all(val* self, val* p0) { -parser_prod__ABraAssignExpr__visit_all(self, p0); /* Direct call parser_prod#ABraAssignExpr#visit_all on */ +/* method parser_prod#ACharExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ACharExpr__visit_all(val* self, val* p0) { +parser_prod__ACharExpr__visit_all(self, p0); /* Direct call parser_prod#ACharExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#init_abrareassignexpr for (self: ABraReassignExpr, nullable AExpr, nullable AExprs, nullable AAssignOp, nullable AExpr) */ -void 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; -if (unlikely(var_n_expr == NULL)) { +/* method parser_prod#AStringExpr#init_astringexpr for (self: AStringExpr, nullable TString, nullable AAnnotations) */ +void parser_prod__AStringExpr__init_astringexpr(val* self, val* p0, val* p1) { +val* var_n_string /* var n_string: nullable TString */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var2 /* : Bool */; +short int var3 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +var_n_string = p0; +var_n_annotations = p1; +if (unlikely(var_n_string == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5425); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5491); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_n_string; /* _n_string on */ +if (var_n_string == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5426); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5492); show_backtrace(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_string,self) on */ +if (unlikely(var_n_string == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_string->attrs[COLOR_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", "src/parser/parser_prod.nit", 5427); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5428); -show_backtrace(1); +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var2 = 0; /* is null */ } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_args->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} +var2 = 1; /* arg is null and recv is not */ } -if (unlikely(var_n_assign_op == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5429); -show_backtrace(1); +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ +var_other = var; +{ +var6 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var5 = var6; } -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5430); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign_op,self) on */ -if (unlikely(var_n_assign_op == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var7 = !var5; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; } -var_n_assign_op->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +var2 = var3; } +if (var2){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL8:(void)0; } -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5431); -show_backtrace(1); } -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5432); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL4:(void)0; -} } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#init_abrareassignexpr for (self: Object, nullable AExpr, nullable AExprs, nullable AAssignOp, nullable AExpr) */ -void VIRTUAL_parser_prod__ABraReassignExpr__init_abrareassignexpr(val* self, val* p0, val* p1, val* p2, val* p3) { -parser_prod__ABraReassignExpr__init_abrareassignexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#ABraReassignExpr#init_abrareassignexpr on */ +/* method parser_prod#AStringExpr#init_astringexpr for (self: Object, nullable TString, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AStringExpr__init_astringexpr(val* self, val* p0, val* p1) { +parser_prod__AStringExpr__init_astringexpr(self, p0, p1); /* Direct call parser_prod#AStringExpr#init_astringexpr on */ RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#replace_child for (self: ABraReassignExpr, ANode, nullable ANode) */ -void parser_prod__ABraReassignExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AStringExpr#replace_child for (self: AStringExpr, ANode, nullable ANode) */ +void parser_prod__AStringExpr__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 /* : Token */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -8221,7 +7551,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExprs */; +val* var8 /* : nullable AAnnotations */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -8230,37 +7560,19 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : AAssignOp */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; -val* var30 /* : AExpr */; -short int var31 /* : Bool */; -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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val; /* _n_expr on */ +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5437); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5499); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -8274,9 +7586,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa AExpr */ -cltype = type_parser_nodes__AExpr.color; -idtype = type_parser_nodes__AExpr.id; +/* isa TString */ +cltype = type_parser_nodes__TString.color; +idtype = type_parser_nodes__TString.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -8288,27 +7600,24 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5438); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TString", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5500); show_backtrace(1); } { -parser_prod__ABraReassignExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_expr= on */ -} -goto RET_LABEL; -} else { +parser_prod__AStringExpr__n_string_61d(self, var_new_child); /* Direct call parser_prod#AStringExpr#n_string= on */ } -var8 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5441); -show_backtrace(1); +goto RET_LABEL; +} else { } -{ -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +var8 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var8 == NULL) { +var9 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -8322,11 +7631,11 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExprs */ -cltype16 = type_parser_nodes__AExprs.color; -idtype17 = type_parser_nodes__AExprs.id; +/* isa nullable AAnnotations */ +cltype16 = type_nullable_parser_nodes__AAnnotations.color; +idtype17 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var15 = 0; +var15 = 1; } else { if(cltype16 >= var_new_child->type->table_size) { var15 = 0; @@ -8336,279 +7645,294 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExprs", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5442); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5504); show_backtrace(1); } { -parser_prod__ABraReassignExpr__n_args_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_args= on */ +parser_prod__AStringExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AStringExpr#n_annotations= on */ } goto RET_LABEL; } else { } -var19 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5445); -show_backtrace(1); +RET_LABEL:; } +/* method parser_prod#AStringExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AStringExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AStringExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AStringExpr#replace_child on */ +RET_LABEL:; +} +/* method parser_prod#AStringExpr#n_string= for (self: AStringExpr, Token) */ +void parser_prod__AStringExpr__n_string_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_node; /* _n_string on */ { -{ /* Inline kernel#Object#== (var19,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; } } -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; +RET_LABEL:; } -var20 = var21; +/* method parser_prod#AStringExpr#n_string= for (self: Object, Token) */ +void VIRTUAL_parser_prod__AStringExpr__n_string_61d(val* self, val* p0) { +parser_prod__AStringExpr__n_string_61d(self, p0); /* Direct call parser_prod#AStringExpr#n_string= on */ +RET_LABEL:; } -if (var20){ -/* isa AAssignOp */ -cltype27 = type_parser_nodes__AAssignOp.color; -idtype28 = type_parser_nodes__AAssignOp.id; -if(var_new_child == NULL) { -var26 = 0; -} else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; +/* method parser_prod#AStringExpr#n_annotations= for (self: AStringExpr, nullable AAnnotations) */ +void parser_prod__AStringExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; +var_node = p0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +var = NULL; +if (var_node == NULL) { +var1 = 0; /* is null */ } else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; -} -} -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5446); -show_backtrace(1); +var1 = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_node,var) on */ +var_other = var; { -parser_prod__ABraReassignExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_assign_op= on */ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; } -goto RET_LABEL; -} else { +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -var30 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5449); -show_backtrace(1); +var1 = var2; } +if (var1){ { -{ /* Inline kernel#Object#== (var30,var_old_child) on */ -var_other = var_old_child; -{ -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ -var36 = var30 == var_other; -var34 = var36; -goto RET_LABEL35; -RET_LABEL35:(void)0; -} -} -var32 = var34; -goto RET_LABEL33; -RET_LABEL33:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } -var31 = var32; } -if (var31){ -/* isa AExpr */ -cltype38 = type_parser_nodes__AExpr.color; -idtype39 = type_parser_nodes__AExpr.id; -if(var_new_child == NULL) { -var37 = 0; -} else { -if(cltype38 >= var_new_child->type->table_size) { -var37 = 0; } else { -var37 = var_new_child->type->type_table[cltype38] == idtype39; } +RET_LABEL:; } -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`", "AExpr", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5450); +/* method parser_prod#AStringExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AStringExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__AStringExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#AStringExpr#n_annotations= on */ +RET_LABEL:; +} +/* method parser_prod#AStringExpr#visit_all for (self: AStringExpr, Visitor) */ +void parser_prod__AStringExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +val* var1 /* : nullable AAnnotations */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5523); show_backtrace(1); } { -parser_prod__ABraReassignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#ABraReassignExpr#n_value= on */ +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -goto RET_LABEL; -} else { +var1 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ABraReassignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ABraReassignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ABraReassignExpr#replace_child on */ +/* method parser_prod#AStringExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AStringExpr__visit_all(val* self, val* p0) { +parser_prod__AStringExpr__visit_all(self, p0); /* Direct call parser_prod#AStringExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_expr= for (self: ABraReassignExpr, AExpr) */ -void parser_prod__ABraReassignExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ASendExpr___n_expr].val = var_node; /* _n_expr on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +/* method parser_prod#AStartStringExpr#init_astartstringexpr for (self: AStartStringExpr, nullable TStartString) */ +void parser_prod__AStartStringExpr__init_astartstringexpr(val* self, val* p0) { +val* var_n_string /* var n_string: nullable TStartString */; +var_n_string = p0; +if (unlikely(var_n_string == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5532); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_n_string; /* _n_string on */ +if (var_n_string == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5533); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_string,self) on */ +if (unlikely(var_n_string == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_string->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ABraReassignExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ABraReassignExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_expr= on */ +/* method parser_prod#AStartStringExpr#init_astartstringexpr for (self: Object, nullable TStartString) */ +void VIRTUAL_parser_prod__AStartStringExpr__init_astartstringexpr(val* self, val* p0) { +parser_prod__AStartStringExpr__init_astartstringexpr(self, p0); /* Direct call parser_prod#AStartStringExpr#init_astartstringexpr on */ RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_args= for (self: ABraReassignExpr, AExprs) */ -void parser_prod__ABraReassignExpr__n_args_61d(val* self, val* p0) { -val* var_node /* var node: AExprs */; -var_node = p0; -self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val = var_node; /* _n_args on */ +/* method parser_prod#AStartStringExpr#replace_child for (self: AStartStringExpr, ANode, nullable ANode) */ +void parser_prod__AStartStringExpr__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 /* : Token */; +short int var1 /* : Bool */; +short int var2 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var4 /* : Bool */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5538); +show_backtrace(1); +} { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +{ /* 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; } } -RET_LABEL:; +var2 = var4; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -/* method parser_prod#ABraReassignExpr#n_args= for (self: Object, AExprs) */ -void VIRTUAL_parser_prod__ABraReassignExpr__n_args_61d(val* self, val* p0) { -parser_prod__ABraReassignExpr__n_args_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_args= on */ -RET_LABEL:; +var1 = var2; +} +if (var1){ +/* isa TStartString */ +cltype = type_parser_nodes__TStartString.color; +idtype = type_parser_nodes__TStartString.id; +if(var_new_child == NULL) { +var7 = 0; +} else { +if(cltype >= var_new_child->type->table_size) { +var7 = 0; +} else { +var7 = var_new_child->type->type_table[cltype] == idtype; +} +} +if (unlikely(!var7)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TStartString", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5539); +show_backtrace(1); } -/* method parser_prod#ABraReassignExpr#n_assign_op= for (self: ABraReassignExpr, AAssignOp) */ -void parser_prod__ABraReassignExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; -var_node = p0; -self->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +parser_prod__AStartStringExpr__n_string_61d(self, var_new_child); /* Direct call parser_prod#AStartStringExpr#n_string= on */ } +goto RET_LABEL; +} else { } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_assign_op= for (self: Object, AAssignOp) */ -void VIRTUAL_parser_prod__ABraReassignExpr__n_assign_op_61d(val* self, val* p0) { -parser_prod__ABraReassignExpr__n_assign_op_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_assign_op= on */ +/* method parser_prod#AStartStringExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AStartStringExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AStartStringExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AStartStringExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_value= for (self: ABraReassignExpr, AExpr) */ -void parser_prod__ABraReassignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AStartStringExpr#n_string= for (self: AStartStringExpr, Token) */ +void parser_prod__AStartStringExpr__n_string_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_node; /* _n_string on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ABraReassignExpr__n_value_61d(val* self, val* p0) { -parser_prod__ABraReassignExpr__n_value_61d(self, p0); /* Direct call parser_prod#ABraReassignExpr#n_value= on */ +/* method parser_prod#AStartStringExpr#n_string= for (self: Object, Token) */ +void VIRTUAL_parser_prod__AStartStringExpr__n_string_61d(val* self, val* p0) { +parser_prod__AStartStringExpr__n_string_61d(self, p0); /* Direct call parser_prod#AStartStringExpr#n_string= on */ RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#visit_all for (self: ABraReassignExpr, Visitor) */ -void parser_prod__ABraReassignExpr__visit_all(val* self, val* p0) { +/* method parser_prod#AStartStringExpr#visit_all for (self: AStartStringExpr, Visitor) */ +void parser_prod__AStartStringExpr__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* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5479); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var1 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5480); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5481); -show_backtrace(1); -} -{ -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var3 = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5482); +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5553); show_backtrace(1); } { -parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#ABraReassignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__ABraReassignExpr__visit_all(val* self, val* p0) { -parser_prod__ABraReassignExpr__visit_all(self, p0); /* Direct call parser_prod#ABraReassignExpr#visit_all on */ +/* method parser_prod#AStartStringExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AStartStringExpr__visit_all(val* self, val* p0) { +parser_prod__AStartStringExpr__visit_all(self, p0); /* Direct call parser_prod#AStartStringExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AVarExpr#init_avarexpr for (self: AVarExpr, nullable TId) */ -void 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)) { +/* method parser_prod#AMidStringExpr#init_amidstringexpr for (self: AMidStringExpr, nullable TMidString) */ +void parser_prod__AMidStringExpr__init_amidstringexpr(val* self, val* p0) { +val* var_n_string /* var n_string: nullable TMidString */; +var_n_string = p0; +if (unlikely(var_n_string == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5490); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5561); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_n_string; /* _n_string on */ +if (var_n_string == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5491); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5562); show_backtrace(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_string,self) on */ +if (unlikely(var_n_string == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_string->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarExpr#init_avarexpr for (self: Object, nullable TId) */ -void VIRTUAL_parser_prod__AVarExpr__init_avarexpr(val* self, val* p0) { -parser_prod__AVarExpr__init_avarexpr(self, p0); /* Direct call parser_prod#AVarExpr#init_avarexpr on */ +/* method parser_prod#AMidStringExpr#init_amidstringexpr for (self: Object, nullable TMidString) */ +void VIRTUAL_parser_prod__AMidStringExpr__init_amidstringexpr(val* self, val* p0) { +parser_prod__AMidStringExpr__init_amidstringexpr(self, p0); /* Direct call parser_prod#AMidStringExpr#init_amidstringexpr on */ RET_LABEL:; } -/* method parser_prod#AVarExpr#replace_child for (self: AVarExpr, ANode, nullable ANode) */ -void parser_prod__AVarExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AMidStringExpr#replace_child for (self: AMidStringExpr, ANode, nullable ANode) */ +void parser_prod__AMidStringExpr__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 /* : Token */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -8620,17 +7944,17 @@ int idtype; const char* var_class_name; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5496); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5567); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -8644,9 +7968,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa TId */ -cltype = type_parser_nodes__TId.color; -idtype = type_parser_nodes__TId.id; +/* isa TMidString */ +cltype = type_parser_nodes__TMidString.color; +idtype = type_parser_nodes__TMidString.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -8658,50 +7982,50 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5497); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TMidString", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5568); show_backtrace(1); } { -parser_prod__AVarExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarExpr#n_id= on */ +parser_prod__AMidStringExpr__n_string_61d(self, var_new_child); /* Direct call parser_prod#AMidStringExpr#n_string= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AVarExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AVarExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AVarExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AVarExpr#replace_child on */ +/* method parser_prod#AMidStringExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AMidStringExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AMidStringExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AMidStringExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AVarExpr#n_id= for (self: AVarExpr, TId) */ -void parser_prod__AVarExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#AMidStringExpr#n_string= for (self: AMidStringExpr, Token) */ +void parser_prod__AMidStringExpr__n_string_61d(val* self, val* p0) { +val* var_node /* var node: Token */; var_node = p0; -self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_node; /* _n_string on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarExpr#n_id= for (self: Object, TId) */ -void VIRTUAL_parser_prod__AVarExpr__n_id_61d(val* self, val* p0) { -parser_prod__AVarExpr__n_id_61d(self, p0); /* Direct call parser_prod#AVarExpr#n_id= on */ +/* method parser_prod#AMidStringExpr#n_string= for (self: Object, Token) */ +void VIRTUAL_parser_prod__AMidStringExpr__n_string_61d(val* self, val* p0) { +parser_prod__AMidStringExpr__n_string_61d(self, p0); /* Direct call parser_prod#AMidStringExpr#n_string= on */ RET_LABEL:; } -/* method parser_prod#AVarExpr#visit_all for (self: AVarExpr, Visitor) */ -void parser_prod__AVarExpr__visit_all(val* self, val* p0) { +/* method parser_prod#AMidStringExpr#visit_all for (self: AMidStringExpr, Visitor) */ +void parser_prod__AMidStringExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TId */; +val* var /* : Token */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5511); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5582); show_backtrace(1); } { @@ -8709,94 +8033,48 @@ parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visi } RET_LABEL:; } -/* method parser_prod#AVarExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AVarExpr__visit_all(val* self, val* p0) { -parser_prod__AVarExpr__visit_all(self, p0); /* Direct call parser_prod#AVarExpr#visit_all on */ +/* method parser_prod#AMidStringExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AMidStringExpr__visit_all(val* self, val* p0) { +parser_prod__AMidStringExpr__visit_all(self, p0); /* Direct call parser_prod#AMidStringExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#init_avarassignexpr for (self: AVarAssignExpr, nullable TId, nullable TAssign, nullable AExpr) */ -void 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)) { +/* method parser_prod#AEndStringExpr#init_aendstringexpr for (self: AEndStringExpr, nullable TEndString) */ +void parser_prod__AEndStringExpr__init_aendstringexpr(val* self, val* p0) { +val* var_n_string /* var n_string: nullable TEndString */; +var_n_string = p0; +if (unlikely(var_n_string == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5521); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5590); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_n_string; /* _n_string on */ +if (var_n_string == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5522); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5591); show_backtrace(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_string,self) on */ +if (unlikely(var_n_string == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_string->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_assign == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5523); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_n_assign; /* _n_assign on */ -if (var_n_assign == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5524); -show_backtrace(1); -} else { -{ /* Inline parser_nodes#ANode#parent= (var_n_assign,self) on */ -if (unlikely(var_n_assign == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_assign->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL2:(void)0; -} -} -if (unlikely(var_n_value == NULL)) { -PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5525); -show_backtrace(1); -} -self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5526); -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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); -} -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; -} -} RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#init_avarassignexpr for (self: Object, nullable TId, nullable TAssign, nullable AExpr) */ -void VIRTUAL_parser_prod__AVarAssignExpr__init_avarassignexpr(val* self, val* p0, val* p1, val* p2) { -parser_prod__AVarAssignExpr__init_avarassignexpr(self, p0, p1, p2); /* Direct call parser_prod#AVarAssignExpr#init_avarassignexpr on */ +/* method parser_prod#AEndStringExpr#init_aendstringexpr for (self: Object, nullable TEndString) */ +void VIRTUAL_parser_prod__AEndStringExpr__init_aendstringexpr(val* self, val* p0) { +parser_prod__AEndStringExpr__init_aendstringexpr(self, p0); /* Direct call parser_prod#AEndStringExpr#init_aendstringexpr on */ RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#replace_child for (self: AVarAssignExpr, ANode, nullable ANode) */ -void parser_prod__AVarAssignExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AEndStringExpr#replace_child for (self: AEndStringExpr, ANode, nullable ANode) */ +void parser_prod__AEndStringExpr__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 /* : Token */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -8806,37 +8084,19 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : TAssign */; -short int var9 /* : Bool */; -short int var10 /* : Bool */; -short int var12 /* : Bool */; -short int var14 /* : Bool */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -const char* var_class_name18; -val* var19 /* : AExpr */; -short int var20 /* : Bool */; -short int var21 /* : Bool */; -short int var23 /* : Bool */; -short int var25 /* : Bool */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -const char* var_class_name29; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5531); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5596); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -8850,9 +8110,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa TId */ -cltype = type_parser_nodes__TId.color; -idtype = type_parser_nodes__TId.id; +/* isa TEndString */ +cltype = type_parser_nodes__TEndString.color; +idtype = type_parser_nodes__TEndString.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -8864,297 +8124,422 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5532); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TEndString", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5597); show_backtrace(1); } { -parser_prod__AVarAssignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_id= on */ +parser_prod__AEndStringExpr__n_string_61d(self, var_new_child); /* Direct call parser_prod#AEndStringExpr#n_string= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5535); +RET_LABEL:; +} +/* method parser_prod#AEndStringExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AEndStringExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AEndStringExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AEndStringExpr#replace_child on */ +RET_LABEL:; +} +/* method parser_prod#AEndStringExpr#n_string= for (self: AEndStringExpr, Token) */ +void parser_prod__AEndStringExpr__n_string_61d(val* self, val* p0) { +val* var_node /* var node: Token */; +var_node = p0; +self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val = var_node; /* _n_string on */ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +RET_LABEL:; +} +/* method parser_prod#AEndStringExpr#n_string= for (self: Object, Token) */ +void VIRTUAL_parser_prod__AEndStringExpr__n_string_61d(val* self, val* p0) { +parser_prod__AEndStringExpr__n_string_61d(self, p0); /* Direct call parser_prod#AEndStringExpr#n_string= on */ +RET_LABEL:; +} +/* method parser_prod#AEndStringExpr#visit_all for (self: AEndStringExpr, Visitor) */ +void parser_prod__AEndStringExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : Token */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5611); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ -var_other = var_old_child; +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#AEndStringExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AEndStringExpr__visit_all(val* self, val* p0) { +parser_prod__AEndStringExpr__visit_all(self, p0); /* Direct call parser_prod#AEndStringExpr#visit_all on */ +RET_LABEL:; +} +/* method parser_prod#ASuperstringExpr#init_asuperstringexpr for (self: ASuperstringExpr, Collection[Object], nullable AAnnotations) */ +void parser_prod__ASuperstringExpr__init_asuperstringexpr(val* self, val* p0, val* p1) { +val* var_n_exprs /* var n_exprs: Collection[Object] */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : ANodes[AExpr] */; +val* var2 /* : ANodes[AExpr] */; +val* var3 /* : null */; +short int var4 /* : Bool */; +short int var5 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; +var_n_exprs = p0; +var_n_annotations = p1; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ -var14 = var8 == var_other; -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; +{ /* Inline parser_nodes#ASuperstringExpr#n_exprs (self) on */ +var2 = self->attrs[COLOR_parser_nodes__ASuperstringExpr___n_exprs].val; /* _n_exprs on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1861); +show_backtrace(1); } +var = var2; +RET_LABEL1:(void)0; } -var10 = var12; -goto RET_LABEL11; -RET_LABEL11:(void)0; } -var9 = var10; +{ +parser_nodes__ANodes__unsafe_add_all(var, var_n_exprs); /* Direct call parser_nodes#ANodes#unsafe_add_all on */ } -if (var9){ -/* isa TAssign */ -cltype16 = type_parser_nodes__TAssign.color; -idtype17 = type_parser_nodes__TAssign.id; -if(var_new_child == NULL) { -var15 = 0; -} else { -if(cltype16 >= var_new_child->type->table_size) { -var15 = 0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var3 = NULL; +if (var_n_annotations == NULL) { +var4 = 0; /* is null */ } else { -var15 = var_new_child->type->type_table[cltype16] == idtype17; +var4 = 1; /* arg is null and recv is not */ } +if (0) { +{ /* Inline kernel#Object#!= (var_n_annotations,var3) on */ +var_other = var3; +{ +var8 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var7 = var8; } -if (unlikely(!var15)) { -var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TAssign", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5536); -show_backtrace(1); +var9 = !var7; +var5 = var9; +goto RET_LABEL6; +RET_LABEL6:(void)0; +} +var4 = var5; } +if (var4){ { -parser_prod__AVarAssignExpr__n_assign_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_assign= on */ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL10:(void)0; +} } -goto RET_LABEL; } else { } -var19 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5539); +RET_LABEL:; +} +/* method parser_prod#ASuperstringExpr#init_asuperstringexpr for (self: Object, Collection[Object], nullable AAnnotations) */ +void VIRTUAL_parser_prod__ASuperstringExpr__init_asuperstringexpr(val* self, val* p0, val* p1) { +parser_prod__ASuperstringExpr__init_asuperstringexpr(self, p0, p1); /* Direct call parser_prod#ASuperstringExpr#init_asuperstringexpr on */ +RET_LABEL:; +} +/* method parser_prod#ASuperstringExpr#replace_child for (self: ASuperstringExpr, ANode, nullable ANode) */ +void parser_prod__ASuperstringExpr__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 /* : ANodes[AExpr] */; +val* var2 /* : ANodes[AExpr] */; +short int var3 /* : Bool */; +val* var4 /* : nullable AAnnotations */; +short int var5 /* : Bool */; +short int var6 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var11 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +var_old_child = p0; +var_new_child = p1; +{ +{ /* Inline parser_nodes#ASuperstringExpr#n_exprs (self) on */ +var2 = self->attrs[COLOR_parser_nodes__ASuperstringExpr___n_exprs].val; /* _n_exprs on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1861); show_backtrace(1); } +var = var2; +RET_LABEL1:(void)0; +} +} { -{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var3 = parser_nodes__ANodes__replace_child(var, var_old_child, var_new_child); +} +if (var3){ +goto RET_LABEL; +} else { +} +var4 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var4 == NULL) { +var5 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var4,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ -var25 = var19 == var_other; -var23 = var25; -goto RET_LABEL24; -RET_LABEL24:(void)0; +{ /* Inline kernel#Object#is_same_instance (var4,var_other) on */ +var10 = var4 == var_other; +var8 = var10; +goto RET_LABEL9; +RET_LABEL9:(void)0; } } -var21 = var23; -goto RET_LABEL22; -RET_LABEL22:(void)0; +var6 = var8; +goto RET_LABEL7; +RET_LABEL7:(void)0; } -var20 = var21; +var5 = var6; } -if (var20){ -/* isa AExpr */ -cltype27 = type_parser_nodes__AExpr.color; -idtype28 = type_parser_nodes__AExpr.id; +if (var5){ +/* isa nullable AAnnotations */ +cltype = type_nullable_parser_nodes__AAnnotations.color; +idtype = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var26 = 0; +var11 = 1; } else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; +if(cltype >= var_new_child->type->table_size) { +var11 = 0; } else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; +var11 = var_new_child->type->type_table[cltype] == idtype; } } -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5540); +if (unlikely(!var11)) { +var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5629); show_backtrace(1); } { -parser_prod__AVarAssignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AVarAssignExpr#n_value= on */ +parser_prod__ASuperstringExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ASuperstringExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AVarAssignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AVarAssignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AVarAssignExpr#replace_child on */ +/* method parser_prod#ASuperstringExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__ASuperstringExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__ASuperstringExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ASuperstringExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#n_id= for (self: AVarAssignExpr, TId) */ -void parser_prod__AVarAssignExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#ASuperstringExpr#n_annotations= for (self: ASuperstringExpr, nullable AAnnotations) */ +void parser_prod__ASuperstringExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ -{ -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} -} -RET_LABEL:; -} -/* method parser_prod#AVarAssignExpr#n_id= for (self: Object, TId) */ -void VIRTUAL_parser_prod__AVarAssignExpr__n_id_61d(val* self, val* p0) { -parser_prod__AVarAssignExpr__n_id_61d(self, p0); /* Direct call parser_prod#AVarAssignExpr#n_id= on */ -RET_LABEL:; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +var = NULL; +if (var_node == NULL) { +var1 = 0; /* is null */ +} else { +var1 = 1; /* arg is null and recv is not */ } -/* method parser_prod#AVarAssignExpr#n_assign= for (self: AVarAssignExpr, TAssign) */ -void parser_prod__AVarAssignExpr__n_assign_61d(val* self, val* p0) { -val* var_node /* var node: TAssign */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val = var_node; /* _n_assign on */ +if (0) { +{ /* Inline kernel#Object#!= (var_node,var) on */ +var_other = var; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; -} +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; } -RET_LABEL:; +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; } -/* method parser_prod#AVarAssignExpr#n_assign= for (self: Object, TAssign) */ -void VIRTUAL_parser_prod__AVarAssignExpr__n_assign_61d(val* self, val* p0) { -parser_prod__AVarAssignExpr__n_assign_61d(self, p0); /* Direct call parser_prod#AVarAssignExpr#n_assign= on */ -RET_LABEL:; +var1 = var2; } -/* method parser_prod#AVarAssignExpr#n_value= for (self: AVarAssignExpr, AExpr) */ -void parser_prod__AVarAssignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; -var_node = p0; -self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val = var_node; /* _n_value on */ +if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_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_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} } +} else { } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AVarAssignExpr__n_value_61d(val* self, val* p0) { -parser_prod__AVarAssignExpr__n_value_61d(self, p0); /* Direct call parser_prod#AVarAssignExpr#n_value= on */ +/* method parser_prod#ASuperstringExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__ASuperstringExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__ASuperstringExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ASuperstringExpr#n_annotations= on */ RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#visit_all for (self: AVarAssignExpr, Visitor) */ -void parser_prod__AVarAssignExpr__visit_all(val* self, val* p0) { +/* method parser_prod#ASuperstringExpr#visit_all for (self: ASuperstringExpr, Visitor) */ +void parser_prod__ASuperstringExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TId */; -val* var1 /* : TAssign */; -val* var2 /* : AExpr */; +val* var /* : ANodes[AExpr] */; +val* var2 /* : ANodes[AExpr] */; +val* var3 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_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", "src/parser/parser_prod.nit", 5564); +{ +{ /* Inline parser_nodes#ASuperstringExpr#n_exprs (self) on */ +var2 = self->attrs[COLOR_parser_nodes__ASuperstringExpr___n_exprs].val; /* _n_exprs on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1861); show_backtrace(1); } -{ -parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +var = var2; +RET_LABEL1:(void)0; } -var1 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_assign].val; /* _n_assign on */ -if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5565); -show_backtrace(1); } { -parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ -} -var2 = self->attrs[COLOR_parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on */ -if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5566); -show_backtrace(1); +parser_nodes__ANodes__visit_all(var, var_v); /* Direct call parser_nodes#ANodes#visit_all on */ } +var3 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ { -parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ } RET_LABEL:; } -/* method parser_prod#AVarAssignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AVarAssignExpr__visit_all(val* self, val* p0) { -parser_prod__AVarAssignExpr__visit_all(self, p0); /* Direct call parser_prod#AVarAssignExpr#visit_all on */ +/* method parser_prod#ASuperstringExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__ASuperstringExpr__visit_all(val* self, val* p0) { +parser_prod__ASuperstringExpr__visit_all(self, p0); /* Direct call parser_prod#ASuperstringExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#init_avarreassignexpr for (self: AVarReassignExpr, nullable TId, nullable AAssignOp, nullable AExpr) */ -void 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#AParExpr#init_aparexpr for (self: AParExpr, nullable TOpar, nullable AExpr, nullable TCpar, nullable AAnnotations) */ +void parser_prod__AParExpr__init_aparexpr(val* self, val* p0, val* p1, val* p2, val* p3) { +val* var_n_opar /* var n_opar: nullable TOpar */; +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_cpar /* var n_cpar: nullable TCpar */; +val* var_n_annotations /* var n_annotations: nullable AAnnotations */; +val* var /* : null */; +short int var4 /* : Bool */; +short int var5 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var7 /* : Bool */; +short int var8 /* : Bool */; +short int var9 /* : Bool */; +var_n_opar = p0; +var_n_expr = p1; +var_n_cpar = p2; +var_n_annotations = p3; +if (unlikely(var_n_opar == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5576); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5655); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_n_id; /* _n_id on */ -if (var_n_id == NULL) { +self->attrs[COLOR_parser_nodes__AParExpr___n_opar].val = var_n_opar; /* _n_opar on */ +if (var_n_opar == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5577); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5656); show_backtrace(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_opar,self) on */ +if (unlikely(var_n_opar == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_id->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_opar->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_assign_op == NULL)) { +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5578); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5657); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val = var_n_assign_op; /* _n_assign_op on */ -if (var_n_assign_op == NULL) { +self->attrs[COLOR_parser_nodes__AParExpr___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", "src/parser/parser_prod.nit", 5579); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5658); show_backtrace(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_expr,self) on */ +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_assign_op->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL2:(void)0; } } -if (unlikely(var_n_value == NULL)) { +if (unlikely(var_n_cpar == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5580); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5659); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_n_value; /* _n_value on */ -if (var_n_value == NULL) { +self->attrs[COLOR_parser_nodes__AParExpr___n_cpar].val = var_n_cpar; /* _n_cpar on */ +if (var_n_cpar == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5581); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5660); show_backtrace(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_cpar,self) on */ +if (unlikely(var_n_cpar == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_value->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_cpar->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL3:(void)0; } } +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ +var = NULL; +if (var_n_annotations == NULL) { +var4 = 0; /* is null */ +} else { +var4 = 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*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; +var7 = var8; +} +var9 = !var7; +var5 = var9; +goto RET_LABEL6; +RET_LABEL6:(void)0; +} +var4 = var5; +} +if (var4){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ +var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL10:(void)0; +} +} +} else { +} RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#init_avarreassignexpr for (self: Object, nullable TId, nullable AAssignOp, nullable AExpr) */ -void VIRTUAL_parser_prod__AVarReassignExpr__init_avarreassignexpr(val* self, val* p0, val* p1, val* p2) { -parser_prod__AVarReassignExpr__init_avarreassignexpr(self, p0, p1, p2); /* Direct call parser_prod#AVarReassignExpr#init_avarreassignexpr on */ +/* method parser_prod#AParExpr#init_aparexpr for (self: Object, nullable TOpar, nullable AExpr, nullable TCpar, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AParExpr__init_aparexpr(val* self, val* p0, val* p1, val* p2, val* p3) { +parser_prod__AParExpr__init_aparexpr(self, p0, p1, p2, p3); /* Direct call parser_prod#AParExpr#init_aparexpr on */ RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#replace_child for (self: AVarReassignExpr, ANode, nullable ANode) */ -void parser_prod__AVarReassignExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AParExpr#replace_child for (self: AParExpr, ANode, nullable ANode) */ +void parser_prod__AParExpr__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 /* : TOpar */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -9164,7 +8549,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AAssignOp */; +val* var8 /* : AExpr */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -9173,7 +8558,7 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : AExpr */; +val* var19 /* : TCpar */; short int var20 /* : Bool */; short int var21 /* : Bool */; short int var23 /* : Bool */; @@ -9182,19 +8567,28 @@ short int var26 /* : Bool */; int cltype27; int idtype28; const char* var_class_name29; +val* var30 /* : nullable AAnnotations */; +short int var31 /* : Bool */; +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; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_parser_nodes__AParExpr___n_opar].val; /* _n_opar on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5586); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_opar"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5667); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -9208,9 +8602,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa TId */ -cltype = type_parser_nodes__TId.color; -idtype = type_parser_nodes__TId.id; +/* isa TOpar */ +cltype = type_parser_nodes__TOpar.color; +idtype = type_parser_nodes__TOpar.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -9222,27 +8616,27 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { 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", "src/parser/parser_prod.nit", 5587); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TOpar", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5668); show_backtrace(1); } { -parser_prod__AVarReassignExpr__n_id_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_id= on */ +parser_prod__AParExpr__n_opar_61d(self, var_new_child); /* Direct call parser_prod#AParExpr#n_opar= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var8 = self->attrs[COLOR_parser_nodes__AParExpr___n_expr].val; /* _n_expr on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5590); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5671); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -9256,9 +8650,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AAssignOp */ -cltype16 = type_parser_nodes__AAssignOp.color; -idtype17 = type_parser_nodes__AAssignOp.id; +/* isa AExpr */ +cltype16 = type_parser_nodes__AExpr.color; +idtype17 = type_parser_nodes__AExpr.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -9270,27 +8664,27 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AAssignOp", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5591); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5672); show_backtrace(1); } { -parser_prod__AVarReassignExpr__n_assign_op_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_assign_op= on */ +parser_prod__AParExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AParExpr#n_expr= on */ } goto RET_LABEL; } else { } -var19 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +var19 = self->attrs[COLOR_parser_nodes__AParExpr___n_cpar].val; /* _n_cpar on */ if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5594); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cpar"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5675); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var19,var_old_child) on */ +{ /* Inline kernel#Object#== (var19,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ var25 = var19 == var_other; var23 = var25; goto RET_LABEL24; @@ -9304,277 +8698,390 @@ RET_LABEL22:(void)0; var20 = var21; } if (var20){ -/* isa AExpr */ -cltype27 = type_parser_nodes__AExpr.color; -idtype28 = type_parser_nodes__AExpr.id; +/* isa TCpar */ +cltype27 = type_parser_nodes__TCpar.color; +idtype28 = type_parser_nodes__TCpar.id; +if(var_new_child == NULL) { +var26 = 0; +} else { +if(cltype27 >= var_new_child->type->table_size) { +var26 = 0; +} else { +var26 = var_new_child->type->type_table[cltype27] == idtype28; +} +} +if (unlikely(!var26)) { +var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCpar", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5676); +show_backtrace(1); +} +{ +parser_prod__AParExpr__n_cpar_61d(self, var_new_child); /* Direct call parser_prod#AParExpr#n_cpar= on */ +} +goto RET_LABEL; +} else { +} +var30 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +if (var30 == NULL) { +var31 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var30,var_old_child) on */ +var_other = var_old_child; +{ +{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ +var36 = var30 == var_other; +var34 = var36; +goto RET_LABEL35; +RET_LABEL35:(void)0; +} +} +var32 = var34; +goto RET_LABEL33; +RET_LABEL33:(void)0; +} +var31 = var32; +} +if (var31){ +/* isa nullable AAnnotations */ +cltype38 = type_nullable_parser_nodes__AAnnotations.color; +idtype39 = type_nullable_parser_nodes__AAnnotations.id; if(var_new_child == NULL) { -var26 = 0; +var37 = 1; } else { -if(cltype27 >= var_new_child->type->table_size) { -var26 = 0; +if(cltype38 >= var_new_child->type->table_size) { +var37 = 0; } else { -var26 = var_new_child->type->type_table[cltype27] == idtype28; +var37 = var_new_child->type->type_table[cltype38] == idtype39; } } -if (unlikely(!var26)) { -var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5595); +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`", "nullable AAnnotations", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5680); show_backtrace(1); } { -parser_prod__AVarReassignExpr__n_value_61d(self, var_new_child); /* Direct call parser_prod#AVarReassignExpr#n_value= on */ +parser_prod__AParExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#AParExpr#n_annotations= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__AVarReassignExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__AVarReassignExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AVarReassignExpr#replace_child on */ +/* method parser_prod#AParExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AParExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AParExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AParExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_id= for (self: AVarReassignExpr, TId) */ -void parser_prod__AVarReassignExpr__n_id_61d(val* self, val* p0) { -val* var_node /* var node: TId */; +/* method parser_prod#AParExpr#n_opar= for (self: AParExpr, TOpar) */ +void parser_prod__AParExpr__n_opar_61d(val* self, val* p0) { +val* var_node /* var node: TOpar */; var_node = p0; -self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val = var_node; /* _n_id on */ +self->attrs[COLOR_parser_nodes__AParExpr___n_opar].val = var_node; /* _n_opar on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_id= for (self: Object, TId) */ -void VIRTUAL_parser_prod__AVarReassignExpr__n_id_61d(val* self, val* p0) { -parser_prod__AVarReassignExpr__n_id_61d(self, p0); /* Direct call parser_prod#AVarReassignExpr#n_id= on */ +/* method parser_prod#AParExpr#n_opar= for (self: Object, TOpar) */ +void VIRTUAL_parser_prod__AParExpr__n_opar_61d(val* self, val* p0) { +parser_prod__AParExpr__n_opar_61d(self, p0); /* Direct call parser_prod#AParExpr#n_opar= on */ RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_assign_op= for (self: AVarReassignExpr, AAssignOp) */ -void parser_prod__AVarReassignExpr__n_assign_op_61d(val* self, val* p0) { -val* var_node /* var node: AAssignOp */; +/* method parser_prod#AParExpr#n_expr= for (self: AParExpr, AExpr) */ +void parser_prod__AParExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val = var_node; /* _n_assign_op on */ +self->attrs[COLOR_parser_nodes__AParExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_assign_op= for (self: Object, AAssignOp) */ -void VIRTUAL_parser_prod__AVarReassignExpr__n_assign_op_61d(val* self, val* p0) { -parser_prod__AVarReassignExpr__n_assign_op_61d(self, p0); /* Direct call parser_prod#AVarReassignExpr#n_assign_op= on */ +/* method parser_prod#AParExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__AParExpr__n_expr_61d(val* self, val* p0) { +parser_prod__AParExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AParExpr#n_expr= on */ RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_value= for (self: AVarReassignExpr, AExpr) */ -void parser_prod__AVarReassignExpr__n_value_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AParExpr#n_cpar= for (self: AParExpr, TCpar) */ +void parser_prod__AParExpr__n_cpar_61d(val* self, val* p0) { +val* var_node /* var node: TCpar */; var_node = p0; -self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val = var_node; /* _n_value on */ +self->attrs[COLOR_parser_nodes__AParExpr___n_cpar].val = var_node; /* _n_cpar on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#n_value= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__AVarReassignExpr__n_value_61d(val* self, val* p0) { -parser_prod__AVarReassignExpr__n_value_61d(self, p0); /* Direct call parser_prod#AVarReassignExpr#n_value= on */ +/* method parser_prod#AParExpr#n_cpar= for (self: Object, TCpar) */ +void VIRTUAL_parser_prod__AParExpr__n_cpar_61d(val* self, val* p0) { +parser_prod__AParExpr__n_cpar_61d(self, p0); /* Direct call parser_prod#AParExpr#n_cpar= on */ RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#visit_all for (self: AVarReassignExpr, Visitor) */ -void parser_prod__AVarReassignExpr__visit_all(val* self, val* p0) { +/* method parser_prod#AParExpr#n_annotations= for (self: AParExpr, nullable AAnnotations) */ +void parser_prod__AParExpr__n_annotations_61d(val* self, val* p0) { +val* var_node /* var node: nullable AAnnotations */; +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 */; +short int var6 /* : Bool */; +var_node = p0; +self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations 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; +{ +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AParExpr#n_annotations= for (self: Object, nullable AAnnotations) */ +void VIRTUAL_parser_prod__AParExpr__n_annotations_61d(val* self, val* p0) { +parser_prod__AParExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#AParExpr#n_annotations= on */ +RET_LABEL:; +} +/* method parser_prod#AParExpr#visit_all for (self: AParExpr, Visitor) */ +void parser_prod__AParExpr__visit_all(val* self, val* p0) { val* var_v /* var v: Visitor */; -val* var /* : TId */; -val* var1 /* : AAssignOp */; -val* var2 /* : AExpr */; +val* var /* : TOpar */; +val* var1 /* : AExpr */; +val* var2 /* : TCpar */; +val* var3 /* : nullable AAnnotations */; var_v = p0; -var = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on */ +var = self->attrs[COLOR_parser_nodes__AParExpr___n_opar].val; /* _n_opar on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5619); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_opar"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5709); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var1 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_assign_op].val; /* _n_assign_op on */ +var1 = self->attrs[COLOR_parser_nodes__AParExpr___n_expr].val; /* _n_expr on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5620); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5710); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ } -var2 = self->attrs[COLOR_parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on */ +var2 = self->attrs[COLOR_parser_nodes__AParExpr___n_cpar].val; /* _n_cpar on */ if (unlikely(var2 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5621); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cpar"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5711); show_backtrace(1); } { parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ } +var3 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} RET_LABEL:; } -/* method parser_prod#AVarReassignExpr#visit_all for (self: Object, Visitor) */ -void VIRTUAL_parser_prod__AVarReassignExpr__visit_all(val* self, val* p0) { -parser_prod__AVarReassignExpr__visit_all(self, p0); /* Direct call parser_prod#AVarReassignExpr#visit_all on */ +/* method parser_prod#AParExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AParExpr__visit_all(val* self, val* p0) { +parser_prod__AParExpr__visit_all(self, p0); /* Direct call parser_prod#AParExpr#visit_all on */ RET_LABEL:; } -/* method parser_prod#ACrangeExpr#init_acrangeexpr for (self: ACrangeExpr, nullable TObra, nullable AExpr, nullable AExpr, nullable TCbra, nullable AAnnotations) */ -void 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#AAsCastExpr#init_aascastexpr for (self: AAsCastExpr, nullable AExpr, nullable TKwas, nullable TOpar, nullable AType, nullable TCpar) */ +void parser_prod__AAsCastExpr__init_aascastexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { val* var_n_expr /* var n_expr: nullable AExpr */; -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_n_kwas /* var n_kwas: nullable TKwas */; +val* var_n_opar /* var n_opar: nullable TOpar */; +val* var_n_type /* var n_type: nullable AType */; +val* var_n_cpar /* var n_cpar: nullable TCpar */; val* var /* : null */; -short int var5 /* : Bool */; -short int var6 /* : Bool */; +short int var3 /* : Bool */; +short int var4 /* : Bool */; val* var_other /* var other: nullable Object */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; short int var8 /* : Bool */; -short int var9 /* : Bool */; -short int var10 /* : 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)) { +val* var11 /* : null */; +short int var12 /* : Bool */; +short int var13 /* : Bool */; +short int var15 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +var_n_expr = p0; +var_n_kwas = p1; +var_n_opar = p2; +var_n_type = p3; +var_n_cpar = p4; +if (unlikely(var_n_expr == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5688); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5724); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ACrangeExpr___n_obra].val = var_n_obra; /* _n_obra on */ -if (var_n_obra == NULL) { +self->attrs[COLOR_parser_nodes__AAsCastExpr___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", "src/parser/parser_prod.nit", 5689); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5725); show_backtrace(1); } else { -{ /* Inline parser_nodes#ANode#parent= (var_n_obra,self) on */ -if (unlikely(var_n_obra == 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", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_obra->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } -if (unlikely(var_n_expr == NULL)) { +if (unlikely(var_n_kwas == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5690); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5726); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val = var_n_expr; /* _n_expr on */ -if (var_n_expr == NULL) { +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_kwas].val = var_n_kwas; /* _n_kwas on */ +if (var_n_kwas == NULL) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5691); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5727); show_backtrace(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_kwas,self) on */ +if (unlikely(var_n_kwas == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +var_n_kwas->attrs[COLOR_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", "src/parser/parser_prod.nit", 5692); -show_backtrace(1); -} -self->attrs[COLOR_parser_nodes__ARangeExpr___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", "src/parser/parser_prod.nit", 5693); -show_backtrace(1); +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_opar].val = var_n_opar; /* _n_opar on */ +var = NULL; +if (var_n_opar == NULL) { +var3 = 0; /* is null */ } 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", "src/parser/parser_nodes.nit", 38); -show_backtrace(1); +var3 = 1; /* arg is null and recv is not */ } -var_n_expr2->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL3:(void)0; +if (0) { +{ /* Inline kernel#Object#!= (var_n_opar,var) on */ +var_other = var; +{ +var7 = ((short int (*)(val*, val*))(var_n_opar->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_opar, var_other) /* == on */; +var6 = var7; +} +var8 = !var6; +var4 = var8; +goto RET_LABEL5; +RET_LABEL5:(void)0; } +var3 = var4; } -if (unlikely(var_n_cbra == NULL)) { +if (var3){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_opar,self) on */ +var_n_opar->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL9:(void)0; +} +} +} else { +} +if (unlikely(var_n_type == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5694); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5730); show_backtrace(1); } -self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val = var_n_cbra; /* _n_cbra on */ -if (var_n_cbra == NULL) { +self->attrs[COLOR_parser_nodes__AAsCastExpr___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", "src/parser/parser_prod.nit", 5695); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5731); show_backtrace(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_type,self) on */ +if (unlikely(var_n_type == NULL)) { PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_nodes.nit", 38); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); show_backtrace(1); } -var_n_cbra->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL4:(void)0; +var_n_type->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL10:(void)0; } } -self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_n_annotations; /* _n_annotations on */ -var = NULL; -if (var_n_annotations == NULL) { -var5 = 0; /* is null */ +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_cpar].val = var_n_cpar; /* _n_cpar on */ +var11 = NULL; +if (var_n_cpar == NULL) { +var12 = 0; /* is null */ } else { -var5 = 1; /* arg is null and recv is not */ +var12 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_n_annotations,var) on */ -var_other = var; +{ /* Inline kernel#Object#!= (var_n_cpar,var11) on */ +var_other = var11; { -var9 = ((short int (*)(val*, val*))(var_n_annotations->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_annotations, var_other) /* == on */; -var8 = var9; +var16 = ((short int (*)(val*, val*))(var_n_cpar->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_cpar, var_other) /* == on */; +var15 = var16; } -var10 = !var8; -var6 = var10; -goto RET_LABEL7; -RET_LABEL7:(void)0; +var17 = !var15; +var13 = var17; +goto RET_LABEL14; +RET_LABEL14:(void)0; } -var5 = var6; +var12 = var13; } -if (var5){ +if (var12){ { -{ /* Inline parser_nodes#ANode#parent= (var_n_annotations,self) on */ -var_n_annotations->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL11:(void)0; +{ /* Inline parser_nodes#ANode#parent= (var_n_cpar,self) on */ +var_n_cpar->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL18:(void)0; } } } else { } RET_LABEL:; } -/* method parser_prod#ACrangeExpr#init_acrangeexpr for (self: Object, nullable TObra, nullable AExpr, nullable AExpr, nullable TCbra, nullable AAnnotations) */ -void VIRTUAL_parser_prod__ACrangeExpr__init_acrangeexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { -parser_prod__ACrangeExpr__init_acrangeexpr(self, p0, p1, p2, p3, p4); /* Direct call parser_prod#ACrangeExpr#init_acrangeexpr on */ +/* method parser_prod#AAsCastExpr#init_aascastexpr for (self: Object, nullable AExpr, nullable TKwas, nullable TOpar, nullable AType, nullable TCpar) */ +void VIRTUAL_parser_prod__AAsCastExpr__init_aascastexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4) { +parser_prod__AAsCastExpr__init_aascastexpr(self, p0, p1, p2, p3, p4); /* Direct call parser_prod#AAsCastExpr#init_aascastexpr on */ RET_LABEL:; } -/* method parser_prod#ACrangeExpr#replace_child for (self: ACrangeExpr, ANode, nullable ANode) */ -void parser_prod__ACrangeExpr__replace_child(val* self, val* p0, val* p1) { +/* method parser_prod#AAsCastExpr#replace_child for (self: AAsCastExpr, ANode, nullable ANode) */ +void parser_prod__AAsCastExpr__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 /* : TObra */; +val* var /* : AExpr */; short int var1 /* : Bool */; short int var2 /* : Bool */; val* var_other /* var other: nullable Object */; @@ -9584,7 +9091,7 @@ short int var7 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var8 /* : AExpr */; +val* var8 /* : TKwas */; short int var9 /* : Bool */; short int var10 /* : Bool */; short int var12 /* : Bool */; @@ -9593,7 +9100,7 @@ short int var15 /* : Bool */; int cltype16; int idtype17; const char* var_class_name18; -val* var19 /* : AExpr */; +val* var19 /* : nullable TOpar */; short int var20 /* : Bool */; short int var21 /* : Bool */; short int var23 /* : Bool */; @@ -9602,7 +9109,7 @@ short int var26 /* : Bool */; int cltype27; int idtype28; const char* var_class_name29; -val* var30 /* : TCbra */; +val* var30 /* : AType */; short int var31 /* : Bool */; short int var32 /* : Bool */; short int var34 /* : Bool */; @@ -9611,7 +9118,7 @@ short int var37 /* : Bool */; int cltype38; int idtype39; const char* var_class_name40; -val* var41 /* : nullable AAnnotations */; +val* var41 /* : nullable TCpar */; short int var42 /* : Bool */; short int var43 /* : Bool */; short int var45 /* : Bool */; @@ -9622,17 +9129,17 @@ int idtype50; const char* var_class_name51; var_old_child = p0; var_new_child = p1; -var = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_obra].val; /* _n_obra on */ +var = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_expr].val; /* _n_expr on */ if (unlikely(var == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5702); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5738); show_backtrace(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 */ var6 = var == var_other; var4 = var6; goto RET_LABEL5; @@ -9646,9 +9153,9 @@ RET_LABEL3:(void)0; var1 = var2; } if (var1){ -/* isa TObra */ -cltype = type_parser_nodes__TObra.color; -idtype = type_parser_nodes__TObra.id; +/* isa AExpr */ +cltype = type_parser_nodes__AExpr.color; +idtype = type_parser_nodes__AExpr.id; if(var_new_child == NULL) { var7 = 0; } else { @@ -9660,27 +9167,27 @@ var7 = var_new_child->type->type_table[cltype] == idtype; } if (unlikely(!var7)) { var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5703); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5739); show_backtrace(1); } { -parser_prod__ACrangeExpr__n_obra_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_obra= on */ +parser_prod__AAsCastExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#AAsCastExpr#n_expr= on */ } goto RET_LABEL; } else { } -var8 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val; /* _n_expr on */ +var8 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_kwas].val; /* _n_kwas on */ if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5706); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwas"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5742); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var8,var_old_child) on */ +{ /* Inline kernel#Object#== (var8,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var8,var_other) on */ var14 = var8 == var_other; var12 = var14; goto RET_LABEL13; @@ -9694,9 +9201,9 @@ RET_LABEL11:(void)0; var9 = var10; } if (var9){ -/* isa AExpr */ -cltype16 = type_parser_nodes__AExpr.color; -idtype17 = type_parser_nodes__AExpr.id; +/* isa TKwas */ +cltype16 = type_parser_nodes__TKwas.color; +idtype17 = type_parser_nodes__TKwas.id; if(var_new_child == NULL) { var15 = 0; } else { @@ -9708,27 +9215,24 @@ var15 = var_new_child->type->type_table[cltype16] == idtype17; } if (unlikely(!var15)) { var_class_name18 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name18); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5707); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TKwas", var_class_name18); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5743); show_backtrace(1); } { -parser_prod__ACrangeExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_expr= on */ -} -goto RET_LABEL; -} else { +parser_prod__AAsCastExpr__n_kwas_61d(self, var_new_child); /* Direct call parser_prod#AAsCastExpr#n_kwas= on */ } -var19 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val; /* _n_expr2 on */ -if (unlikely(var19 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5710); -show_backtrace(1); +goto RET_LABEL; +} else { } -{ -{ /* Inline kernel#Object#== (var19,var_old_child) on */ +var19 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_opar].val; /* _n_opar on */ +if (var19 == NULL) { +var20 = 0; /* cannot be null */ +} else { +{ /* Inline kernel#Object#== (var19,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var19,var_other) on */ var25 = var19 == var_other; var23 = var25; goto RET_LABEL24; @@ -9742,11 +9246,11 @@ RET_LABEL22:(void)0; var20 = var21; } if (var20){ -/* isa AExpr */ -cltype27 = type_parser_nodes__AExpr.color; -idtype28 = type_parser_nodes__AExpr.id; +/* isa nullable TOpar */ +cltype27 = type_nullable_parser_nodes__TOpar.color; +idtype28 = type_nullable_parser_nodes__TOpar.id; if(var_new_child == NULL) { -var26 = 0; +var26 = 1; } else { if(cltype27 >= var_new_child->type->table_size) { var26 = 0; @@ -9756,27 +9260,27 @@ var26 = var_new_child->type->type_table[cltype27] == idtype28; } if (unlikely(!var26)) { var_class_name29 = var_new_child == NULL ? "null" : var_new_child->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name29); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5711); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TOpar", var_class_name29); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5747); show_backtrace(1); } { -parser_prod__ACrangeExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_expr2= on */ +parser_prod__AAsCastExpr__n_opar_61d(self, var_new_child); /* Direct call parser_prod#AAsCastExpr#n_opar= on */ } goto RET_LABEL; } else { } -var30 = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val; /* _n_cbra on */ +var30 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_type].val; /* _n_type on */ if (unlikely(var30 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra"); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5714); +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5750); show_backtrace(1); } { -{ /* Inline kernel#Object#== (var30,var_old_child) on */ +{ /* Inline kernel#Object#== (var30,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var30,var_other) on */ var36 = var30 == var_other; var34 = var36; goto RET_LABEL35; @@ -9790,9 +9294,9 @@ RET_LABEL33:(void)0; var31 = var32; } if (var31){ -/* isa TCbra */ -cltype38 = type_parser_nodes__TCbra.color; -idtype39 = type_parser_nodes__TCbra.id; +/* isa AType */ +cltype38 = type_parser_nodes__AType.color; +idtype39 = type_parser_nodes__AType.id; if(var_new_child == NULL) { var37 = 0; } else { @@ -9804,24 +9308,24 @@ var37 = var_new_child->type->type_table[cltype38] == idtype39; } 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`", "TCbra", var_class_name40); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5715); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AType", var_class_name40); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5751); show_backtrace(1); } { -parser_prod__ACrangeExpr__n_cbra_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_cbra= on */ +parser_prod__AAsCastExpr__n_type_61d(self, var_new_child); /* Direct call parser_prod#AAsCastExpr#n_type= on */ } goto RET_LABEL; } else { } -var41 = self->attrs[COLOR_parser_nodes__Prod___n_annotations].val; /* _n_annotations on */ +var41 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_cpar].val; /* _n_cpar on */ if (var41 == NULL) { var42 = 0; /* cannot be null */ } else { -{ /* Inline kernel#Object#== (var41,var_old_child) on */ +{ /* Inline kernel#Object#== (var41,var_old_child) on */ var_other = var_old_child; { -{ /* Inline kernel#Object#is_same_instance (var41,var_other) on */ +{ /* Inline kernel#Object#is_same_instance (var41,var_other) on */ var47 = var41 == var_other; var45 = var47; goto RET_LABEL46; @@ -9835,9 +9339,9 @@ RET_LABEL44:(void)0; var42 = var43; } if (var42){ -/* isa nullable AAnnotations */ -cltype49 = type_nullable_parser_nodes__AAnnotations.color; -idtype50 = type_nullable_parser_nodes__AAnnotations.id; +/* isa nullable TCpar */ +cltype49 = type_nullable_parser_nodes__TCpar.color; +idtype50 = type_nullable_parser_nodes__TCpar.id; if(var_new_child == NULL) { var48 = 1; } else { @@ -9849,98 +9353,128 @@ 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 AAnnotations", var_class_name51); -PRINT_ERROR(" (%s:%d)\n", "src/parser/parser_prod.nit", 5719); +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable TCpar", var_class_name51); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5755); show_backtrace(1); } { -parser_prod__ACrangeExpr__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_annotations= on */ +parser_prod__AAsCastExpr__n_cpar_61d(self, var_new_child); /* Direct call parser_prod#AAsCastExpr#n_cpar= on */ } goto RET_LABEL; } else { } RET_LABEL:; } -/* method parser_prod#ACrangeExpr#replace_child for (self: Object, ANode, nullable ANode) */ -void VIRTUAL_parser_prod__ACrangeExpr__replace_child(val* self, val* p0, val* p1) { -parser_prod__ACrangeExpr__replace_child(self, p0, p1); /* Direct call parser_prod#ACrangeExpr#replace_child on */ +/* method parser_prod#AAsCastExpr#replace_child for (self: Object, ANode, nullable ANode) */ +void VIRTUAL_parser_prod__AAsCastExpr__replace_child(val* self, val* p0, val* p1) { +parser_prod__AAsCastExpr__replace_child(self, p0, p1); /* Direct call parser_prod#AAsCastExpr#replace_child on */ RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_obra= for (self: ACrangeExpr, TObra) */ -void parser_prod__ACrangeExpr__n_obra_61d(val* self, val* p0) { -val* var_node /* var node: TObra */; +/* method parser_prod#AAsCastExpr#n_expr= for (self: AAsCastExpr, AExpr) */ +void parser_prod__AAsCastExpr__n_expr_61d(val* self, val* p0) { +val* var_node /* var node: AExpr */; var_node = p0; -self->attrs[COLOR_parser_nodes__ACrangeExpr___n_obra].val = var_node; /* _n_obra on */ +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_expr].val = var_node; /* _n_expr on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_obra= for (self: Object, TObra) */ -void VIRTUAL_parser_prod__ACrangeExpr__n_obra_61d(val* self, val* p0) { -parser_prod__ACrangeExpr__n_obra_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_obra= on */ +/* method parser_prod#AAsCastExpr#n_expr= for (self: Object, AExpr) */ +void VIRTUAL_parser_prod__AAsCastExpr__n_expr_61d(val* self, val* p0) { +parser_prod__AAsCastExpr__n_expr_61d(self, p0); /* Direct call parser_prod#AAsCastExpr#n_expr= on */ RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_expr= for (self: ACrangeExpr, AExpr) */ -void parser_prod__ACrangeExpr__n_expr_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AAsCastExpr#n_kwas= for (self: AAsCastExpr, TKwas) */ +void parser_prod__AAsCastExpr__n_kwas_61d(val* self, val* p0) { +val* var_node /* var node: TKwas */; var_node = p0; -self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val = var_node; /* _n_expr on */ +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_kwas].val = var_node; /* _n_kwas on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_expr= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ACrangeExpr__n_expr_61d(val* self, val* p0) { -parser_prod__ACrangeExpr__n_expr_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_expr= on */ +/* method parser_prod#AAsCastExpr#n_kwas= for (self: Object, TKwas) */ +void VIRTUAL_parser_prod__AAsCastExpr__n_kwas_61d(val* self, val* p0) { +parser_prod__AAsCastExpr__n_kwas_61d(self, p0); /* Direct call parser_prod#AAsCastExpr#n_kwas= on */ RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_expr2= for (self: ACrangeExpr, AExpr) */ -void parser_prod__ACrangeExpr__n_expr2_61d(val* self, val* p0) { -val* var_node /* var node: AExpr */; +/* method parser_prod#AAsCastExpr#n_opar= for (self: AAsCastExpr, nullable TOpar) */ +void parser_prod__AAsCastExpr__n_opar_61d(val* self, val* p0) { +val* var_node /* var node: nullable TOpar */; +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 */; +short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val = var_node; /* _n_expr2 on */ +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_opar].val = var_node; /* _n_opar 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; { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ -RET_LABEL1:(void)0; +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var4 = var5; +} +var6 = !var4; +var2 = var6; +goto RET_LABEL3; +RET_LABEL3:(void)0; +} +var1 = var2; +} +if (var1){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL7:(void)0; } } +} else { +} RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_expr2= for (self: Object, AExpr) */ -void VIRTUAL_parser_prod__ACrangeExpr__n_expr2_61d(val* self, val* p0) { -parser_prod__ACrangeExpr__n_expr2_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_expr2= on */ +/* method parser_prod#AAsCastExpr#n_opar= for (self: Object, nullable TOpar) */ +void VIRTUAL_parser_prod__AAsCastExpr__n_opar_61d(val* self, val* p0) { +parser_prod__AAsCastExpr__n_opar_61d(self, p0); /* Direct call parser_prod#AAsCastExpr#n_opar= on */ RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_cbra= for (self: ACrangeExpr, TCbra) */ -void parser_prod__ACrangeExpr__n_cbra_61d(val* self, val* p0) { -val* var_node /* var node: TCbra */; +/* method parser_prod#AAsCastExpr#n_type= for (self: AAsCastExpr, AType) */ +void parser_prod__AAsCastExpr__n_type_61d(val* self, val* p0) { +val* var_node /* var node: AType */; var_node = p0; -self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val = var_node; /* _n_cbra on */ +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_type].val = var_node; /* _n_type on */ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_cbra= for (self: Object, TCbra) */ -void VIRTUAL_parser_prod__ACrangeExpr__n_cbra_61d(val* self, val* p0) { -parser_prod__ACrangeExpr__n_cbra_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_cbra= on */ +/* method parser_prod#AAsCastExpr#n_type= for (self: Object, AType) */ +void VIRTUAL_parser_prod__AAsCastExpr__n_type_61d(val* self, val* p0) { +parser_prod__AAsCastExpr__n_type_61d(self, p0); /* Direct call parser_prod#AAsCastExpr#n_type= on */ RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_annotations= for (self: ACrangeExpr, nullable AAnnotations) */ -void parser_prod__ACrangeExpr__n_annotations_61d(val* self, val* p0) { -val* var_node /* var node: nullable AAnnotations */; +/* method parser_prod#AAsCastExpr#n_cpar= for (self: AAsCastExpr, nullable TCpar) */ +void parser_prod__AAsCastExpr__n_cpar_61d(val* self, val* p0) { +val* var_node /* var node: nullable TCpar */; val* var /* : null */; short int var1 /* : Bool */; short int var2 /* : Bool */; @@ -9949,7 +9483,7 @@ short int var4 /* : Bool */; short int var5 /* : Bool */; short int var6 /* : Bool */; var_node = p0; -self->attrs[COLOR_parser_nodes__Prod___n_annotations].val = var_node; /* _n_annotations on */ +self->attrs[COLOR_parser_nodes__AAsCastExpr___n_cpar].val = var_node; /* _n_cpar on */ var = NULL; if (var_node == NULL) { var1 = 0; /* is null */ @@ -9957,10 +9491,10 @@ var1 = 0; /* is null */ var1 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_node,var) on */ +{ /* Inline kernel#Object#!= (var_node,var) on */ var_other = var; { -var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; +var5 = ((short int (*)(val*, val*))(var_node->class->vft[COLOR_kernel__Object___61d_61d]))(var_node, var_other) /* == on */; var4 = var5; } var6 = !var4; @@ -9972,8 +9506,8 @@ var1 = var2; } if (var1){ { -{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ -var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +{ /* Inline parser_nodes#ANode#parent= (var_node,self) on */ +var_node->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ RET_LABEL7:(void)0; } } @@ -9981,8 +9515,237 @@ RET_LABEL7:(void)0; } RET_LABEL:; } -/* method parser_prod#ACrangeExpr#n_annotations= for (self: Object, nullable AAnnotations) */ -void VIRTUAL_parser_prod__ACrangeExpr__n_annotations_61d(val* self, val* p0) { -parser_prod__ACrangeExpr__n_annotations_61d(self, p0); /* Direct call parser_prod#ACrangeExpr#n_annotations= on */ +/* method parser_prod#AAsCastExpr#n_cpar= for (self: Object, nullable TCpar) */ +void VIRTUAL_parser_prod__AAsCastExpr__n_cpar_61d(val* self, val* p0) { +parser_prod__AAsCastExpr__n_cpar_61d(self, p0); /* Direct call parser_prod#AAsCastExpr#n_cpar= on */ +RET_LABEL:; +} +/* method parser_prod#AAsCastExpr#visit_all for (self: AAsCastExpr, Visitor) */ +void parser_prod__AAsCastExpr__visit_all(val* self, val* p0) { +val* var_v /* var v: Visitor */; +val* var /* : AExpr */; +val* var1 /* : TKwas */; +val* var2 /* : nullable TOpar */; +val* var3 /* : AType */; +val* var4 /* : nullable TCpar */; +var_v = p0; +var = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_expr].val; /* _n_expr on */ +if (unlikely(var == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5789); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var1 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_kwas].val; /* _n_kwas on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwas"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5790); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var2 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_opar].val; /* _n_opar on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var2); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var3 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_type].val; /* _n_type on */ +if (unlikely(var3 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5792); +show_backtrace(1); +} +{ +parser_nodes__Visitor__enter_visit(var_v, var3); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +var4 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_cpar].val; /* _n_cpar on */ +{ +parser_nodes__Visitor__enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on */ +} +RET_LABEL:; +} +/* method parser_prod#AAsCastExpr#visit_all for (self: Object, Visitor) */ +void VIRTUAL_parser_prod__AAsCastExpr__visit_all(val* self, val* p0) { +parser_prod__AAsCastExpr__visit_all(self, p0); /* Direct call parser_prod#AAsCastExpr#visit_all on */ +RET_LABEL:; +} +/* method parser_prod#AAsNotnullExpr#init_aasnotnullexpr for (self: AAsNotnullExpr, nullable AExpr, nullable TKwas, nullable TOpar, nullable TKwnot, nullable TKwnull, nullable TCpar) */ +void parser_prod__AAsNotnullExpr__init_aasnotnullexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { +val* var_n_expr /* var n_expr: nullable AExpr */; +val* var_n_kwas /* var n_kwas: nullable TKwas */; +val* var_n_opar /* var n_opar: nullable TOpar */; +val* var_n_kwnot /* var n_kwnot: nullable TKwnot */; +val* var_n_kwnull /* var n_kwnull: nullable TKwnull */; +val* var_n_cpar /* var n_cpar: nullable TCpar */; +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 */; +short int var8 /* : Bool */; +val* var12 /* : null */; +short int var13 /* : Bool */; +short int var14 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +short int var18 /* : Bool */; +var_n_expr = p0; +var_n_kwas = p1; +var_n_opar = p2; +var_n_kwnot = p3; +var_n_kwnull = p4; +var_n_cpar = p5; +if (unlikely(var_n_expr == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5806); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AAsNotnullExpr___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", "parser/parser_prod.nit", 5807); +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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_expr->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL1:(void)0; +} +} +if (unlikely(var_n_kwas == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5808); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_kwas].val = var_n_kwas; /* _n_kwas on */ +if (var_n_kwas == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5809); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwas,self) on */ +if (unlikely(var_n_kwas == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_kwas->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL2:(void)0; +} +} +self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_opar].val = var_n_opar; /* _n_opar on */ +var = NULL; +if (var_n_opar == NULL) { +var3 = 0; /* is null */ +} else { +var3 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_opar,var) on */ +var_other = var; +{ +var7 = ((short int (*)(val*, val*))(var_n_opar->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_opar, var_other) /* == on */; +var6 = var7; +} +var8 = !var6; +var4 = var8; +goto RET_LABEL5; +RET_LABEL5:(void)0; +} +var3 = var4; +} +if (var3){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_opar,self) on */ +var_n_opar->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL9:(void)0; +} +} +} else { +} +if (unlikely(var_n_kwnot == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5812); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AAsNotnullExpr___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", "parser/parser_prod.nit", 5813); +show_backtrace(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", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_kwnot->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL10:(void)0; +} +} +if (unlikely(var_n_kwnull == NULL)) { +PRINT_ERROR("Runtime error: %s", "Cast failed"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5814); +show_backtrace(1); +} +self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_kwnull].val = var_n_kwnull; /* _n_kwnull on */ +if (var_n_kwnull == NULL) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_prod.nit", 5815); +show_backtrace(1); +} else { +{ /* Inline parser_nodes#ANode#parent= (var_n_kwnull,self) on */ +if (unlikely(var_n_kwnull == NULL)) { +PRINT_ERROR("Runtime error: %s", "Receiver is null"); +PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 36); +show_backtrace(1); +} +var_n_kwnull->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL11:(void)0; +} +} +self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_cpar].val = var_n_cpar; /* _n_cpar on */ +var12 = NULL; +if (var_n_cpar == NULL) { +var13 = 0; /* is null */ +} else { +var13 = 1; /* arg is null and recv is not */ +} +if (0) { +{ /* Inline kernel#Object#!= (var_n_cpar,var12) on */ +var_other = var12; +{ +var17 = ((short int (*)(val*, val*))(var_n_cpar->class->vft[COLOR_kernel__Object___61d_61d]))(var_n_cpar, var_other) /* == on */; +var16 = var17; +} +var18 = !var16; +var14 = var18; +goto RET_LABEL15; +RET_LABEL15:(void)0; +} +var13 = var14; +} +if (var13){ +{ +{ /* Inline parser_nodes#ANode#parent= (var_n_cpar,self) on */ +var_n_cpar->attrs[COLOR_parser_nodes__ANode___parent].val = self; /* _parent on */ +RET_LABEL19:(void)0; +} +} +} else { +} +RET_LABEL:; +} +/* method parser_prod#AAsNotnullExpr#init_aasnotnullexpr for (self: Object, nullable AExpr, nullable TKwas, nullable TOpar, nullable TKwnot, nullable TKwnull, nullable TCpar) */ +void VIRTUAL_parser_prod__AAsNotnullExpr__init_aasnotnullexpr(val* self, val* p0, val* p1, val* p2, val* p3, val* p4, val* p5) { +parser_prod__AAsNotnullExpr__init_aasnotnullexpr(self, p0, p1, p2, p3, p4, p5); /* Direct call parser_prod#AAsNotnullExpr#init_aasnotnullexpr on */ RET_LABEL:; }